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

zio.aws.licensemanager.model.LicenseOperationFailure.scala Maven / Gradle / Ivy

package zio.aws.licensemanager.model
import java.time.Instant
import zio.aws.licensemanager.model.primitives.DateTime
import zio.prelude.data.Optional
import zio.aws.core.{AwsError, BuilderHelper}
import zio.ZIO
import scala.jdk.CollectionConverters.*
final case class LicenseOperationFailure(
    resourceArn: Optional[String] = Optional.Absent,
    resourceType: Optional[zio.aws.licensemanager.model.ResourceType] =
      Optional.Absent,
    errorMessage: Optional[String] = Optional.Absent,
    failureTime: Optional[DateTime] = Optional.Absent,
    operationName: Optional[String] = Optional.Absent,
    resourceOwnerId: Optional[String] = Optional.Absent,
    operationRequestedBy: Optional[String] = Optional.Absent,
    metadataList: Optional[Iterable[zio.aws.licensemanager.model.Metadata]] =
      Optional.Absent
) {
  def buildAwsValue()
      : software.amazon.awssdk.services.licensemanager.model.LicenseOperationFailure = {
    import LicenseOperationFailure.zioAwsBuilderHelper.BuilderOps
    software.amazon.awssdk.services.licensemanager.model.LicenseOperationFailure
      .builder()
      .optionallyWith(resourceArn.map(value => value: java.lang.String))(
        _.resourceArn
      )
      .optionallyWith(resourceType.map(value => value.unwrap))(_.resourceType)
      .optionallyWith(errorMessage.map(value => value: java.lang.String))(
        _.errorMessage
      )
      .optionallyWith(
        failureTime.map(value => DateTime.unwrap(value): Instant)
      )(_.failureTime)
      .optionallyWith(operationName.map(value => value: java.lang.String))(
        _.operationName
      )
      .optionallyWith(resourceOwnerId.map(value => value: java.lang.String))(
        _.resourceOwnerId
      )
      .optionallyWith(
        operationRequestedBy.map(value => value: java.lang.String)
      )(_.operationRequestedBy)
      .optionallyWith(
        metadataList.map(value =>
          value.map { item =>
            item.buildAwsValue()
          }.asJavaCollection
        )
      )(_.metadataList)
      .build()
  }
  def asReadOnly
      : zio.aws.licensemanager.model.LicenseOperationFailure.ReadOnly =
    zio.aws.licensemanager.model.LicenseOperationFailure.wrap(buildAwsValue())
}
object LicenseOperationFailure {
  private lazy val zioAwsBuilderHelper: BuilderHelper[
    software.amazon.awssdk.services.licensemanager.model.LicenseOperationFailure
  ] = BuilderHelper.apply
  trait ReadOnly {
    def asEditable: zio.aws.licensemanager.model.LicenseOperationFailure =
      zio.aws.licensemanager.model.LicenseOperationFailure(
        resourceArn.map(value => value),
        resourceType.map(value => value),
        errorMessage.map(value => value),
        failureTime.map(value => value),
        operationName.map(value => value),
        resourceOwnerId.map(value => value),
        operationRequestedBy.map(value => value),
        metadataList.map(value =>
          value.map { item =>
            item.asEditable
          }
        )
      )
    def resourceArn: Optional[String]
    def resourceType: Optional[zio.aws.licensemanager.model.ResourceType]
    def errorMessage: Optional[String]
    def failureTime: Optional[DateTime]
    def operationName: Optional[String]
    def resourceOwnerId: Optional[String]
    def operationRequestedBy: Optional[String]
    def metadataList
        : Optional[List[zio.aws.licensemanager.model.Metadata.ReadOnly]]
    def getResourceArn: ZIO[Any, AwsError, String] =
      AwsError.unwrapOptionField("resourceArn", resourceArn)
    def getResourceType
        : ZIO[Any, AwsError, zio.aws.licensemanager.model.ResourceType] =
      AwsError.unwrapOptionField("resourceType", resourceType)
    def getErrorMessage: ZIO[Any, AwsError, String] =
      AwsError.unwrapOptionField("errorMessage", errorMessage)
    def getFailureTime: ZIO[Any, AwsError, DateTime] =
      AwsError.unwrapOptionField("failureTime", failureTime)
    def getOperationName: ZIO[Any, AwsError, String] =
      AwsError.unwrapOptionField("operationName", operationName)
    def getResourceOwnerId: ZIO[Any, AwsError, String] =
      AwsError.unwrapOptionField("resourceOwnerId", resourceOwnerId)
    def getOperationRequestedBy: ZIO[Any, AwsError, String] =
      AwsError.unwrapOptionField("operationRequestedBy", operationRequestedBy)
    def getMetadataList: ZIO[Any, AwsError, List[
      zio.aws.licensemanager.model.Metadata.ReadOnly
    ]] = AwsError.unwrapOptionField("metadataList", metadataList)
  }
  private final class Wrapper(
      impl: software.amazon.awssdk.services.licensemanager.model.LicenseOperationFailure
  ) extends zio.aws.licensemanager.model.LicenseOperationFailure.ReadOnly {
    override val resourceArn: Optional[String] = zio.aws.core.internal
      .optionalFromNullable(impl.resourceArn())
      .map(value => value: String)
    override val resourceType
        : Optional[zio.aws.licensemanager.model.ResourceType] =
      zio.aws.core.internal
        .optionalFromNullable(impl.resourceType())
        .map(value => zio.aws.licensemanager.model.ResourceType.wrap(value))
    override val errorMessage: Optional[String] = zio.aws.core.internal
      .optionalFromNullable(impl.errorMessage())
      .map(value => value: String)
    override val failureTime: Optional[DateTime] = zio.aws.core.internal
      .optionalFromNullable(impl.failureTime())
      .map(value => zio.aws.licensemanager.model.primitives.DateTime(value))
    override val operationName: Optional[String] = zio.aws.core.internal
      .optionalFromNullable(impl.operationName())
      .map(value => value: String)
    override val resourceOwnerId: Optional[String] = zio.aws.core.internal
      .optionalFromNullable(impl.resourceOwnerId())
      .map(value => value: String)
    override val operationRequestedBy: Optional[String] = zio.aws.core.internal
      .optionalFromNullable(impl.operationRequestedBy())
      .map(value => value: String)
    override val metadataList
        : Optional[List[zio.aws.licensemanager.model.Metadata.ReadOnly]] =
      zio.aws.core.internal
        .optionalFromNullable(impl.metadataList())
        .map(value =>
          value.asScala.map { item =>
            zio.aws.licensemanager.model.Metadata.wrap(item)
          }.toList
        )
  }
  def wrap(
      impl: software.amazon.awssdk.services.licensemanager.model.LicenseOperationFailure
  ): zio.aws.licensemanager.model.LicenseOperationFailure.ReadOnly =
    new Wrapper(impl)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy