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

io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest.scala Maven / Gradle / Ivy

package io.github.vigoo.zioaws.elasticbeanstalk.model
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import java.time.Instant
import io.github.vigoo.zioaws.elasticbeanstalk.model.primitives.{
  ConfigurationTemplateName,
  Token,
  ApplicationName,
  EnvironmentName,
  MaxRecords,
  VersionLabel,
  PlatformArn,
  RequestId,
  EnvironmentId,
  TimeFilterStart,
  TimeFilterEnd
}
import zio.ZIO
import java.lang.Integer
import scala.jdk.CollectionConverters._
final case class DescribeEventsRequest(
    applicationName: Option[ApplicationName] = None,
    versionLabel: Option[VersionLabel] = None,
    templateName: Option[ConfigurationTemplateName] = None,
    environmentId: Option[EnvironmentId] = None,
    environmentName: Option[EnvironmentName] = None,
    platformArn: Option[PlatformArn] = None,
    requestId: Option[RequestId] = None,
    severity: Option[
      io.github.vigoo.zioaws.elasticbeanstalk.model.EventSeverity
    ] = None,
    startTime: Option[TimeFilterStart] = None,
    endTime: Option[TimeFilterEnd] = None,
    maxRecords: Option[MaxRecords] = None,
    nextToken: Option[Token] = None
) {
  def buildAwsValue()
      : software.amazon.awssdk.services.elasticbeanstalk.model.DescribeEventsRequest = {
    import DescribeEventsRequest.zioAwsBuilderHelper.BuilderOps
    software.amazon.awssdk.services.elasticbeanstalk.model.DescribeEventsRequest
      .builder()
      .optionallyWith(applicationName.map(value => value: java.lang.String))(
        _.applicationName
      )
      .optionallyWith(versionLabel.map(value => value: java.lang.String))(
        _.versionLabel
      )
      .optionallyWith(templateName.map(value => value: java.lang.String))(
        _.templateName
      )
      .optionallyWith(environmentId.map(value => value: java.lang.String))(
        _.environmentId
      )
      .optionallyWith(environmentName.map(value => value: java.lang.String))(
        _.environmentName
      )
      .optionallyWith(platformArn.map(value => value: java.lang.String))(
        _.platformArn
      )
      .optionallyWith(requestId.map(value => value: java.lang.String))(
        _.requestId
      )
      .optionallyWith(severity.map(value => value.unwrap))(_.severity)
      .optionallyWith(startTime.map(value => value: Instant))(_.startTime)
      .optionallyWith(endTime.map(value => value: Instant))(_.endTime)
      .optionallyWith(maxRecords.map(value => value: Integer))(_.maxRecords)
      .optionallyWith(nextToken.map(value => value: java.lang.String))(
        _.nextToken
      )
      .build()
  }
  def asReadOnly
      : io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest.ReadOnly =
    io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest
      .wrap(buildAwsValue())
}
object DescribeEventsRequest {
  private lazy val zioAwsBuilderHelper: BuilderHelper[
    software.amazon.awssdk.services.elasticbeanstalk.model.DescribeEventsRequest
  ] = BuilderHelper.apply
  trait ReadOnly {
    def editable
        : io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest =
      io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest(
        applicationNameValue.map(value => value),
        versionLabelValue.map(value => value),
        templateNameValue.map(value => value),
        environmentIdValue.map(value => value),
        environmentNameValue.map(value => value),
        platformArnValue.map(value => value),
        requestIdValue.map(value => value),
        severityValue.map(value => value),
        startTimeValue.map(value => value),
        endTimeValue.map(value => value),
        maxRecordsValue.map(value => value),
        nextTokenValue.map(value => value)
      )
    def applicationNameValue: Option[ApplicationName]
    def versionLabelValue: Option[VersionLabel]
    def templateNameValue: Option[ConfigurationTemplateName]
    def environmentIdValue: Option[EnvironmentId]
    def environmentNameValue: Option[EnvironmentName]
    def platformArnValue: Option[PlatformArn]
    def requestIdValue: Option[RequestId]
    def severityValue
        : Option[io.github.vigoo.zioaws.elasticbeanstalk.model.EventSeverity]
    def startTimeValue: Option[TimeFilterStart]
    def endTimeValue: Option[TimeFilterEnd]
    def maxRecordsValue: Option[MaxRecords]
    def nextTokenValue: Option[Token]
    def applicationName: ZIO[Any, AwsError, ApplicationName] =
      AwsError.unwrapOptionField("applicationName", applicationNameValue)
    def versionLabel: ZIO[Any, AwsError, VersionLabel] =
      AwsError.unwrapOptionField("versionLabel", versionLabelValue)
    def templateName: ZIO[Any, AwsError, ConfigurationTemplateName] =
      AwsError.unwrapOptionField("templateName", templateNameValue)
    def environmentId: ZIO[Any, AwsError, EnvironmentId] =
      AwsError.unwrapOptionField("environmentId", environmentIdValue)
    def environmentName: ZIO[Any, AwsError, EnvironmentName] =
      AwsError.unwrapOptionField("environmentName", environmentNameValue)
    def platformArn: ZIO[Any, AwsError, PlatformArn] =
      AwsError.unwrapOptionField("platformArn", platformArnValue)
    def requestId: ZIO[Any, AwsError, RequestId] =
      AwsError.unwrapOptionField("requestId", requestIdValue)
    def severity: ZIO[
      Any,
      AwsError,
      io.github.vigoo.zioaws.elasticbeanstalk.model.EventSeverity
    ] = AwsError.unwrapOptionField("severity", severityValue)
    def startTime: ZIO[Any, AwsError, TimeFilterStart] =
      AwsError.unwrapOptionField("startTime", startTimeValue)
    def endTime: ZIO[Any, AwsError, TimeFilterEnd] =
      AwsError.unwrapOptionField("endTime", endTimeValue)
    def maxRecords: ZIO[Any, AwsError, MaxRecords] =
      AwsError.unwrapOptionField("maxRecords", maxRecordsValue)
    def nextToken: ZIO[Any, AwsError, Token] =
      AwsError.unwrapOptionField("nextToken", nextTokenValue)
  }
  private class Wrapper(
      impl: software.amazon.awssdk.services.elasticbeanstalk.model.DescribeEventsRequest
  ) extends io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest.ReadOnly {
    override def applicationNameValue: Option[ApplicationName] =
      scala.Option(impl.applicationName()).map(value => value: ApplicationName)
    override def versionLabelValue: Option[VersionLabel] =
      scala.Option(impl.versionLabel()).map(value => value: VersionLabel)
    override def templateNameValue: Option[ConfigurationTemplateName] = scala
      .Option(impl.templateName())
      .map(value => value: ConfigurationTemplateName)
    override def environmentIdValue: Option[EnvironmentId] =
      scala.Option(impl.environmentId()).map(value => value: EnvironmentId)
    override def environmentNameValue: Option[EnvironmentName] =
      scala.Option(impl.environmentName()).map(value => value: EnvironmentName)
    override def platformArnValue: Option[PlatformArn] =
      scala.Option(impl.platformArn()).map(value => value: PlatformArn)
    override def requestIdValue: Option[RequestId] =
      scala.Option(impl.requestId()).map(value => value: RequestId)
    override def severityValue
        : Option[io.github.vigoo.zioaws.elasticbeanstalk.model.EventSeverity] =
      scala
        .Option(impl.severity())
        .map(value =>
          io.github.vigoo.zioaws.elasticbeanstalk.model.EventSeverity
            .wrap(value)
        )
    override def startTimeValue: Option[TimeFilterStart] =
      scala.Option(impl.startTime()).map(value => value: TimeFilterStart)
    override def endTimeValue: Option[TimeFilterEnd] =
      scala.Option(impl.endTime()).map(value => value: TimeFilterEnd)
    override def maxRecordsValue: Option[MaxRecords] =
      scala.Option(impl.maxRecords()).map(value => value: MaxRecords)
    override def nextTokenValue: Option[Token] =
      scala.Option(impl.nextToken()).map(value => value: Token)
  }
  def wrap(
      impl: software.amazon.awssdk.services.elasticbeanstalk.model.DescribeEventsRequest
  ): io.github.vigoo.zioaws.elasticbeanstalk.model.DescribeEventsRequest.ReadOnly =
    new Wrapper(impl)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy