
zio.aws.qbusiness.model.UpdateApplicationRequest.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.{
InstanceArn,
RoleArn,
ApplicationName,
Description,
ApplicationId
}
import scala.jdk.CollectionConverters._
final case class UpdateApplicationRequest(
applicationId: ApplicationId,
identityCenterInstanceArn: Optional[InstanceArn] = Optional.Absent,
displayName: Optional[ApplicationName] = Optional.Absent,
description: Optional[Description] = Optional.Absent,
roleArn: Optional[RoleArn] = Optional.Absent,
attachmentsConfiguration: Optional[
zio.aws.qbusiness.model.AttachmentsConfiguration
] = Optional.Absent,
qAppsConfiguration: Optional[zio.aws.qbusiness.model.QAppsConfiguration] =
Optional.Absent,
personalizationConfiguration: Optional[
zio.aws.qbusiness.model.PersonalizationConfiguration
] = Optional.Absent,
autoSubscriptionConfiguration: Optional[
zio.aws.qbusiness.model.AutoSubscriptionConfiguration
] = Optional.Absent
) {
def buildAwsValue()
: software.amazon.awssdk.services.qbusiness.model.UpdateApplicationRequest = {
import UpdateApplicationRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.qbusiness.model.UpdateApplicationRequest
.builder()
.applicationId(ApplicationId.unwrap(applicationId): java.lang.String)
.optionallyWith(
identityCenterInstanceArn.map(value =>
InstanceArn.unwrap(value): java.lang.String
)
)(_.identityCenterInstanceArn)
.optionallyWith(
displayName.map(value =>
ApplicationName.unwrap(value): java.lang.String
)
)(_.displayName)
.optionallyWith(
description.map(value => Description.unwrap(value): java.lang.String)
)(_.description)
.optionallyWith(
roleArn.map(value => RoleArn.unwrap(value): java.lang.String)
)(_.roleArn)
.optionallyWith(
attachmentsConfiguration.map(value => value.buildAwsValue())
)(_.attachmentsConfiguration)
.optionallyWith(qAppsConfiguration.map(value => value.buildAwsValue()))(
_.qAppsConfiguration
)
.optionallyWith(
personalizationConfiguration.map(value => value.buildAwsValue())
)(_.personalizationConfiguration)
.optionallyWith(
autoSubscriptionConfiguration.map(value => value.buildAwsValue())
)(_.autoSubscriptionConfiguration)
.build()
}
def asReadOnly: zio.aws.qbusiness.model.UpdateApplicationRequest.ReadOnly =
zio.aws.qbusiness.model.UpdateApplicationRequest.wrap(buildAwsValue())
}
object UpdateApplicationRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.qbusiness.model.UpdateApplicationRequest
] = BuilderHelper.apply
trait ReadOnly {
def asEditable: zio.aws.qbusiness.model.UpdateApplicationRequest =
zio.aws.qbusiness.model.UpdateApplicationRequest(
applicationId,
identityCenterInstanceArn.map(value => value),
displayName.map(value => value),
description.map(value => value),
roleArn.map(value => value),
attachmentsConfiguration.map(value => value.asEditable),
qAppsConfiguration.map(value => value.asEditable),
personalizationConfiguration.map(value => value.asEditable),
autoSubscriptionConfiguration.map(value => value.asEditable)
)
def applicationId: ApplicationId
def identityCenterInstanceArn: Optional[InstanceArn]
def displayName: Optional[ApplicationName]
def description: Optional[Description]
def roleArn: Optional[RoleArn]
def attachmentsConfiguration
: Optional[zio.aws.qbusiness.model.AttachmentsConfiguration.ReadOnly]
def qAppsConfiguration
: Optional[zio.aws.qbusiness.model.QAppsConfiguration.ReadOnly]
def personalizationConfiguration: Optional[
zio.aws.qbusiness.model.PersonalizationConfiguration.ReadOnly
]
def autoSubscriptionConfiguration: Optional[
zio.aws.qbusiness.model.AutoSubscriptionConfiguration.ReadOnly
]
def getApplicationId: ZIO[Any, Nothing, ApplicationId] =
ZIO.succeed(applicationId)
def getIdentityCenterInstanceArn: ZIO[Any, AwsError, InstanceArn] = AwsError
.unwrapOptionField("identityCenterInstanceArn", identityCenterInstanceArn)
def getDisplayName: ZIO[Any, AwsError, ApplicationName] =
AwsError.unwrapOptionField("displayName", displayName)
def getDescription: ZIO[Any, AwsError, Description] =
AwsError.unwrapOptionField("description", description)
def getRoleArn: ZIO[Any, AwsError, RoleArn] =
AwsError.unwrapOptionField("roleArn", roleArn)
def getAttachmentsConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.AttachmentsConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"attachmentsConfiguration",
attachmentsConfiguration
)
def getQAppsConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.QAppsConfiguration.ReadOnly
] = AwsError.unwrapOptionField("qAppsConfiguration", qAppsConfiguration)
def getPersonalizationConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.PersonalizationConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"personalizationConfiguration",
personalizationConfiguration
)
def getAutoSubscriptionConfiguration: ZIO[
Any,
AwsError,
zio.aws.qbusiness.model.AutoSubscriptionConfiguration.ReadOnly
] = AwsError.unwrapOptionField(
"autoSubscriptionConfiguration",
autoSubscriptionConfiguration
)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.qbusiness.model.UpdateApplicationRequest
) extends zio.aws.qbusiness.model.UpdateApplicationRequest.ReadOnly {
override val applicationId: ApplicationId =
zio.aws.qbusiness.model.primitives.ApplicationId(impl.applicationId())
override val identityCenterInstanceArn: Optional[InstanceArn] =
zio.aws.core.internal
.optionalFromNullable(impl.identityCenterInstanceArn())
.map(value => zio.aws.qbusiness.model.primitives.InstanceArn(value))
override val displayName: Optional[ApplicationName] = zio.aws.core.internal
.optionalFromNullable(impl.displayName())
.map(value => zio.aws.qbusiness.model.primitives.ApplicationName(value))
override val description: Optional[Description] = zio.aws.core.internal
.optionalFromNullable(impl.description())
.map(value => zio.aws.qbusiness.model.primitives.Description(value))
override val roleArn: Optional[RoleArn] = zio.aws.core.internal
.optionalFromNullable(impl.roleArn())
.map(value => zio.aws.qbusiness.model.primitives.RoleArn(value))
override val attachmentsConfiguration
: Optional[zio.aws.qbusiness.model.AttachmentsConfiguration.ReadOnly] =
zio.aws.core.internal
.optionalFromNullable(impl.attachmentsConfiguration())
.map(value =>
zio.aws.qbusiness.model.AttachmentsConfiguration.wrap(value)
)
override val qAppsConfiguration
: Optional[zio.aws.qbusiness.model.QAppsConfiguration.ReadOnly] =
zio.aws.core.internal
.optionalFromNullable(impl.qAppsConfiguration())
.map(value => zio.aws.qbusiness.model.QAppsConfiguration.wrap(value))
override val personalizationConfiguration: Optional[
zio.aws.qbusiness.model.PersonalizationConfiguration.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.personalizationConfiguration())
.map(value =>
zio.aws.qbusiness.model.PersonalizationConfiguration.wrap(value)
)
override val autoSubscriptionConfiguration: Optional[
zio.aws.qbusiness.model.AutoSubscriptionConfiguration.ReadOnly
] = zio.aws.core.internal
.optionalFromNullable(impl.autoSubscriptionConfiguration())
.map(value =>
zio.aws.qbusiness.model.AutoSubscriptionConfiguration.wrap(value)
)
}
def wrap(
impl: software.amazon.awssdk.services.qbusiness.model.UpdateApplicationRequest
): zio.aws.qbusiness.model.UpdateApplicationRequest.ReadOnly = new Wrapper(
impl
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy