
io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest.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 CountOpenWorkflowExecutionsRequest(
domain: DomainName,
startTimeFilter: io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter,
typeFilter: Option[io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter] =
None,
tagFilter: Option[io.github.vigoo.zioaws.swf.model.TagFilter] = None,
executionFilter: Option[
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter
] = None
) {
def buildAwsValue()
: software.amazon.awssdk.services.swf.model.CountOpenWorkflowExecutionsRequest = {
import CountOpenWorkflowExecutionsRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.swf.model.CountOpenWorkflowExecutionsRequest
.builder()
.domain(domain: java.lang.String)
.startTimeFilter(startTimeFilter.buildAwsValue())
.optionallyWith(typeFilter.map(value => value.buildAwsValue()))(
_.typeFilter
)
.optionallyWith(tagFilter.map(value => value.buildAwsValue()))(
_.tagFilter
)
.optionallyWith(executionFilter.map(value => value.buildAwsValue()))(
_.executionFilter
)
.build()
}
def asReadOnly
: io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest.ReadOnly =
io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest
.wrap(buildAwsValue())
}
object CountOpenWorkflowExecutionsRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.swf.model.CountOpenWorkflowExecutionsRequest
] = BuilderHelper.apply
trait ReadOnly {
def editable
: io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest =
io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest(
domainValue,
startTimeFilterValue.editable,
typeFilterValue.map(value => value.editable),
tagFilterValue.map(value => value.editable),
executionFilterValue.map(value => value.editable)
)
def domainValue: DomainName
def startTimeFilterValue
: io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly
def typeFilterValue
: Option[io.github.vigoo.zioaws.swf.model.WorkflowTypeFilter.ReadOnly]
def tagFilterValue
: Option[io.github.vigoo.zioaws.swf.model.TagFilter.ReadOnly]
def executionFilterValue: Option[
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter.ReadOnly
]
def domain: ZIO[Any, Nothing, DomainName] = ZIO.succeed(domainValue)
def startTimeFilter: ZIO[
Any,
Nothing,
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly
] = ZIO.succeed(startTimeFilterValue)
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 executionFilter: ZIO[
Any,
AwsError,
io.github.vigoo.zioaws.swf.model.WorkflowExecutionFilter.ReadOnly
] = AwsError.unwrapOptionField("executionFilter", executionFilterValue)
}
private class Wrapper(
impl: software.amazon.awssdk.services.swf.model.CountOpenWorkflowExecutionsRequest
) extends io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest.ReadOnly {
override def domainValue: DomainName = impl.domain(): DomainName
override def startTimeFilterValue
: io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter.ReadOnly =
io.github.vigoo.zioaws.swf.model.ExecutionTimeFilter
.wrap(impl.startTimeFilter())
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 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)
)
}
def wrap(
impl: software.amazon.awssdk.services.swf.model.CountOpenWorkflowExecutionsRequest
): io.github.vigoo.zioaws.swf.model.CountOpenWorkflowExecutionsRequest.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy