
io.github.vigoo.zioaws.lambda.model.AddLayerVersionPermissionRequest.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.lambda.model
import scala.jdk.CollectionConverters.*
import java.time.Instant
import zio.{ Chunk, ZIO }
import software.amazon.awssdk.core.SdkBytes
final case class AddLayerVersionPermissionRequest(layerName: primitives.LayerName, versionNumber: primitives.LayerVersionNumber, statementId: primitives.StatementId, action: primitives.LayerPermissionAllowedAction, principal: primitives.LayerPermissionAllowedPrincipal, organizationId: scala.Option[primitives.OrganizationId] = None, revisionId: scala.Option[String] = None) {
def buildAwsValue(): software.amazon.awssdk.services.lambda.model.AddLayerVersionPermissionRequest = {
import AddLayerVersionPermissionRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.lambda.model.AddLayerVersionPermissionRequest.builder().layerName(layerName: java.lang.String).versionNumber(versionNumber: java.lang.Long).statementId(statementId: java.lang.String).action(action: java.lang.String).principal(principal: java.lang.String).optionallyWith(organizationId.map(value => value: java.lang.String))(_.organizationId).optionallyWith(revisionId.map(value => value: java.lang.String))(_.revisionId).build()
}
def asReadOnly: AddLayerVersionPermissionRequest.ReadOnly = AddLayerVersionPermissionRequest.wrap(buildAwsValue())
}
object AddLayerVersionPermissionRequest {
private lazy val zioAwsBuilderHelper: io.github.vigoo.zioaws.core.BuilderHelper[software.amazon.awssdk.services.lambda.model.AddLayerVersionPermissionRequest] = io.github.vigoo.zioaws.core.BuilderHelper.apply
trait ReadOnly {
def editable: AddLayerVersionPermissionRequest = AddLayerVersionPermissionRequest(layerNameValue, versionNumberValue, statementIdValue, actionValue, principalValue, organizationIdValue.map(value => value), revisionIdValue.map(value => value))
def layerNameValue: primitives.LayerName
def versionNumberValue: primitives.LayerVersionNumber
def statementIdValue: primitives.StatementId
def actionValue: primitives.LayerPermissionAllowedAction
def principalValue: primitives.LayerPermissionAllowedPrincipal
def organizationIdValue: scala.Option[primitives.OrganizationId]
def revisionIdValue: scala.Option[String]
def layerName: ZIO[Any, Nothing, primitives.LayerName] = ZIO.succeed(layerNameValue)
def versionNumber: ZIO[Any, Nothing, primitives.LayerVersionNumber] = ZIO.succeed(versionNumberValue)
def statementId: ZIO[Any, Nothing, primitives.StatementId] = ZIO.succeed(statementIdValue)
def action: ZIO[Any, Nothing, primitives.LayerPermissionAllowedAction] = ZIO.succeed(actionValue)
def principal: ZIO[Any, Nothing, primitives.LayerPermissionAllowedPrincipal] = ZIO.succeed(principalValue)
def organizationId: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.OrganizationId] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("organizationId", organizationIdValue)
def revisionId: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, String] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("revisionId", revisionIdValue)
}
private class Wrapper(impl: software.amazon.awssdk.services.lambda.model.AddLayerVersionPermissionRequest) extends AddLayerVersionPermissionRequest.ReadOnly {
override def layerNameValue: primitives.LayerName = impl.layerName(): primitives.LayerName
override def versionNumberValue: primitives.LayerVersionNumber = impl.versionNumber(): primitives.LayerVersionNumber
override def statementIdValue: primitives.StatementId = impl.statementId(): primitives.StatementId
override def actionValue: primitives.LayerPermissionAllowedAction = impl.action(): primitives.LayerPermissionAllowedAction
override def principalValue: primitives.LayerPermissionAllowedPrincipal = impl.principal(): primitives.LayerPermissionAllowedPrincipal
override def organizationIdValue: scala.Option[primitives.OrganizationId] = scala.Option(impl.organizationId()).map(value => value: primitives.OrganizationId)
override def revisionIdValue: scala.Option[String] = scala.Option(impl.revisionId()).map(value => value: String)
}
def wrap(impl: software.amazon.awssdk.services.lambda.model.AddLayerVersionPermissionRequest): ReadOnly = new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy