
zio.aws.qbusiness.model.CreateWebExperienceRequest.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.{
RoleArn,
WebExperienceSubtitle,
WebExperienceTitle,
Origin,
ClientToken,
ApplicationId,
WebExperienceWelcomeMessage
}
import scala.jdk.CollectionConverters._
final case class CreateWebExperienceRequest(
applicationId: ApplicationId,
title: Optional[WebExperienceTitle] = Optional.Absent,
subtitle: Optional[WebExperienceSubtitle] = Optional.Absent,
welcomeMessage: Optional[WebExperienceWelcomeMessage] = Optional.Absent,
samplePromptsControlMode: Optional[
zio.aws.qbusiness.model.WebExperienceSamplePromptsControlMode
] = Optional.Absent,
origins: Optional[Iterable[Origin]] = Optional.Absent,
roleArn: Optional[RoleArn] = Optional.Absent,
tags: Optional[Iterable[zio.aws.qbusiness.model.Tag]] = Optional.Absent,
clientToken: Optional[ClientToken] = Optional.Absent,
identityProviderConfiguration: Optional[
zio.aws.qbusiness.model.IdentityProviderConfiguration
] = Optional.Absent,
browserExtensionConfiguration: Optional[
zio.aws.qbusiness.model.BrowserExtensionConfiguration
] = Optional.Absent,
customizationConfiguration: Optional[
zio.aws.qbusiness.model.CustomizationConfiguration
] = Optional.Absent
) {
def buildAwsValue()
: software.amazon.awssdk.services.qbusiness.model.CreateWebExperienceRequest = {
import CreateWebExperienceRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.qbusiness.model.CreateWebExperienceRequest
.builder()
.applicationId(ApplicationId.unwrap(applicationId): java.lang.String)
.optionallyWith(
title.map(value => WebExperienceTitle.unwrap(value): java.lang.String)
)(_.title)
.optionallyWith(
subtitle.map(value =>
WebExperienceSubtitle.unwrap(value): java.lang.String
)
)(_.subtitle)
.optionallyWith(
welcomeMessage.map(value =>
WebExperienceWelcomeMessage.unwrap(value): java.lang.String
)
)(_.welcomeMessage)
.optionallyWith(samplePromptsControlMode.map(value => value.unwrap))(
_.samplePromptsControlMode
)
.optionallyWith(
origins.map(value =>
value.map { item =>
Origin.unwrap(item): java.lang.String
}.asJavaCollection
)
)(_.origins)
.optionallyWith(
roleArn.map(value => RoleArn.unwrap(value): java.lang.String)
)(_.roleArn)
.optionallyWith(
tags.map(value =>
value.map { item =>
item.buildAwsValue()
}.asJavaCollection
)
)(_.tags)
.optionallyWith(
clientToken.map(value => ClientToken.unwrap(value): java.lang.String)
)(_.clientToken)
.optionallyWith(
identityProviderConfiguration.map(value => value.buildAwsValue())
)(_.identityProviderConfiguration)
.optionallyWith(
browserExtensionConfiguration.map(value => value.buildAwsValue())
)(_.browserExtensionConfiguration)
.optionallyWith(
customizationConfiguration.map(value => value.buildAwsValue())
)(_.customizationConfiguration)
.build()
}
def asReadOnly: zio.aws.qbusiness.model.CreateWebExperienceRequest.ReadOnly =
zio.aws.qbusiness.model.CreateWebExperienceRequest.wrap(buildAwsValue())
}
object CreateWebExperienceRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.qbusiness.model.CreateWebExperienceRequest
] = BuilderHelper.apply
trait ReadOnly {
def asEditable: zio.aws.qbusiness.model.CreateWebExperienceRequest =
zio.aws.qbusiness.model.CreateWebExperienceRequest(
applicationId,
title.map(value => value),
subtitle.map(value => value),
welcomeMessage.map(value => value),
samplePromptsControlMode.map(value => value),
origins.map(value => value),
roleArn.map(value => value),
tags.map(value =>
value.map { item =>
item.asEditable
}
),
clientToken.map(value => value),
identityProviderConfiguration.map(value => value.asEditable),
browserExtensionConfiguration.map(value => value.asEditable),
customizationConfiguration.map(value => value.asEditable)
)
def applicationId: ApplicationId
def title: Optional[WebExperienceTitle]
def subtitle: Optional[WebExperienceSubtitle]
def welcomeMessage: Optional[WebExperienceWelcomeMessage]
def samplePromptsControlMode: Optional[
zio.aws.qbusiness.model.WebExperienceSamplePromptsControlMode
]
def origins: Optional[List[Origin]]
def roleArn: Optional[RoleArn]
def tags: Optional[List[zio.aws.qbusiness.model.Tag.ReadOnly]]
def clientToken: Optional[ClientToken]
def identityProviderConfiguration: Optional[
zio.aws.qbusiness.model.IdentityProviderConfiguration.ReadOnly
]
def browserExtensionConfiguration: Optional[
zio.aws.qbusiness.model.BrowserExtensionConfiguration.ReadOnly
]
def customizationConfiguration
: Optional[zio.aws.qbusiness.model.CustomizationConfiguration.ReadOnly]
def getApplicationId: ZIO[Any, Nothing, ApplicationId] =
ZIO.succeed(applicationId)
def getTitle: ZIO[Any, AwsError, WebExperienceTitle] =
AwsError.unwrapOptionField("title", title)
def getSubtitle: ZIO[Any, AwsError, WebExperienceSubtitle] =
AwsError.unwrapOptionField("subtitle", subtitle)
def getWelcomeMessage: ZIO[Any, AwsError, WebExperienceWelcomeMessage] =
AwsError.unwrapOptionField("welcomeMessage", welcomeMessage)
def getSamplePromptsControlMode: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.WebExperienceSamplePromptsControlMode
] = AwsError.unwrapOptionField(
"samplePromptsControlMode",
samplePromptsControlMode
)
def getOrigins: ZIO[Any, AwsError, List[Origin]] =
AwsError.unwrapOptionField("origins", origins)
def getRoleArn: ZIO[Any, AwsError, RoleArn] =
AwsError.unwrapOptionField("roleArn", roleArn)
def getTags
: ZIO[Any, AwsError, List[zio.aws.qbusiness.model.Tag.ReadOnly]] =
AwsError.unwrapOptionField("tags", tags)
def getClientToken: ZIO[Any, AwsError, ClientToken] =
AwsError.unwrapOptionField("clientToken", clientToken)
def getIdentityProviderConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.IdentityProviderConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"identityProviderConfiguration",
identityProviderConfiguration
)
def getBrowserExtensionConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.BrowserExtensionConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"browserExtensionConfiguration",
browserExtensionConfiguration
)
def getCustomizationConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.CustomizationConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"customizationConfiguration",
customizationConfiguration
)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.qbusiness.model.CreateWebExperienceRequest
) extends zio.aws.qbusiness.model.CreateWebExperienceRequest.ReadOnly {
override val applicationId: ApplicationId =
zio.aws.qbusiness.model.primitives.ApplicationId(impl.applicationId())
override val title: Optional[WebExperienceTitle] = zio.aws.core.internal
.optionalFromNullable(impl.title())
.map(value =>
zio.aws.qbusiness.model.primitives.WebExperienceTitle(value)
)
override val subtitle: Optional[WebExperienceSubtitle] =
zio.aws.core.internal
.optionalFromNullable(impl.subtitle())
.map(value =>
zio.aws.qbusiness.model.primitives.WebExperienceSubtitle(value)
)
override val welcomeMessage: Optional[WebExperienceWelcomeMessage] =
zio.aws.core.internal
.optionalFromNullable(impl.welcomeMessage())
.map(value =>
zio.aws.qbusiness.model.primitives.WebExperienceWelcomeMessage(value)
)
override val samplePromptsControlMode: Optional[
zio.aws.qbusiness.model.WebExperienceSamplePromptsControlMode
] = zio.aws.core.internal
.optionalFromNullable(impl.samplePromptsControlMode())
.map(value =>
zio.aws.qbusiness.model.WebExperienceSamplePromptsControlMode
.wrap(value)
)
override val origins: Optional[List[Origin]] = zio.aws.core.internal
.optionalFromNullable(impl.origins())
.map(value =>
value.asScala.map { item =>
zio.aws.qbusiness.model.primitives.Origin(item)
}.toList
)
override val roleArn: Optional[RoleArn] = zio.aws.core.internal
.optionalFromNullable(impl.roleArn())
.map(value => zio.aws.qbusiness.model.primitives.RoleArn(value))
override val tags: Optional[List[zio.aws.qbusiness.model.Tag.ReadOnly]] =
zio.aws.core.internal
.optionalFromNullable(impl.tags())
.map(value =>
value.asScala.map { item =>
zio.aws.qbusiness.model.Tag.wrap(item)
}.toList
)
override val clientToken: Optional[ClientToken] = zio.aws.core.internal
.optionalFromNullable(impl.clientToken())
.map(value => zio.aws.qbusiness.model.primitives.ClientToken(value))
override val identityProviderConfiguration: Optional[
zio.aws.qbusiness.model.IdentityProviderConfiguration.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.identityProviderConfiguration())
.map(value =>
zio.aws.qbusiness.model.IdentityProviderConfiguration.wrap(value)
)
override val browserExtensionConfiguration: Optional[
zio.aws.qbusiness.model.BrowserExtensionConfiguration.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.browserExtensionConfiguration())
.map(value =>
zio.aws.qbusiness.model.BrowserExtensionConfiguration.wrap(value)
)
override val customizationConfiguration: Optional[
zio.aws.qbusiness.model.CustomizationConfiguration.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.customizationConfiguration())
.map(value =>
zio.aws.qbusiness.model.CustomizationConfiguration.wrap(value)
)
}
def wrap(
impl: software.amazon.awssdk.services.qbusiness.model.CreateWebExperienceRequest
): zio.aws.qbusiness.model.CreateWebExperienceRequest.ReadOnly = new Wrapper(
impl
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy