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

io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary.scala Maven / Gradle / Ivy

package io.github.vigoo.zioaws.elasticbeanstalk.model
import java.lang.Integer
import zio.ZIO
import io.github.vigoo.zioaws.elasticbeanstalk.model.primitives.NullableInteger
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class InstanceHealthSummary(
    noData: Option[NullableInteger] = None,
    unknown: Option[NullableInteger] = None,
    pending: Option[NullableInteger] = None,
    ok: Option[NullableInteger] = None,
    info: Option[NullableInteger] = None,
    warning: Option[NullableInteger] = None,
    degraded: Option[NullableInteger] = None,
    severe: Option[NullableInteger] = None
) {
  def buildAwsValue()
      : software.amazon.awssdk.services.elasticbeanstalk.model.InstanceHealthSummary = {
    import InstanceHealthSummary.zioAwsBuilderHelper.BuilderOps
    software.amazon.awssdk.services.elasticbeanstalk.model.InstanceHealthSummary
      .builder()
      .optionallyWith(noData.map(value => value: Integer))(_.noData)
      .optionallyWith(unknown.map(value => value: Integer))(_.unknown)
      .optionallyWith(pending.map(value => value: Integer))(_.pending)
      .optionallyWith(ok.map(value => value: Integer))(_.ok)
      .optionallyWith(info.map(value => value: Integer))(_.info)
      .optionallyWith(warning.map(value => value: Integer))(_.warning)
      .optionallyWith(degraded.map(value => value: Integer))(_.degraded)
      .optionallyWith(severe.map(value => value: Integer))(_.severe)
      .build()
  }
  def asReadOnly
      : io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary.ReadOnly =
    io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary
      .wrap(buildAwsValue())
}
object InstanceHealthSummary {
  private lazy val zioAwsBuilderHelper: BuilderHelper[
    software.amazon.awssdk.services.elasticbeanstalk.model.InstanceHealthSummary
  ] = BuilderHelper.apply
  trait ReadOnly {
    def editable
        : io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary =
      io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary(
        noDataValue.map(value => value),
        unknownValue.map(value => value),
        pendingValue.map(value => value),
        okValue.map(value => value),
        infoValue.map(value => value),
        warningValue.map(value => value),
        degradedValue.map(value => value),
        severeValue.map(value => value)
      )
    def noDataValue: Option[NullableInteger]
    def unknownValue: Option[NullableInteger]
    def pendingValue: Option[NullableInteger]
    def okValue: Option[NullableInteger]
    def infoValue: Option[NullableInteger]
    def warningValue: Option[NullableInteger]
    def degradedValue: Option[NullableInteger]
    def severeValue: Option[NullableInteger]
    def noData: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("noData", noDataValue)
    def unknown: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("unknown", unknownValue)
    def pending: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("pending", pendingValue)
    def ok: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("ok", okValue)
    def info: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("info", infoValue)
    def warning: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("warning", warningValue)
    def degraded: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("degraded", degradedValue)
    def severe: ZIO[Any, AwsError, NullableInteger] =
      AwsError.unwrapOptionField("severe", severeValue)
  }
  private class Wrapper(
      impl: software.amazon.awssdk.services.elasticbeanstalk.model.InstanceHealthSummary
  ) extends io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary.ReadOnly {
    override def noDataValue: Option[NullableInteger] =
      scala.Option(impl.noData()).map(value => value: NullableInteger)
    override def unknownValue: Option[NullableInteger] =
      scala.Option(impl.unknown()).map(value => value: NullableInteger)
    override def pendingValue: Option[NullableInteger] =
      scala.Option(impl.pending()).map(value => value: NullableInteger)
    override def okValue: Option[NullableInteger] =
      scala.Option(impl.ok()).map(value => value: NullableInteger)
    override def infoValue: Option[NullableInteger] =
      scala.Option(impl.info()).map(value => value: NullableInteger)
    override def warningValue: Option[NullableInteger] =
      scala.Option(impl.warning()).map(value => value: NullableInteger)
    override def degradedValue: Option[NullableInteger] =
      scala.Option(impl.degraded()).map(value => value: NullableInteger)
    override def severeValue: Option[NullableInteger] =
      scala.Option(impl.severe()).map(value => value: NullableInteger)
  }
  def wrap(
      impl: software.amazon.awssdk.services.elasticbeanstalk.model.InstanceHealthSummary
  ): io.github.vigoo.zioaws.elasticbeanstalk.model.InstanceHealthSummary.ReadOnly =
    new Wrapper(impl)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy