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

io.github.vigoo.zioaws.lambda.model.UpdateFunctionConfigurationRequest.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 UpdateFunctionConfigurationRequest(functionName: primitives.FunctionName, role: scala.Option[primitives.RoleArn] = None, handler: scala.Option[primitives.Handler] = None, description: scala.Option[primitives.Description] = None, timeout: scala.Option[primitives.Timeout] = None, memorySize: scala.Option[primitives.MemorySize] = None, vpcConfig: scala.Option[VpcConfig] = None, environment: scala.Option[Environment] = None, runtime: scala.Option[Runtime] = None, deadLetterConfig: scala.Option[DeadLetterConfig] = None, kmsKeyArn: scala.Option[primitives.KMSKeyArn] = None, tracingConfig: scala.Option[TracingConfig] = None, revisionId: scala.Option[String] = None, layers: scala.Option[Iterable[primitives.LayerVersionArn]] = None, fileSystemConfigs: scala.Option[Iterable[FileSystemConfig]] = None, imageConfig: scala.Option[ImageConfig] = None) {
  def buildAwsValue(): software.amazon.awssdk.services.lambda.model.UpdateFunctionConfigurationRequest = {
    import UpdateFunctionConfigurationRequest.zioAwsBuilderHelper.BuilderOps
    software.amazon.awssdk.services.lambda.model.UpdateFunctionConfigurationRequest.builder().functionName(functionName: java.lang.String).optionallyWith(role.map(value => value: java.lang.String))(_.role).optionallyWith(handler.map(value => value: java.lang.String))(_.handler).optionallyWith(description.map(value => value: java.lang.String))(_.description).optionallyWith(timeout.map(value => value: java.lang.Integer))(_.timeout).optionallyWith(memorySize.map(value => value: java.lang.Integer))(_.memorySize).optionallyWith(vpcConfig.map(value => value.buildAwsValue()))(_.vpcConfig).optionallyWith(environment.map(value => value.buildAwsValue()))(_.environment).optionallyWith(runtime.map(value => value.unwrap))(_.runtime).optionallyWith(deadLetterConfig.map(value => value.buildAwsValue()))(_.deadLetterConfig).optionallyWith(kmsKeyArn.map(value => value: java.lang.String))(_.kmsKeyArn).optionallyWith(tracingConfig.map(value => value.buildAwsValue()))(_.tracingConfig).optionallyWith(revisionId.map(value => value: java.lang.String))(_.revisionId).optionallyWith(layers.map(value => value.map { item => 
      item: java.lang.String
    }.asJavaCollection))(_.layers).optionallyWith(fileSystemConfigs.map(value => value.map { item => 
      item.buildAwsValue()
    }.asJavaCollection))(_.fileSystemConfigs).optionallyWith(imageConfig.map(value => value.buildAwsValue()))(_.imageConfig).build()
  }
  def asReadOnly: UpdateFunctionConfigurationRequest.ReadOnly = UpdateFunctionConfigurationRequest.wrap(buildAwsValue())
}
object UpdateFunctionConfigurationRequest {
  private lazy val zioAwsBuilderHelper: io.github.vigoo.zioaws.core.BuilderHelper[software.amazon.awssdk.services.lambda.model.UpdateFunctionConfigurationRequest] = io.github.vigoo.zioaws.core.BuilderHelper.apply
  trait ReadOnly {
    def editable: UpdateFunctionConfigurationRequest = UpdateFunctionConfigurationRequest(functionNameValue, roleValue.map(value => value), handlerValue.map(value => value), descriptionValue.map(value => value), timeoutValue.map(value => value), memorySizeValue.map(value => value), vpcConfigValue.map(value => value.editable), environmentValue.map(value => value.editable), runtimeValue.map(value => value), deadLetterConfigValue.map(value => value.editable), kmsKeyArnValue.map(value => value), tracingConfigValue.map(value => value.editable), revisionIdValue.map(value => value), layersValue.map(value => value), fileSystemConfigsValue.map(value => value.map { item => 
      item.editable
    }), imageConfigValue.map(value => value.editable))
    def functionNameValue: primitives.FunctionName
    def roleValue: scala.Option[primitives.RoleArn]
    def handlerValue: scala.Option[primitives.Handler]
    def descriptionValue: scala.Option[primitives.Description]
    def timeoutValue: scala.Option[primitives.Timeout]
    def memorySizeValue: scala.Option[primitives.MemorySize]
    def vpcConfigValue: scala.Option[VpcConfig.ReadOnly]
    def environmentValue: scala.Option[Environment.ReadOnly]
    def runtimeValue: scala.Option[Runtime]
    def deadLetterConfigValue: scala.Option[DeadLetterConfig.ReadOnly]
    def kmsKeyArnValue: scala.Option[primitives.KMSKeyArn]
    def tracingConfigValue: scala.Option[TracingConfig.ReadOnly]
    def revisionIdValue: scala.Option[String]
    def layersValue: scala.Option[List[primitives.LayerVersionArn]]
    def fileSystemConfigsValue: scala.Option[List[FileSystemConfig.ReadOnly]]
    def imageConfigValue: scala.Option[ImageConfig.ReadOnly]
    def functionName: ZIO[Any, Nothing, primitives.FunctionName] = ZIO.succeed(functionNameValue)
    def role: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.RoleArn] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("role", roleValue)
    def handler: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.Handler] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("handler", handlerValue)
    def description: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.Description] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("description", descriptionValue)
    def timeout: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.Timeout] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("timeout", timeoutValue)
    def memorySize: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.MemorySize] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("memorySize", memorySizeValue)
    def vpcConfig: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, VpcConfig.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("vpcConfig", vpcConfigValue)
    def environment: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, Environment.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("environment", environmentValue)
    def runtime: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, Runtime] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("runtime", runtimeValue)
    def deadLetterConfig: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, DeadLetterConfig.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("deadLetterConfig", deadLetterConfigValue)
    def kmsKeyArn: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.KMSKeyArn] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("kmsKeyArn", kmsKeyArnValue)
    def tracingConfig: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, TracingConfig.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("tracingConfig", tracingConfigValue)
    def revisionId: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, String] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("revisionId", revisionIdValue)
    def layers: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, List[primitives.LayerVersionArn]] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("layers", layersValue)
    def fileSystemConfigs: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, List[FileSystemConfig.ReadOnly]] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("fileSystemConfigs", fileSystemConfigsValue)
    def imageConfig: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, ImageConfig.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("imageConfig", imageConfigValue)
  }
  private class Wrapper(impl: software.amazon.awssdk.services.lambda.model.UpdateFunctionConfigurationRequest) extends UpdateFunctionConfigurationRequest.ReadOnly {
    override def functionNameValue: primitives.FunctionName = impl.functionName(): primitives.FunctionName
    override def roleValue: scala.Option[primitives.RoleArn] = scala.Option(impl.role()).map(value => value: primitives.RoleArn)
    override def handlerValue: scala.Option[primitives.Handler] = scala.Option(impl.handler()).map(value => value: primitives.Handler)
    override def descriptionValue: scala.Option[primitives.Description] = scala.Option(impl.description()).map(value => value: primitives.Description)
    override def timeoutValue: scala.Option[primitives.Timeout] = scala.Option(impl.timeout()).map(value => value: primitives.Timeout)
    override def memorySizeValue: scala.Option[primitives.MemorySize] = scala.Option(impl.memorySize()).map(value => value: primitives.MemorySize)
    override def vpcConfigValue: scala.Option[VpcConfig.ReadOnly] = scala.Option(impl.vpcConfig()).map(value => VpcConfig.wrap(value))
    override def environmentValue: scala.Option[Environment.ReadOnly] = scala.Option(impl.environment()).map(value => Environment.wrap(value))
    override def runtimeValue: scala.Option[Runtime] = scala.Option(impl.runtime()).map(value => Runtime.wrap(value))
    override def deadLetterConfigValue: scala.Option[DeadLetterConfig.ReadOnly] = scala.Option(impl.deadLetterConfig()).map(value => DeadLetterConfig.wrap(value))
    override def kmsKeyArnValue: scala.Option[primitives.KMSKeyArn] = scala.Option(impl.kmsKeyArn()).map(value => value: primitives.KMSKeyArn)
    override def tracingConfigValue: scala.Option[TracingConfig.ReadOnly] = scala.Option(impl.tracingConfig()).map(value => TracingConfig.wrap(value))
    override def revisionIdValue: scala.Option[String] = scala.Option(impl.revisionId()).map(value => value: String)
    override def layersValue: scala.Option[List[primitives.LayerVersionArn]] = scala.Option(impl.layers()).map(value => value.asScala.map { item => 
      item: primitives.LayerVersionArn
    }.toList)
    override def fileSystemConfigsValue: scala.Option[List[FileSystemConfig.ReadOnly]] = scala.Option(impl.fileSystemConfigs()).map(value => value.asScala.map { item => 
      FileSystemConfig.wrap(item)
    }.toList)
    override def imageConfigValue: scala.Option[ImageConfig.ReadOnly] = scala.Option(impl.imageConfig()).map(value => ImageConfig.wrap(value))
  }
  def wrap(impl: software.amazon.awssdk.services.lambda.model.UpdateFunctionConfigurationRequest): ReadOnly = new Wrapper(impl)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy