
io.github.vigoo.zioaws.swf.model.WorkflowExecution.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.swf.model
import zio.ZIO
import io.github.vigoo.zioaws.swf.model.primitives.{WorkflowRunId, WorkflowId}
import io.github.vigoo.zioaws.core.BuilderHelper
import scala.jdk.CollectionConverters._
final case class WorkflowExecution(
workflowId: WorkflowId,
runId: WorkflowRunId
) {
def buildAwsValue()
: software.amazon.awssdk.services.swf.model.WorkflowExecution = {
import WorkflowExecution.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.swf.model.WorkflowExecution
.builder()
.workflowId(workflowId: java.lang.String)
.runId(runId: java.lang.String)
.build()
}
def asReadOnly: io.github.vigoo.zioaws.swf.model.WorkflowExecution.ReadOnly =
io.github.vigoo.zioaws.swf.model.WorkflowExecution.wrap(buildAwsValue())
}
object WorkflowExecution {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.swf.model.WorkflowExecution
] = BuilderHelper.apply
trait ReadOnly {
def editable: io.github.vigoo.zioaws.swf.model.WorkflowExecution =
io.github.vigoo.zioaws.swf.model
.WorkflowExecution(workflowIdValue, runIdValue)
def workflowIdValue: WorkflowId
def runIdValue: WorkflowRunId
def workflowId: ZIO[Any, Nothing, WorkflowId] = ZIO.succeed(workflowIdValue)
def runId: ZIO[Any, Nothing, WorkflowRunId] = ZIO.succeed(runIdValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.swf.model.WorkflowExecution
) extends io.github.vigoo.zioaws.swf.model.WorkflowExecution.ReadOnly {
override def workflowIdValue: WorkflowId = impl.workflowId(): WorkflowId
override def runIdValue: WorkflowRunId = impl.runId(): WorkflowRunId
}
def wrap(
impl: software.amazon.awssdk.services.swf.model.WorkflowExecution
): io.github.vigoo.zioaws.swf.model.WorkflowExecution.ReadOnly = new Wrapper(
impl
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy