
io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest.scala Maven / Gradle / Ivy
package io.github.vigoo.zioaws.swf.model
import zio.ZIO
import io.github.vigoo.zioaws.swf.model.primitives.DomainName
import io.github.vigoo.zioaws.core.{AwsError, BuilderHelper}
import scala.jdk.CollectionConverters._
final case class CountClosedWorkflowExecutionsRequest(
domain: DomainName,
startTimeFilter: Option[
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter
] = None,
closeTimeFilter: Option[
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter
] = None,
executionFilter: Option[
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter
] = None,
typeFilter: Option[io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter] =
None,
tagFilter: Option[io.github.vigoo.zioaws.swf.model.TagFilter] = None,
closeStatusFilter: Option[
io.github.vigoo.zioaws.swf.model.CloseStatusFilter
] = None
) {
def buildAwsValue()
: software.amazon.awssdk.services.swf.model.CountClosedWorkflowExecutionsRequest = {
import CountClosedWorkflowExecutionsRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.swf.model.CountClosedWorkflowExecutionsRequest
.builder()
.domain(domain: java.lang.String)
.optionallyWith(startTimeFilter.map(value => value.buildAwsValue()))(
_.startTimeFilter
)
.optionallyWith(closeTimeFilter.map(value => value.buildAwsValue()))(
_.closeTimeFilter
)
.optionallyWith(executionFilter.map(value => value.buildAwsValue()))(
_.executionFilter
)
.optionallyWith(typeFilter.map(value => value.buildAwsValue()))(
_.typeFilter
)
.optionallyWith(tagFilter.map(value => value.buildAwsValue()))(
_.tagFilter
)
.optionallyWith(closeStatusFilter.map(value => value.buildAwsValue()))(
_.closeStatusFilter
)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest.ReadOnly =
io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest
.wrap(buildAwsValue())
}
object CountClosedWorkflowExecutionsRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.swf.model.CountClosedWorkflowExecutionsRequest
] = BuilderHelper.apply
trait ReadOnly {
def editable
: io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest =
io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest(
domainValue,
startTimeFilterValue.map(value => value.editable),
closeTimeFilterValue.map(value => value.editable),
executionFilterValue.map(value => value.editable),
typeFilterValue.map(value => value.editable),
tagFilterValue.map(value => value.editable),
closeStatusFilterValue.map(value => value.editable)
)
def domainValue: DomainName
def startTimeFilterValue
: Option[io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly]
def closeTimeFilterValue
: Option[io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly]
def executionFilterValue: Option[
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter.ReadOnly
]
def typeFilterValue
: Option[io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter.ReadOnly]
def tagFilterValue
: Option[io.github.vigoo.zioaws.swf.model.TagFilter.ReadOnly]
def closeStatusFilterValue
: Option[io.github.vigoo.zioaws.swf.model.CloseStatusFilter.ReadOnly]
def domain: ZIO[Any, Nothing, DomainName] = ZIO.succeed(domainValue)
def startTimeFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly
] = AwsError.unwrapOptionField("startTimeFilter", startTimeFilterValue)
def closeTimeFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly
] = AwsError.unwrapOptionField("closeTimeFilter", closeTimeFilterValue)
def executionFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter.ReadOnly
] = AwsError.unwrapOptionField("executionFilter", executionFilterValue)
def typeFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter.ReadOnly
] = AwsError.unwrapOptionField("typeFilter", typeFilterValue)
def tagFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.TagFilter.ReadOnly
] = AwsError.unwrapOptionField("tagFilter", tagFilterValue)
def closeStatusFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.CloseStatusFilter.ReadOnly
] = AwsError.unwrapOptionField("closeStatusFilter", closeStatusFilterValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.swf.model.CountClosedWorkflowExecutionsRequest
) extends io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest.ReadOnly {
override def domainValue: DomainName = impl.domain(): DomainName
override def startTimeFilterValue: Option[
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly
] = scala
.Option(impl.startTimeFilter())
.map(value =>
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.wrap(value)
)
override def closeTimeFilterValue: Option[
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly
] = scala
.Option(impl.closeTimeFilter())
.map(value =>
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.wrap(value)
)
override def executionFilterValue: Option[
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter.ReadOnly
] = scala
.Option(impl.executionFilter())
.map(value =>
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter.wrap(value)
)
override def typeFilterValue
: Option[io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter.ReadOnly] =
scala
.Option(impl.typeFilter())
.map(value =>
io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter.wrap(value)
)
override def tagFilterValue
: Option[io.github.vigoo.zioaws.swf.model.TagFilter.ReadOnly] = scala
.Option(impl.tagFilter())
.map(value => io.github.vigoo.zioaws.swf.model.TagFilter.wrap(value))
override def closeStatusFilterValue
: Option[io.github.vigoo.zioaws.swf.model.CloseStatusFilter.ReadOnly] =
scala
.Option(impl.closeStatusFilter())
.map(value =>
io.github.vigoo.zioaws.swf.model.CloseStatusFilter.wrap(value)
)
}
def wrap(
impl: software.amazon.awssdk.services.swf.model.CountClosedWorkflowExecutionsRequest
): io.github.vigoo.zioaws.swf.model.CountClosedWorkflowExecutionsRequest.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy