
io.github.vigoo.zioaws.lambda.model.UpdateEventSourceMappingRequest.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 UpdateEventSourceMappingRequest(uuid: String, functionName: scala.Option[primitives.FunctionName] = None, enabled: scala.Option[primitives.Enabled] = None, batchSize: scala.Option[primitives.BatchSize] = None, maximumBatchingWindowInSeconds: scala.Option[primitives.MaximumBatchingWindowInSeconds] = None, destinationConfig: scala.Option[DestinationConfig] = None, maximumRecordAgeInSeconds: scala.Option[primitives.MaximumRecordAgeInSeconds] = None, bisectBatchOnFunctionError: scala.Option[primitives.BisectBatchOnFunctionError] = None, maximumRetryAttempts: scala.Option[primitives.MaximumRetryAttemptsEventSourceMapping] = None, parallelizationFactor: scala.Option[primitives.ParallelizationFactor] = None, sourceAccessConfigurations: scala.Option[Iterable[SourceAccessConfiguration]] = None, tumblingWindowInSeconds: scala.Option[primitives.TumblingWindowInSeconds] = None, functionResponseTypes: scala.Option[Iterable[FunctionResponseType]] = None) {
def buildAwsValue(): software.amazon.awssdk.services.lambda.model.UpdateEventSourceMappingRequest = {
import UpdateEventSourceMappingRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.lambda.model.UpdateEventSourceMappingRequest.builder().uuid(uuid: java.lang.String).optionallyWith(functionName.map(value => value: java.lang.String))(_.functionName).optionallyWith(enabled.map(value => value: java.lang.Boolean))(_.enabled).optionallyWith(batchSize.map(value => value: java.lang.Integer))(_.batchSize).optionallyWith(maximumBatchingWindowInSeconds.map(value => value: java.lang.Integer))(_.maximumBatchingWindowInSeconds).optionallyWith(destinationConfig.map(value => value.buildAwsValue()))(_.destinationConfig).optionallyWith(maximumRecordAgeInSeconds.map(value => value: java.lang.Integer))(_.maximumRecordAgeInSeconds).optionallyWith(bisectBatchOnFunctionError.map(value => value: java.lang.Boolean))(_.bisectBatchOnFunctionError).optionallyWith(maximumRetryAttempts.map(value => value: java.lang.Integer))(_.maximumRetryAttempts).optionallyWith(parallelizationFactor.map(value => value: java.lang.Integer))(_.parallelizationFactor).optionallyWith(sourceAccessConfigurations.map(value => value.map { item =>
item.buildAwsValue()
}.asJavaCollection))(_.sourceAccessConfigurations).optionallyWith(tumblingWindowInSeconds.map(value => value: java.lang.Integer))(_.tumblingWindowInSeconds).optionallyWith(functionResponseTypes.map(value => value.map { item =>
item.unwrap.toString
}.asJavaCollection))(_.functionResponseTypesWithStrings).build()
}
def asReadOnly: UpdateEventSourceMappingRequest.ReadOnly = UpdateEventSourceMappingRequest.wrap(buildAwsValue())
}
object UpdateEventSourceMappingRequest {
private lazy val zioAwsBuilderHelper: io.github.vigoo.zioaws.core.BuilderHelper[software.amazon.awssdk.services.lambda.model.UpdateEventSourceMappingRequest] = io.github.vigoo.zioaws.core.BuilderHelper.apply
trait ReadOnly {
def editable: UpdateEventSourceMappingRequest = UpdateEventSourceMappingRequest(uuidValue, functionNameValue.map(value => value), enabledValue.map(value => value), batchSizeValue.map(value => value), maximumBatchingWindowInSecondsValue.map(value => value), destinationConfigValue.map(value => value.editable), maximumRecordAgeInSecondsValue.map(value => value), bisectBatchOnFunctionErrorValue.map(value => value), maximumRetryAttemptsValue.map(value => value), parallelizationFactorValue.map(value => value), sourceAccessConfigurationsValue.map(value => value.map { item =>
item.editable
}), tumblingWindowInSecondsValue.map(value => value), functionResponseTypesValue.map(value => value))
def uuidValue: String
def functionNameValue: scala.Option[primitives.FunctionName]
def enabledValue: scala.Option[primitives.Enabled]
def batchSizeValue: scala.Option[primitives.BatchSize]
def maximumBatchingWindowInSecondsValue: scala.Option[primitives.MaximumBatchingWindowInSeconds]
def destinationConfigValue: scala.Option[DestinationConfig.ReadOnly]
def maximumRecordAgeInSecondsValue: scala.Option[primitives.MaximumRecordAgeInSeconds]
def bisectBatchOnFunctionErrorValue: scala.Option[primitives.BisectBatchOnFunctionError]
def maximumRetryAttemptsValue: scala.Option[primitives.MaximumRetryAttemptsEventSourceMapping]
def parallelizationFactorValue: scala.Option[primitives.ParallelizationFactor]
def sourceAccessConfigurationsValue: scala.Option[List[SourceAccessConfiguration.ReadOnly]]
def tumblingWindowInSecondsValue: scala.Option[primitives.TumblingWindowInSeconds]
def functionResponseTypesValue: scala.Option[List[FunctionResponseType]]
def uuid: ZIO[Any, Nothing, String] = ZIO.succeed(uuidValue)
def functionName: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.FunctionName] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("functionName", functionNameValue)
def enabled: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.Enabled] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("enabled", enabledValue)
def batchSize: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.BatchSize] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("batchSize", batchSizeValue)
def maximumBatchingWindowInSeconds: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.MaximumBatchingWindowInSeconds] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("maximumBatchingWindowInSeconds", maximumBatchingWindowInSecondsValue)
def destinationConfig: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, DestinationConfig.ReadOnly] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("destinationConfig", destinationConfigValue)
def maximumRecordAgeInSeconds: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.MaximumRecordAgeInSeconds] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("maximumRecordAgeInSeconds", maximumRecordAgeInSecondsValue)
def bisectBatchOnFunctionError: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.BisectBatchOnFunctionError] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("bisectBatchOnFunctionError", bisectBatchOnFunctionErrorValue)
def maximumRetryAttempts: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.MaximumRetryAttemptsEventSourceMapping] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("maximumRetryAttempts", maximumRetryAttemptsValue)
def parallelizationFactor: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.ParallelizationFactor] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("parallelizationFactor", parallelizationFactorValue)
def sourceAccessConfigurations: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, List[SourceAccessConfiguration.ReadOnly]] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("sourceAccessConfigurations", sourceAccessConfigurationsValue)
def tumblingWindowInSeconds: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, primitives.TumblingWindowInSeconds] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("tumblingWindowInSeconds", tumblingWindowInSecondsValue)
def functionResponseTypes: ZIO[Any, io.github.vigoo.zioaws.core.AwsError, List[FunctionResponseType]] = io.github.vigoo.zioaws.core.AwsError.unwrapOptionField("functionResponseTypes", functionResponseTypesValue)
}
private class Wrapper(impl: software.amazon.awssdk.services.lambda.model.UpdateEventSourceMappingRequest) extends UpdateEventSourceMappingRequest.ReadOnly {
override def uuidValue: String = impl.uuid(): String
override def functionNameValue: scala.Option[primitives.FunctionName] = scala.Option(impl.functionName()).map(value => value: primitives.FunctionName)
override def enabledValue: scala.Option[primitives.Enabled] = scala.Option(impl.enabled()).map(value => value: primitives.Enabled)
override def batchSizeValue: scala.Option[primitives.BatchSize] = scala.Option(impl.batchSize()).map(value => value: primitives.BatchSize)
override def maximumBatchingWindowInSecondsValue: scala.Option[primitives.MaximumBatchingWindowInSeconds] = scala.Option(impl.maximumBatchingWindowInSeconds()).map(value => value: primitives.MaximumBatchingWindowInSeconds)
override def destinationConfigValue: scala.Option[DestinationConfig.ReadOnly] = scala.Option(impl.destinationConfig()).map(value => DestinationConfig.wrap(value))
override def maximumRecordAgeInSecondsValue: scala.Option[primitives.MaximumRecordAgeInSeconds] = scala.Option(impl.maximumRecordAgeInSeconds()).map(value => value: primitives.MaximumRecordAgeInSeconds)
override def bisectBatchOnFunctionErrorValue: scala.Option[primitives.BisectBatchOnFunctionError] = scala.Option(impl.bisectBatchOnFunctionError()).map(value => value: primitives.BisectBatchOnFunctionError)
override def maximumRetryAttemptsValue: scala.Option[primitives.MaximumRetryAttemptsEventSourceMapping] = scala.Option(impl.maximumRetryAttempts()).map(value => value: primitives.MaximumRetryAttemptsEventSourceMapping)
override def parallelizationFactorValue: scala.Option[primitives.ParallelizationFactor] = scala.Option(impl.parallelizationFactor()).map(value => value: primitives.ParallelizationFactor)
override def sourceAccessConfigurationsValue: scala.Option[List[SourceAccessConfiguration.ReadOnly]] = scala.Option(impl.sourceAccessConfigurations()).map(value => value.asScala.map { item =>
SourceAccessConfiguration.wrap(item)
}.toList)
override def tumblingWindowInSecondsValue: scala.Option[primitives.TumblingWindowInSeconds] = scala.Option(impl.tumblingWindowInSeconds()).map(value => value: primitives.TumblingWindowInSeconds)
override def functionResponseTypesValue: scala.Option[List[FunctionResponseType]] = scala.Option(impl.functionResponseTypes()).map(value => value.asScala.map { item =>
FunctionResponseType.wrap(item)
}.toList)
}
def wrap(impl: software.amazon.awssdk.services.lambda.model.UpdateEventSourceMappingRequest): ReadOnly = new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy