
zio.aws.qbusiness.model.Retriever.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.{
RetrieverName,
RetrieverId,
ApplicationId
}
import scala.jdk.CollectionConverters._
final case class Retriever(
applicationId: Optional[ApplicationId] = Optional.Absent,
retrieverId: Optional[RetrieverId] = Optional.Absent,
`type`: Optional[zio.aws.qbusiness.model.RetrieverType] = Optional.Absent,
status: Optional[zio.aws.qbusiness.model.RetrieverStatus] = Optional.Absent,
displayName: Optional[RetrieverName] = Optional.Absent
) {
def buildAwsValue()
: software.amazon.awssdk.services.qbusiness.model.Retriever = {
import Retriever.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.qbusiness.model.Retriever
.builder()
.optionallyWith(
applicationId.map(value =>
ApplicationId.unwrap(value): java.lang.String
)
)(_.applicationId)
.optionallyWith(
retrieverId.map(value => RetrieverId.unwrap(value): java.lang.String)
)(_.retrieverId)
.optionallyWith(`type`.map(value => value.unwrap))(_.`type`)
.optionallyWith(status.map(value => value.unwrap))(_.status)
.optionallyWith(
displayName.map(value => RetrieverName.unwrap(value): java.lang.String)
)(_.displayName)
.build()
}
def asReadOnly: zio.aws.qbusiness.model.Retriever.ReadOnly =
zio.aws.qbusiness.model.Retriever.wrap(buildAwsValue())
}
object Retriever {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.qbusiness.model.Retriever
] = BuilderHelper.apply
trait ReadOnly {
def asEditable: zio.aws.qbusiness.model.Retriever =
zio.aws.qbusiness.model.Retriever(
applicationId.map(value => value),
retrieverId.map(value => value),
`type`.map(value => value),
status.map(value => value),
displayName.map(value => value)
)
def applicationId: Optional[ApplicationId]
def retrieverId: Optional[RetrieverId]
def `type`: Optional[zio.aws.qbusiness.model.RetrieverType]
def status: Optional[zio.aws.qbusiness.model.RetrieverStatus]
def displayName: Optional[RetrieverName]
def getApplicationId: ZIO[Any, AwsError, ApplicationId] =
AwsError.unwrapOptionField("applicationId", applicationId)
def getRetrieverId: ZIO[Any, AwsError, RetrieverId] =
AwsError.unwrapOptionField("retrieverId", retrieverId)
def getType: ZIO[Any, AwsError, zio.aws.qbusiness.model.RetrieverType] =
AwsError.unwrapOptionField("type", `type`)
def getStatus: ZIO[Any, AwsError, zio.aws.qbusiness.model.RetrieverStatus] =
AwsError.unwrapOptionField("status", status)
def getDisplayName: ZIO[Any, AwsError, RetrieverName] =
AwsError.unwrapOptionField("displayName", displayName)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.qbusiness.model.Retriever
) extends zio.aws.qbusiness.model.Retriever.ReadOnly {
override val applicationId: Optional[ApplicationId] = zio.aws.core.internal
.optionalFromNullable(impl.applicationId())
.map(value => zio.aws.qbusiness.model.primitives.ApplicationId(value))
override val retrieverId: Optional[RetrieverId] = zio.aws.core.internal
.optionalFromNullable(impl.retrieverId())
.map(value => zio.aws.qbusiness.model.primitives.RetrieverId(value))
override val `type`: Optional[zio.aws.qbusiness.model.RetrieverType] =
zio.aws.core.internal
.optionalFromNullable(impl.`type`())
.map(value => zio.aws.qbusiness.model.RetrieverType.wrap(value))
override val status: Optional[zio.aws.qbusiness.model.RetrieverStatus] =
zio.aws.core.internal
.optionalFromNullable(impl.status())
.map(value => zio.aws.qbusiness.model.RetrieverStatus.wrap(value))
override val displayName: Optional[RetrieverName] = zio.aws.core.internal
.optionalFromNullable(impl.displayName())
.map(value => zio.aws.qbusiness.model.primitives.RetrieverName(value))
}
def wrap(
impl: software.amazon.awssdk.services.qbusiness.model.Retriever
): zio.aws.qbusiness.model.Retriever.ReadOnly = new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy