
io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.ecrpublic.model
import io.github.vigoo.zioaws.ecrpublic.model.primitives.{
RepositoryName,
RegistryIdOrAlias
}
import zio.ZIO
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class InitiateLayerUploadRequest(
registryId: Option[RegistryIdOrAlias] = None,
repositoryName: RepositoryName
) {
def buildAwsValue()
: software.amazon.awssdk.services.ecrpublic.model.InitiateLayerUploadRequest = {
import InitiateLayerUploadRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.ecrpublic.model.InitiateLayerUploadRequest
.builder()
.optionallyWith(registryId.map(value => value: java.lang.String))(
_.registryId
)
.repositoryName(repositoryName: java.lang.String)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest.ReadOnly =
io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest
.wrap(buildAwsValue())
}
object InitiateLayerUploadRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.ecrpublic.model.InitiateLayerUploadRequest
] = BuilderHelper.apply
trait ReadOnly {
def editable
: io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest =
io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest(
registryIdValue.map(value => value),
repositoryNameValue
)
def registryIdValue: Option[RegistryIdOrAlias]
def repositoryNameValue: RepositoryName
def registryId: ZIO[Any, AwsError, RegistryIdOrAlias] =
AwsError.unwrapOptionField("registryId", registryIdValue)
def repositoryName: ZIO[Any, Nothing, RepositoryName] =
ZIO.succeed(repositoryNameValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.ecrpublic.model.InitiateLayerUploadRequest
) extends io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest.ReadOnly {
override def registryIdValue: Option[RegistryIdOrAlias] =
scala.Option(impl.registryId()).map(value => value: RegistryIdOrAlias)
override def repositoryNameValue: RepositoryName =
impl.repositoryName(): RepositoryName
}
def wrap(
impl: software.amazon.awssdk.services.ecrpublic.model.InitiateLayerUploadRequest
): io.github.vigoo.zioaws.ecrpublic.model.InitiateLayerUploadRequest.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy