
io.github.vigoo.zioaws.swf.model.Decision.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.swf.model
import zio.ZIO
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class Decision(
decisionType: io.github.vigoo.zioaws.swf.model.DecisionType,
scheduleActivityTaskDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.ScheduleActivityTaskDecisionAttributes
] = None,
requestCancelActivityTaskDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.RequestCancelActivityTaskDecisionAttributes
] = None,
completeWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.CompleteWorkflowExecutionDecisionAttributes
] = None,
failWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.FailWorkflowExecutionDecisionAttributes
] = None,
cancelWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.CancelWorkflowExecutionDecisionAttributes
] = None,
continueAsNewWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.ContinueAsNewWorkflowExecutionDecisionAttributes
] = None,
recordMarkerDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.RecordMarkerDecisionAttributes
] = None,
startTimerDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.StartTimerDecisionAttributes
] = None,
cancelTimerDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.CancelTimerDecisionAttributes
] = None,
signalExternalWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
] = None,
requestCancelExternalWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.RequestCancelExternalWorkflowExecutionDecisionAttributes
] = None,
startChildWorkflowExecutionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.StartChildWorkflowExecutionDecisionAttributes
] = None,
scheduleLambdaFunctionDecisionAttributes: Option[
io.github.vigoo.zioaws.swf.model.ScheduleLambdaFunctionDecisionAttributes
] = None
) {
def buildAwsValue(): software.amazon.awssdk.services.swf.model.Decision = {
import Decision.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.swf.model.Decision
.builder()
.decisionType(decisionType.unwrap)
.optionallyWith(
scheduleActivityTaskDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.scheduleActivityTaskDecisionAttributes)
.optionallyWith(
requestCancelActivityTaskDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.requestCancelActivityTaskDecisionAttributes)
.optionallyWith(
completeWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.completeWorkflowExecutionDecisionAttributes)
.optionallyWith(
failWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.failWorkflowExecutionDecisionAttributes)
.optionallyWith(
cancelWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.cancelWorkflowExecutionDecisionAttributes)
.optionallyWith(
continueAsNewWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.continueAsNewWorkflowExecutionDecisionAttributes)
.optionallyWith(
recordMarkerDecisionAttributes.map(value => value.buildAwsValue())
)(_.recordMarkerDecisionAttributes)
.optionallyWith(
startTimerDecisionAttributes.map(value => value.buildAwsValue())
)(_.startTimerDecisionAttributes)
.optionallyWith(
cancelTimerDecisionAttributes.map(value => value.buildAwsValue())
)(_.cancelTimerDecisionAttributes)
.optionallyWith(
signalExternalWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.signalExternalWorkflowExecutionDecisionAttributes)
.optionallyWith(
requestCancelExternalWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.requestCancelExternalWorkflowExecutionDecisionAttributes)
.optionallyWith(
startChildWorkflowExecutionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.startChildWorkflowExecutionDecisionAttributes)
.optionallyWith(
scheduleLambdaFunctionDecisionAttributes.map(value =>
value.buildAwsValue()
)
)(_.scheduleLambdaFunctionDecisionAttributes)
.build()
}
def asReadOnly: io.github.vigoo.zioaws.swf.model.Decision.ReadOnly =
io.github.vigoo.zioaws.swf.model.Decision.wrap(buildAwsValue())
}
object Decision {
private lazy val zioAwsBuilderHelper
: BuilderHelper[software.amazon.awssdk.services.swf.model.Decision] =
BuilderHelper.apply
trait ReadOnly {
def editable: io.github.vigoo.zioaws.swf.model.Decision =
io.github.vigoo.zioaws.swf.model.Decision(
decisionTypeValue,
scheduleActivityTaskDecisionAttributesValue.map(value =>
value.editable
),
requestCancelActivityTaskDecisionAttributesValue.map(value =>
value.editable
),
completeWorkflowExecutionDecisionAttributesValue.map(value =>
value.editable
),
failWorkflowExecutionDecisionAttributesValue.map(value =>
value.editable
),
cancelWorkflowExecutionDecisionAttributesValue.map(value =>
value.editable
),
continueAsNewWorkflowExecutionDecisionAttributesValue.map(value =>
value.editable
),
recordMarkerDecisionAttributesValue.map(value => value.editable),
startTimerDecisionAttributesValue.map(value => value.editable),
cancelTimerDecisionAttributesValue.map(value => value.editable),
signalExternalWorkflowExecutionDecisionAttributesValue.map(value =>
value.editable
),
requestCancelExternalWorkflowExecutionDecisionAttributesValue.map(
value => value.editable
),
startChildWorkflowExecutionDecisionAttributesValue.map(value =>
value.editable
),
scheduleLambdaFunctionDecisionAttributesValue.map(value =>
value.editable
)
)
def decisionTypeValue: io.github.vigoo.zioaws.swf.model.DecisionType
def scheduleActivityTaskDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.ScheduleActivityTaskDecisionAttributes.ReadOnly
]
def requestCancelActivityTaskDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.RequestCancelActivityTaskDecisionAttributes.ReadOnly
]
def completeWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.CompleteWorkflowExecutionDecisionAttributes.ReadOnly
]
def failWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.FailWorkflowExecutionDecisionAttributes.ReadOnly
]
def cancelWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.CancelWorkflowExecutionDecisionAttributes.ReadOnly
]
def continueAsNewWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.ContinueAsNewWorkflowExecutionDecisionAttributes.ReadOnly
]
def recordMarkerDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.RecordMarkerDecisionAttributes.ReadOnly
]
def startTimerDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.StartTimerDecisionAttributes.ReadOnly
]
def cancelTimerDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.CancelTimerDecisionAttributes.ReadOnly
]
def signalExternalWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.ReadOnly
]
def requestCancelExternalWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.RequestCancelExternalWorkflowExecutionDecisionAttributes.ReadOnly
]
def startChildWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.StartChildWorkflowExecutionDecisionAttributes.ReadOnly
]
def scheduleLambdaFunctionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.ScheduleLambdaFunctionDecisionAttributes.ReadOnly
]
def decisionType
: ZIO[Any, Nothing, io.github.vigoo.zioaws.swf.model.DecisionType] =
ZIO.succeed(decisionTypeValue)
def scheduleActivityTaskDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.ScheduleActivityTaskDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"scheduleActivityTaskDecisionAttributes",
scheduleActivityTaskDecisionAttributesValue
)
def requestCancelActivityTaskDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.RequestCancelActivityTaskDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"requestCancelActivityTaskDecisionAttributes",
requestCancelActivityTaskDecisionAttributesValue
)
def completeWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.CompleteWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"completeWorkflowExecutionDecisionAttributes",
completeWorkflowExecutionDecisionAttributesValue
)
def failWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.FailWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"failWorkflowExecutionDecisionAttributes",
failWorkflowExecutionDecisionAttributesValue
)
def cancelWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.CancelWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"cancelWorkflowExecutionDecisionAttributes",
cancelWorkflowExecutionDecisionAttributesValue
)
def continueAsNewWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.ContinueAsNewWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"continueAsNewWorkflowExecutionDecisionAttributes",
continueAsNewWorkflowExecutionDecisionAttributesValue
)
def recordMarkerDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.RecordMarkerDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"recordMarkerDecisionAttributes",
recordMarkerDecisionAttributesValue
)
def startTimerDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.StartTimerDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"startTimerDecisionAttributes",
startTimerDecisionAttributesValue
)
def cancelTimerDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.CancelTimerDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"cancelTimerDecisionAttributes",
cancelTimerDecisionAttributesValue
)
def signalExternalWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"signalExternalWorkflowExecutionDecisionAttributes",
signalExternalWorkflowExecutionDecisionAttributesValue
)
def requestCancelExternalWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.RequestCancelExternalWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"requestCancelExternalWorkflowExecutionDecisionAttributes",
requestCancelExternalWorkflowExecutionDecisionAttributesValue
)
def startChildWorkflowExecutionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.StartChildWorkflowExecutionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"startChildWorkflowExecutionDecisionAttributes",
startChildWorkflowExecutionDecisionAttributesValue
)
def scheduleLambdaFunctionDecisionAttributes: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.ScheduleLambdaFunctionDecisionAttributes.ReadOnly
] = AwsError.unwrapOptionField(
"scheduleLambdaFunctionDecisionAttributes",
scheduleLambdaFunctionDecisionAttributesValue
)
}
private class Wrapper(
impl: software.amazon.awssdk.services.swf.model.Decision
) extends io.github.vigoo.zioaws.swf.model.Decision.ReadOnly {
override def decisionTypeValue
: io.github.vigoo.zioaws.swf.model.DecisionType =
io.github.vigoo.zioaws.swf.model.DecisionType.wrap(impl.decisionType())
override def scheduleActivityTaskDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.ScheduleActivityTaskDecisionAttributes.ReadOnly
] = scala
.Option(impl.scheduleActivityTaskDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.ScheduleActivityTaskDecisionAttributes
.wrap(value)
)
override def requestCancelActivityTaskDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.RequestCancelActivityTaskDecisionAttributes.ReadOnly
] = scala
.Option(impl.requestCancelActivityTaskDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.RequestCancelActivityTaskDecisionAttributes
.wrap(value)
)
override def completeWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.CompleteWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.completeWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.CompleteWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def failWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.FailWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.failWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.FailWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def cancelWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.CancelWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.cancelWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.CancelWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def continueAsNewWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.ContinueAsNewWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.continueAsNewWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.ContinueAsNewWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def recordMarkerDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.RecordMarkerDecisionAttributes.ReadOnly
] = scala
.Option(impl.recordMarkerDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.RecordMarkerDecisionAttributes
.wrap(value)
)
override def startTimerDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.StartTimerDecisionAttributes.ReadOnly
] = scala
.Option(impl.startTimerDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.StartTimerDecisionAttributes
.wrap(value)
)
override def cancelTimerDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.CancelTimerDecisionAttributes.ReadOnly
] = scala
.Option(impl.cancelTimerDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.CancelTimerDecisionAttributes
.wrap(value)
)
override def signalExternalWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.signalExternalWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def requestCancelExternalWorkflowExecutionDecisionAttributesValue
: Option[
io.github.vigoo.zioaws.swf.model.RequestCancelExternalWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.requestCancelExternalWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.RequestCancelExternalWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def startChildWorkflowExecutionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.StartChildWorkflowExecutionDecisionAttributes.ReadOnly
] = scala
.Option(impl.startChildWorkflowExecutionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.StartChildWorkflowExecutionDecisionAttributes
.wrap(value)
)
override def scheduleLambdaFunctionDecisionAttributesValue: Option[
io.github.vigoo.zioaws.swf.model.ScheduleLambdaFunctionDecisionAttributes.ReadOnly
] = scala
.Option(impl.scheduleLambdaFunctionDecisionAttributes())
.map(value =>
io.github.vigoo.zioaws.swf.model.ScheduleLambdaFunctionDecisionAttributes
.wrap(value)
)
}
def wrap(
impl: software.amazon.awssdk.services.swf.model.Decision
): io.github.vigoo.zioaws.swf.model.Decision.ReadOnly = new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy