All Downloads are FREE. Search and download functionalities are using the official Maven repository.

zio.aws.tnb.model.GetSolNetworkOperationMetadata.scala Maven / Gradle / Ivy

There is a newer version: 7.28.29.10
Show newest version
package zio.aws.tnb.model
import zio.aws.tnb.model.primitives.SyntheticTimestamp_date_time
import java.time.Instant
import zio.prelude.data.Optional
import zio.aws.core.{AwsError, BuilderHelper}
import zio.ZIO
import scala.jdk.CollectionConverters.*
final case class GetSolNetworkOperationMetadata(
    createdAt: SyntheticTimestamp_date_time,
    instantiateMetadata: Optional[zio.aws.tnb.model.InstantiateMetadata] =
      Optional.Absent,
    lastModified: SyntheticTimestamp_date_time,
    modifyVnfInfoMetadata: Optional[zio.aws.tnb.model.ModifyVnfInfoMetadata] =
      Optional.Absent,
    updateNsMetadata: Optional[zio.aws.tnb.model.UpdateNsMetadata] =
      Optional.Absent
) {
  def buildAwsValue()
      : software.amazon.awssdk.services.tnb.model.GetSolNetworkOperationMetadata = {
    import GetSolNetworkOperationMetadata.zioAwsBuilderHelper.BuilderOps
    software.amazon.awssdk.services.tnb.model.GetSolNetworkOperationMetadata
      .builder()
      .createdAt(SyntheticTimestamp_date_time.unwrap(createdAt): Instant)
      .optionallyWith(instantiateMetadata.map(value => value.buildAwsValue()))(
        _.instantiateMetadata
      )
      .lastModified(SyntheticTimestamp_date_time.unwrap(lastModified): Instant)
      .optionallyWith(
        modifyVnfInfoMetadata.map(value => value.buildAwsValue())
      )(_.modifyVnfInfoMetadata)
      .optionallyWith(updateNsMetadata.map(value => value.buildAwsValue()))(
        _.updateNsMetadata
      )
      .build()
  }
  def asReadOnly: zio.aws.tnb.model.GetSolNetworkOperationMetadata.ReadOnly =
    zio.aws.tnb.model.GetSolNetworkOperationMetadata.wrap(buildAwsValue())
}
object GetSolNetworkOperationMetadata {
  private lazy val zioAwsBuilderHelper: BuilderHelper[
    software.amazon.awssdk.services.tnb.model.GetSolNetworkOperationMetadata
  ] = BuilderHelper.apply
  trait ReadOnly {
    def asEditable: zio.aws.tnb.model.GetSolNetworkOperationMetadata =
      zio.aws.tnb.model.GetSolNetworkOperationMetadata(
        createdAt,
        instantiateMetadata.map(value => value.asEditable),
        lastModified,
        modifyVnfInfoMetadata.map(value => value.asEditable),
        updateNsMetadata.map(value => value.asEditable)
      )
    def createdAt: SyntheticTimestamp_date_time
    def instantiateMetadata
        : Optional[zio.aws.tnb.model.InstantiateMetadata.ReadOnly]
    def lastModified: SyntheticTimestamp_date_time
    def modifyVnfInfoMetadata
        : Optional[zio.aws.tnb.model.ModifyVnfInfoMetadata.ReadOnly]
    def updateNsMetadata: Optional[zio.aws.tnb.model.UpdateNsMetadata.ReadOnly]
    def getCreatedAt: ZIO[Any, Nothing, SyntheticTimestamp_date_time] =
      ZIO.succeed(createdAt)
    def getInstantiateMetadata
        : ZIO[Any, AwsError, zio.aws.tnb.model.InstantiateMetadata.ReadOnly] =
      AwsError.unwrapOptionField("instantiateMetadata", instantiateMetadata)
    def getLastModified: ZIO[Any, Nothing, SyntheticTimestamp_date_time] =
      ZIO.succeed(lastModified)
    def getModifyVnfInfoMetadata
        : ZIO[Any, AwsError, zio.aws.tnb.model.ModifyVnfInfoMetadata.ReadOnly] =
      AwsError.unwrapOptionField("modifyVnfInfoMetadata", modifyVnfInfoMetadata)
    def getUpdateNsMetadata
        : ZIO[Any, AwsError, zio.aws.tnb.model.UpdateNsMetadata.ReadOnly] =
      AwsError.unwrapOptionField("updateNsMetadata", updateNsMetadata)
  }
  private final class Wrapper(
      impl: software.amazon.awssdk.services.tnb.model.GetSolNetworkOperationMetadata
  ) extends zio.aws.tnb.model.GetSolNetworkOperationMetadata.ReadOnly {
    override val createdAt: SyntheticTimestamp_date_time =
      zio.aws.tnb.model.primitives
        .SyntheticTimestamp_date_time(impl.createdAt())
    override val instantiateMetadata
        : Optional[zio.aws.tnb.model.InstantiateMetadata.ReadOnly] =
      zio.aws.core.internal
        .optionalFromNullable(impl.instantiateMetadata())
        .map(value => zio.aws.tnb.model.InstantiateMetadata.wrap(value))
    override val lastModified: SyntheticTimestamp_date_time =
      zio.aws.tnb.model.primitives
        .SyntheticTimestamp_date_time(impl.lastModified())
    override val modifyVnfInfoMetadata
        : Optional[zio.aws.tnb.model.ModifyVnfInfoMetadata.ReadOnly] =
      zio.aws.core.internal
        .optionalFromNullable(impl.modifyVnfInfoMetadata())
        .map(value => zio.aws.tnb.model.ModifyVnfInfoMetadata.wrap(value))
    override val updateNsMetadata
        : Optional[zio.aws.tnb.model.UpdateNsMetadata.ReadOnly] =
      zio.aws.core.internal
        .optionalFromNullable(impl.updateNsMetadata())
        .map(value => zio.aws.tnb.model.UpdateNsMetadata.wrap(value))
  }
  def wrap(
      impl: software.amazon.awssdk.services.tnb.model.GetSolNetworkOperationMetadata
  ): zio.aws.tnb.model.GetSolNetworkOperationMetadata.ReadOnly = new Wrapper(
    impl
  )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy