
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.elasticbeanstalk.model
import zio.ZIO
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class ResourceQuotas(
applicationQuota: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota
] = None,
applicationVersionQuota: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota
] = None,
environmentQuota: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota
] = None,
configurationTemplateQuota: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota
] = None,
customPlatformQuota: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota
] = None
) {
def buildAwsValue()
: software.amazon.awssdk.services.elasticbeanstalk.model.ResourceQuotas = {
import ResourceQuotas.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.elasticbeanstalk.model.ResourceQuotas
.builder()
.optionallyWith(applicationQuota.map(value => value.buildAwsValue()))(
_.applicationQuota
)
.optionallyWith(
applicationVersionQuota.map(value => value.buildAwsValue())
)(_.applicationVersionQuota)
.optionallyWith(environmentQuota.map(value => value.buildAwsValue()))(
_.environmentQuota
)
.optionallyWith(
configurationTemplateQuota.map(value => value.buildAwsValue())
)(_.configurationTemplateQuota)
.optionallyWith(customPlatformQuota.map(value => value.buildAwsValue()))(
_.customPlatformQuota
)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas.ReadOnly =
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas
.wrap(buildAwsValue())
}
object ResourceQuotas {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.elasticbeanstalk.model.ResourceQuotas
] = BuilderHelper.apply
trait ReadOnly {
def editable: io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas =
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas(
applicationQuotaValue.map(value => value.editable),
applicationVersionQuotaValue.map(value => value.editable),
environmentQuotaValue.map(value => value.editable),
configurationTemplateQuotaValue.map(value => value.editable),
customPlatformQuotaValue.map(value => value.editable)
)
def applicationQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
]
def applicationVersionQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
]
def environmentQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
]
def configurationTemplateQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
]
def customPlatformQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
]
def applicationQuota: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = AwsError.unwrapOptionField("applicationQuota", applicationQuotaValue)
def applicationVersionQuota: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = AwsError.unwrapOptionField(
"applicationVersionQuota",
applicationVersionQuotaValue
)
def environmentQuota: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = AwsError.unwrapOptionField("environmentQuota", environmentQuotaValue)
def configurationTemplateQuota: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = AwsError.unwrapOptionField(
"configurationTemplateQuota",
configurationTemplateQuotaValue
)
def customPlatformQuota: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = AwsError.unwrapOptionField(
"customPlatformQuota",
customPlatformQuotaValue
)
}
private class Wrapper(
impl: software.amazon.awssdk.services.elasticbeanstalk.model.ResourceQuotas
) extends io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas.ReadOnly {
override def applicationQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = scala
.Option(impl.applicationQuota())
.map(value =>
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.wrap(value)
)
override def applicationVersionQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = scala
.Option(impl.applicationVersionQuota())
.map(value =>
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.wrap(value)
)
override def environmentQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = scala
.Option(impl.environmentQuota())
.map(value =>
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.wrap(value)
)
override def configurationTemplateQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = scala
.Option(impl.configurationTemplateQuota())
.map(value =>
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.wrap(value)
)
override def customPlatformQuotaValue: Option[
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.ReadOnly
] = scala
.Option(impl.customPlatformQuota())
.map(value =>
io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuota.wrap(value)
)
}
def wrap(
impl: software.amazon.awssdk.services.elasticbeanstalk.model.ResourceQuotas
): io.github.vigoo.zioaws.elasticbeanstalk.model.ResourceQuotas.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy