
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.swf.model
import zio.ZIO
import io.github.vigoo.zioaws.swf.model.primitives.{
Data,
SignalName,
WorkflowRunIdOptional,
WorkflowId
}
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class SignalExternalWorkflowExecutionDecisionAttributes(
workflowId: WorkflowId,
runId: Option[WorkflowRunIdOptional] = None,
signalName: SignalName,
input: Option[Data] = None,
control: Option[Data] = None
) {
def buildAwsValue()
: software.amazon.awssdk.services.swf.model.SignalExternalWorkflowExecutionDecisionAttributes = {
import SignalExternalWorkflowExecutionDecisionAttributes.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
.builder()
.workflowId(workflowId: java.lang.String)
.optionallyWith(runId.map(value => value: java.lang.String))(_.runId)
.signalName(signalName: java.lang.String)
.optionallyWith(input.map(value => value: java.lang.String))(_.input)
.optionallyWith(control.map(value => value: java.lang.String))(_.control)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.ReadOnly =
io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
.wrap(buildAwsValue())
}
object SignalExternalWorkflowExecutionDecisionAttributes {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
] = BuilderHelper.apply
trait ReadOnly {
def editable
: io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes =
io.github.vigoo.zioaws.swf.model
.SignalExternalWorkflowExecutionDecisionAttributes(
workflowIdValue,
runIdValue.map(value => value),
signalNameValue,
inputValue.map(value => value),
controlValue.map(value => value)
)
def workflowIdValue: WorkflowId
def runIdValue: Option[WorkflowRunIdOptional]
def signalNameValue: SignalName
def inputValue: Option[Data]
def controlValue: Option[Data]
def workflowId: ZIO[Any, Nothing, WorkflowId] = ZIO.succeed(workflowIdValue)
def runId: ZIO[Any, AwsError, WorkflowRunIdOptional] =
AwsError.unwrapOptionField("runId", runIdValue)
def signalName: ZIO[Any, Nothing, SignalName] = ZIO.succeed(signalNameValue)
def input: ZIO[Any, AwsError, Data] =
AwsError.unwrapOptionField("input", inputValue)
def control: ZIO[Any, AwsError, Data] =
AwsError.unwrapOptionField("control", controlValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
) extends io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.ReadOnly {
override def workflowIdValue: WorkflowId = impl.workflowId(): WorkflowId
override def runIdValue: Option[WorkflowRunIdOptional] =
scala.Option(impl.runId()).map(value => value: WorkflowRunIdOptional)
override def signalNameValue: SignalName = impl.signalName(): SignalName
override def inputValue: Option[Data] =
scala.Option(impl.input()).map(value => value: Data)
override def controlValue: Option[Data] =
scala.Option(impl.control()).map(value => value: Data)
}
def wrap(
impl: software.amazon.awssdk.services.swf.model.SignalExternalWorkflowExecutionDecisionAttributes
): io.github.vigoo.zioaws.swf.model.SignalExternalWorkflowExecutionDecisionAttributes.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy