
io.github.vigoo.zioaws.lambda.model.PutFunctionEventInvokeConfigRequest.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 PutFunctionEventInvokeConfigRequest(functionName: primitives.FunctionName, qualifier: scala.Option[primitives.Qualifier] = None, maximumRetryAttempts: scala.Option[primitives.MaximumRetryAttempts] = None, maximumEventAgeInSeconds: scala.Option[primitives.MaximumEventAgeInSeconds] = None, destinationConfig: scala.Option[DestinationConfig] = None) {
def buildAwsValue(): software.amazon.awssdk.services.lambda.model.PutFunctionEventInvokeConfigRequest = {
import PutFunctionEventInvokeConfigRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.lambda.model.PutFunctionEventInvokeConfigRequest.builder().functionName(functionName: java.lang.String).optionallyWith(qualifier.map(value => value: java.lang.String))(_.qualifier).optionallyWith(maximumRetryAttempts.map(value => value: java.lang.Integer))(_.maximumRetryAttempts).optionallyWith(maximumEventAgeInSeconds.map(value => value: java.lang.Integer))(_.maximumEventAgeInSeconds).optionallyWith(destinationConfig.map(value => value.buildAwsValue()))(_.destinationConfig).build()
}
def asReadOnly: PutFunctionEventInvokeConfigRequest.ReadOnly = PutFunctionEventInvokeConfigRequest.wrap(buildAwsValue())
}
object PutFunctionEventInvokeConfigRequest {
private lazy val zioAwsBuilderHelper: io.github.vigoo.zioaws.core.BuilderHelper[software.amazon.awssdk.services.lambda.model.PutFunctionEventInvokeConfigRequest] = io.github.vigoo.zioaws.core.BuilderHelper.apply
trait ReadOnly {
def editable: PutFunctionEventInvokeConfigRequest = PutFunctionEventInvokeConfigRequest(functionNameValue, qualifierValue.map(value => value), maximumRetryAttemptsValue.map(value => value), maximumEventAgeInSecondsValue.map(value => value), destinationConfigValue.map(value => value.editable))
def functionNameValue: primitives.FunctionName
def qualifierValue: scala.Option[primitives.Qualifier]
def maximumRetryAttemptsValue: scala.Option[primitives.MaximumRetryAttempts]
def maximumEventAgeInSecondsValue: scala.Option[primitives.MaximumEventAgeInSeconds]
def destinationConfigValue: scala.Option[DestinationConfig.ReadOnly]
def functionName: ZIO[Any, Nothing, primitives.FunctionName] = ZIO.succeed(functionNameValue)
def qualifier: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.Qualifier] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("qualifier", qualifierValue)
def maximumRetryAttempts: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.MaximumRetryAttempts] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("maximumRetryAttempts", maximumRetryAttemptsValue)
def maximumEventAgeInSeconds: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.MaximumEventAgeInSeconds] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("maximumEventAgeInSeconds", maximumEventAgeInSecondsValue)
def destinationConfig: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, DestinationConfig.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("destinationConfig", destinationConfigValue)
}
private class Wrapper(impl: software.amazon.awssdk.services.lambda.model.PutFunctionEventInvokeConfigRequest) extends PutFunctionEventInvokeConfigRequest.ReadOnly {
override def functionNameValue: primitives.FunctionName = impl.functionName(): primitives.FunctionName
override def qualifierValue: scala.Option[primitives.Qualifier] = scala.Option(impl.qualifier()).map(value => value: primitives.Qualifier)
override def maximumRetryAttemptsValue: scala.Option[primitives.MaximumRetryAttempts] = scala.Option(impl.maximumRetryAttempts()).map(value => value: primitives.MaximumRetryAttempts)
override def maximumEventAgeInSecondsValue: scala.Option[primitives.MaximumEventAgeInSeconds] = scala.Option(impl.maximumEventAgeInSeconds()).map(value => value: primitives.MaximumEventAgeInSeconds)
override def destinationConfigValue: scala.Option[DestinationConfig.ReadOnly] = scala.Option(impl.destinationConfig()).map(value => DestinationConfig.wrap(value))
}
def wrap(impl: software.amazon.awssdk.services.lambda.model.PutFunctionEventInvokeConfigRequest): ReadOnly = new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy