
zio.aws.qbusiness.model.CustomPluginConfiguration.scala Maven / Gradle / Ivy
package zio.aws.qbusiness.model
import zio.ZIO
import zio.aws.core.BuilderHelper
import zio.aws.qbusiness.model.primitives.PluginDescription
import scala.jdk.CollectionConverters._
final case class CustomPluginConfiguration(
description: PluginDescription,
apiSchemaType: zio.aws.qbusiness.model.APISchemaType,
apiSchema: zio.aws.qbusiness.model.APISchema
) {
def buildAwsValue()
: software.amazon.awssdk.services.qbusiness.model.CustomPluginConfiguration = {
import CustomPluginConfiguration.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.qbusiness.model.CustomPluginConfiguration
.builder()
.description(PluginDescription.unwrap(description): java.lang.String)
.apiSchemaType(apiSchemaType.unwrap)
.apiSchema(apiSchema.buildAwsValue())
.build()
}
def asReadOnly: zio.aws.qbusiness.model.CustomPluginConfiguration.ReadOnly =
zio.aws.qbusiness.model.CustomPluginConfiguration.wrap(buildAwsValue())
}
object CustomPluginConfiguration {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.qbusiness.model.CustomPluginConfiguration
] = BuilderHelper.apply
trait ReadOnly {
def asEditable: zio.aws.qbusiness.model.CustomPluginConfiguration =
zio.aws.qbusiness.model.CustomPluginConfiguration(
description,
apiSchemaType,
apiSchema.asEditable
)
def description: PluginDescription
def apiSchemaType: zio.aws.qbusiness.model.APISchemaType
def apiSchema: zio.aws.qbusiness.model.APISchema.ReadOnly
def getDescription: ZIO[Any, Nothing, PluginDescription] =
ZIO.succeed(description)
def getApiSchemaType
: ZIO[Any, Nothing, zio.aws.qbusiness.model.APISchemaType] =
ZIO.succeed(apiSchemaType)
def getApiSchema
: ZIO[Any, Nothing, zio.aws.qbusiness.model.APISchema.ReadOnly] =
ZIO.succeed(apiSchema)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.qbusiness.model.CustomPluginConfiguration
) extends zio.aws.qbusiness.model.CustomPluginConfiguration.ReadOnly {
override val description: PluginDescription =
zio.aws.qbusiness.model.primitives.PluginDescription(impl.description())
override val apiSchemaType: zio.aws.qbusiness.model.APISchemaType =
zio.aws.qbusiness.model.APISchemaType.wrap(impl.apiSchemaType())
override val apiSchema: zio.aws.qbusiness.model.APISchema.ReadOnly =
zio.aws.qbusiness.model.APISchema.wrap(impl.apiSchema())
}
def wrap(
impl: software.amazon.awssdk.services.qbusiness.model.CustomPluginConfiguration
): zio.aws.qbusiness.model.CustomPluginConfiguration.ReadOnly = new Wrapper(
impl
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy