
io.github.vigoo.zioaws.codepipeline.model.TransitionState.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.codepipeline.model
import zio.ZIO
import io.github.vigoo.zioaws.codepipeline.model.primitives.{
DisabledReason,
LastChangedAt,
LastChangedBy,
Enabled
}
import java.time.Instant
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class TransitionState(
enabled: Option[Enabled] = None,
lastChangedBy: Option[LastChangedBy] = None,
lastChangedAt: Option[LastChangedAt] = None,
disabledReason: Option[DisabledReason] = None
) {
def buildAwsValue()
: software.amazon.awssdk.services.codepipeline.model.TransitionState = {
import TransitionState.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.codepipeline.model.TransitionState
.builder()
.optionallyWith(enabled.map(value => value: java.lang.Boolean))(_.enabled)
.optionallyWith(lastChangedBy.map(value => value: java.lang.String))(
_.lastChangedBy
)
.optionallyWith(lastChangedAt.map(value => value: Instant))(
_.lastChangedAt
)
.optionallyWith(disabledReason.map(value => value: java.lang.String))(
_.disabledReason
)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.codepipeline.model.TransitionState.ReadOnly =
io.github.vigoo.zioaws.codepipeline.model.TransitionState
.wrap(buildAwsValue())
}
object TransitionState {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.codepipeline.model.TransitionState
] = BuilderHelper.apply
trait ReadOnly {
def editable: io.github.vigoo.zioaws.codepipeline.model.TransitionState =
io.github.vigoo.zioaws.codepipeline.model.TransitionState(
enabledValue.map(value => value),
lastChangedByValue.map(value => value),
lastChangedAtValue.map(value => value),
disabledReasonValue.map(value => value)
)
def enabledValue: Option[Enabled]
def lastChangedByValue: Option[LastChangedBy]
def lastChangedAtValue: Option[LastChangedAt]
def disabledReasonValue: Option[DisabledReason]
def enabled: ZIO[Any, AwsError, Enabled] =
AwsError.unwrapOptionField("enabled", enabledValue)
def lastChangedBy: ZIO[Any, AwsError, LastChangedBy] =
AwsError.unwrapOptionField("lastChangedBy", lastChangedByValue)
def lastChangedAt: ZIO[Any, AwsError, LastChangedAt] =
AwsError.unwrapOptionField("lastChangedAt", lastChangedAtValue)
def disabledReason: ZIO[Any, AwsError, DisabledReason] =
AwsError.unwrapOptionField("disabledReason", disabledReasonValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.codepipeline.model.TransitionState
) extends io.github.vigoo.zioaws.codepipeline.model.TransitionState.ReadOnly {
override def enabledValue: Option[Enabled] =
scala.Option(impl.enabled()).map(value => value: Enabled)
override def lastChangedByValue: Option[LastChangedBy] =
scala.Option(impl.lastChangedBy()).map(value => value: LastChangedBy)
override def lastChangedAtValue: Option[LastChangedAt] =
scala.Option(impl.lastChangedAt()).map(value => value: LastChangedAt)
override def disabledReasonValue: Option[DisabledReason] =
scala.Option(impl.disabledReason()).map(value => value: DisabledReason)
}
def wrap(
impl: software.amazon.awssdk.services.codepipeline.model.TransitionState
): io.github.vigoo.zioaws.codepipeline.model.TransitionState.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy