
io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.datasync.model
import zio.ZIO
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import io.github.vigoo.zioaws.datasync.model.primitives.Duration
import scala.jdk.CollectionConverters._
final case class TaskExecutionResultDetail(
prepareDuration: Option[Duration] = None,
prepareStatus: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus] =
None,
totalDuration: Option[Duration] = None,
transferDuration: Option[Duration] = None,
transferStatus: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus] =
None,
verifyDuration: Option[Duration] = None,
verifyStatus: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus] =
None,
errorCode: Option[String] = None,
errorDetail: Option[String] = None
) {
def buildAwsValue()
: software.amazon.awssdk.services.datasync.model.TaskExecutionResultDetail = {
import TaskExecutionResultDetail.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.datasync.model.TaskExecutionResultDetail
.builder()
.optionallyWith(prepareDuration.map(value => value: java.lang.Long))(
_.prepareDuration
)
.optionallyWith(prepareStatus.map(value => value.unwrap))(_.prepareStatus)
.optionallyWith(totalDuration.map(value => value: java.lang.Long))(
_.totalDuration
)
.optionallyWith(transferDuration.map(value => value: java.lang.Long))(
_.transferDuration
)
.optionallyWith(transferStatus.map(value => value.unwrap))(
_.transferStatus
)
.optionallyWith(verifyDuration.map(value => value: java.lang.Long))(
_.verifyDuration
)
.optionallyWith(verifyStatus.map(value => value.unwrap))(_.verifyStatus)
.optionallyWith(errorCode.map(value => value: java.lang.String))(
_.errorCode
)
.optionallyWith(errorDetail.map(value => value: java.lang.String))(
_.errorDetail
)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail.ReadOnly =
io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail
.wrap(buildAwsValue())
}
object TaskExecutionResultDetail {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.datasync.model.TaskExecutionResultDetail
] = BuilderHelper.apply
trait ReadOnly {
def editable
: io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail =
io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail(
prepareDurationValue.map(value => value),
prepareStatusValue.map(value => value),
totalDurationValue.map(value => value),
transferDurationValue.map(value => value),
transferStatusValue.map(value => value),
verifyDurationValue.map(value => value),
verifyStatusValue.map(value => value),
errorCodeValue.map(value => value),
errorDetailValue.map(value => value)
)
def prepareDurationValue: Option[Duration]
def prepareStatusValue
: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus]
def totalDurationValue: Option[Duration]
def transferDurationValue: Option[Duration]
def transferStatusValue
: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus]
def verifyDurationValue: Option[Duration]
def verifyStatusValue
: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus]
def errorCodeValue: Option[String]
def errorDetailValue: Option[String]
def prepareDuration: ZIO[Any, AwsError, Duration] =
AwsError.unwrapOptionField("prepareDuration", prepareDurationValue)
def prepareStatus: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.datasync.model.PhaseStatus
] = AwsError.unwrapOptionField("prepareStatus", prepareStatusValue)
def totalDuration: ZIO[Any, AwsError, Duration] =
AwsError.unwrapOptionField("totalDuration", totalDurationValue)
def transferDuration: ZIO[Any, AwsError, Duration] =
AwsError.unwrapOptionField("transferDuration", transferDurationValue)
def transferStatus: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.datasync.model.PhaseStatus
] = AwsError.unwrapOptionField("transferStatus", transferStatusValue)
def verifyDuration: ZIO[Any, AwsError, Duration] =
AwsError.unwrapOptionField("verifyDuration", verifyDurationValue)
def verifyStatus: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.datasync.model.PhaseStatus
] = AwsError.unwrapOptionField("verifyStatus", verifyStatusValue)
def errorCode: ZIO[Any, AwsError, String] =
AwsError.unwrapOptionField("errorCode", errorCodeValue)
def errorDetail: ZIO[Any, AwsError, String] =
AwsError.unwrapOptionField("errorDetail", errorDetailValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.datasync.model.TaskExecutionResultDetail
) extends io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail.ReadOnly {
override def prepareDurationValue: Option[Duration] =
scala.Option(impl.prepareDuration()).map(value => value: Duration)
override def prepareStatusValue
: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus] = scala
.Option(impl.prepareStatus())
.map(value =>
io.github.vigoo.zioaws.datasync.model.PhaseStatus.wrap(value)
)
override def totalDurationValue: Option[Duration] =
scala.Option(impl.totalDuration()).map(value => value: Duration)
override def transferDurationValue: Option[Duration] =
scala.Option(impl.transferDuration()).map(value => value: Duration)
override def transferStatusValue
: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus] = scala
.Option(impl.transferStatus())
.map(value =>
io.github.vigoo.zioaws.datasync.model.PhaseStatus.wrap(value)
)
override def verifyDurationValue: Option[Duration] =
scala.Option(impl.verifyDuration()).map(value => value: Duration)
override def verifyStatusValue
: Option[io.github.vigoo.zioaws.datasync.model.PhaseStatus] = scala
.Option(impl.verifyStatus())
.map(value =>
io.github.vigoo.zioaws.datasync.model.PhaseStatus.wrap(value)
)
override def errorCodeValue: Option[String] =
scala.Option(impl.errorCode()).map(value => value: String)
override def errorDetailValue: Option[String] =
scala.Option(impl.errorDetail()).map(value => value: String)
}
def wrap(
impl: software.amazon.awssdk.services.datasync.model.TaskExecutionResultDetail
): io.github.vigoo.zioaws.datasync.model.TaskExecutionResultDetail.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy