
zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest.scala Maven / Gradle / Ivy
package zio.aws.qbusiness.model
import zio.ZIO
import zio.aws.core.{AwsError, BuilderHelper}
import zio.prelude.data.Optional
import zio.aws.qbusiness.model.primitives.{ClientToken, ApplicationId}
import scala.jdk.CollectionConverters._
final case class UpdateChatControlsConfigurationRequest(
applicationId: ApplicationId,
clientToken: Optional[ClientToken] = Optional.Absent,
responseScope: Optional[zio.aws.qbusiness.model.ResponseScope] =
Optional.Absent,
orchestrationConfiguration: Optional[
zio.aws.qbusiness.model.OrchestrationConfiguration
] = Optional.Absent,
blockedPhrasesConfigurationUpdate: Optional[
zio.aws.qbusiness.model.BlockedPhrasesConfigurationUpdate
] = Optional.Absent,
topicConfigurationsToCreateOrUpdate: Optional[
Iterable[zio.aws.qbusiness.model.TopicConfiguration]
] = Optional.Absent,
topicConfigurationsToDelete: Optional[
Iterable[zio.aws.qbusiness.model.TopicConfiguration]
] = Optional.Absent,
creatorModeConfiguration: Optional[
zio.aws.qbusiness.model.CreatorModeConfiguration
] = Optional.Absent
) {
def buildAwsValue()
: software.amazon.awssdk.services.qbusiness.model.UpdateChatControlsConfigurationRequest = {
import UpdateChatControlsConfigurationRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.qbusiness.model.UpdateChatControlsConfigurationRequest
.builder()
.applicationId(ApplicationId.unwrap(applicationId): java.lang.String)
.optionallyWith(
clientToken.map(value => ClientToken.unwrap(value): java.lang.String)
)(_.clientToken)
.optionallyWith(responseScope.map(value => value.unwrap))(_.responseScope)
.optionallyWith(
orchestrationConfiguration.map(value => value.buildAwsValue())
)(_.orchestrationConfiguration)
.optionallyWith(
blockedPhrasesConfigurationUpdate.map(value => value.buildAwsValue())
)(_.blockedPhrasesConfigurationUpdate)
.optionallyWith(
topicConfigurationsToCreateOrUpdate.map(value =>
value.map { item =>
item.buildAwsValue()
}.asJavaCollection
)
)(_.topicConfigurationsToCreateOrUpdate)
.optionallyWith(
topicConfigurationsToDelete.map(value =>
value.map { item =>
item.buildAwsValue()
}.asJavaCollection
)
)(_.topicConfigurationsToDelete)
.optionallyWith(
creatorModeConfiguration.map(value => value.buildAwsValue())
)(_.creatorModeConfiguration)
.build()
}
def asReadOnly
: zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest.ReadOnly =
zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest
.wrap(buildAwsValue())
}
object UpdateChatControlsConfigurationRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.qbusiness.model.UpdateChatControlsConfigurationRequest
] = BuilderHelper.apply
trait ReadOnly {
def asEditable
: zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest =
zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest(
applicationId,
clientToken.map(value => value),
responseScope.map(value => value),
orchestrationConfiguration.map(value => value.asEditable),
blockedPhrasesConfigurationUpdate.map(value => value.asEditable),
topicConfigurationsToCreateOrUpdate.map(value =>
value.map { item =>
item.asEditable
}
),
topicConfigurationsToDelete.map(value =>
value.map { item =>
item.asEditable
}
),
creatorModeConfiguration.map(value => value.asEditable)
)
def applicationId: ApplicationId
def clientToken: Optional[ClientToken]
def responseScope: Optional[zio.aws.qbusiness.model.ResponseScope]
def orchestrationConfiguration
: Optional[zio.aws.qbusiness.model.OrchestrationConfiguration.ReadOnly]
def blockedPhrasesConfigurationUpdate: Optional[
zio.aws.qbusiness.model.BlockedPhrasesConfigurationUpdate.ReadOnly
]
def topicConfigurationsToCreateOrUpdate
: Optional[List[zio.aws.qbusiness.model.TopicConfiguration.ReadOnly]]
def topicConfigurationsToDelete
: Optional[List[zio.aws.qbusiness.model.TopicConfiguration.ReadOnly]]
def creatorModeConfiguration
: Optional[zio.aws.qbusiness.model.CreatorModeConfiguration.ReadOnly]
def getApplicationId: ZIO[Any, Nothing, ApplicationId] =
ZIO.succeed(applicationId)
def getClientToken: ZIO[Any, AwsError, ClientToken] =
AwsError.unwrapOptionField("clientToken", clientToken)
def getResponseScope
: ZIO[Any, AwsError, zio.aws.qbusiness.model.ResponseScope] =
AwsError.unwrapOptionField("responseScope", responseScope)
def getOrchestrationConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.OrchestrationConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"orchestrationConfiguration",
orchestrationConfiguration
)
def getBlockedPhrasesConfigurationUpdate: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.BlockedPhrasesConfigurationUpdate.ReadOnly
] = AwsError.unwrapOptionField(
"blockedPhrasesConfigurationUpdate",
blockedPhrasesConfigurationUpdate
)
def getTopicConfigurationsToCreateOrUpdate: ZIO[Any, AwsError, List[
zio.aws.qbusiness.model.TopicConfiguration.ReadOnly
]] = AwsError.unwrapOptionField(
"topicConfigurationsToCreateOrUpdate",
topicConfigurationsToCreateOrUpdate
)
def getTopicConfigurationsToDelete: ZIO[Any, AwsError, List[
zio.aws.qbusiness.model.TopicConfiguration.ReadOnly
]] = AwsError.unwrapOptionField(
"topicConfigurationsToDelete",
topicConfigurationsToDelete
)
def getCreatorModeConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.CreatorModeConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"creatorModeConfiguration",
creatorModeConfiguration
)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.qbusiness.model.UpdateChatControlsConfigurationRequest
) extends zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest.ReadOnly {
override val applicationId: ApplicationId =
zio.aws.qbusiness.model.primitives.ApplicationId(impl.applicationId())
override val clientToken: Optional[ClientToken] = zio.aws.core.internal
.optionalFromNullable(impl.clientToken())
.map(value => zio.aws.qbusiness.model.primitives.ClientToken(value))
override val responseScope
: Optional[zio.aws.qbusiness.model.ResponseScope] =
zio.aws.core.internal
.optionalFromNullable(impl.responseScope())
.map(value => zio.aws.qbusiness.model.ResponseScope.wrap(value))
override val orchestrationConfiguration: Optional[
zio.aws.qbusiness.model.OrchestrationConfiguration.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.orchestrationConfiguration())
.map(value =>
zio.aws.qbusiness.model.OrchestrationConfiguration.wrap(value)
)
override val blockedPhrasesConfigurationUpdate: Optional[
zio.aws.qbusiness.model.BlockedPhrasesConfigurationUpdate.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.blockedPhrasesConfigurationUpdate())
.map(value =>
zio.aws.qbusiness.model.BlockedPhrasesConfigurationUpdate.wrap(value)
)
override val topicConfigurationsToCreateOrUpdate
: Optional[List[zio.aws.qbusiness.model.TopicConfiguration.ReadOnly]] =
zio.aws.core.internal
.optionalFromNullable(impl.topicConfigurationsToCreateOrUpdate())
.map(value =>
value.asScala.map { item =>
zio.aws.qbusiness.model.TopicConfiguration.wrap(item)
}.toList
)
override val topicConfigurationsToDelete
: Optional[List[zio.aws.qbusiness.model.TopicConfiguration.ReadOnly]] =
zio.aws.core.internal
.optionalFromNullable(impl.topicConfigurationsToDelete())
.map(value =>
value.asScala.map { item =>
zio.aws.qbusiness.model.TopicConfiguration.wrap(item)
}.toList
)
override val creatorModeConfiguration
: Optional[zio.aws.qbusiness.model.CreatorModeConfiguration.ReadOnly] =
zio.aws.core.internal
.optionalFromNullable(impl.creatorModeConfiguration())
.map(value =>
zio.aws.qbusiness.model.CreatorModeConfiguration.wrap(value)
)
}
def wrap(
impl: software.amazon.awssdk.services.qbusiness.model.UpdateChatControlsConfigurationRequest
): zio.aws.qbusiness.model.UpdateChatControlsConfigurationRequest.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy