
zio.aws.transcribe.model.StartMedicalScribeJobRequest.scala Maven / Gradle / Ivy
package zio.aws.transcribe.model
import zio.ZIO
import zio.aws.transcribe.model.primitives.{
DataAccessRoleArn,
OutputBucketName,
NonEmptyString,
TranscriptionJobName,
KMSKeyId
}
import zio.aws.core.{AwsError, BuilderHelper}
import zio.prelude.data.Optional
import scala.jdk.CollectionConverters._
final case class StartMedicalScribeJobRequest(
medicalScribeJobName: TranscriptionJobName,
media: zio.aws.transcribe.model.Media,
outputBucketName: OutputBucketName,
outputEncryptionKMSKeyId: Optional[KMSKeyId] = Optional.Absent,
kmsEncryptionContext: Optional[Map[NonEmptyString, NonEmptyString]] =
Optional.Absent,
dataAccessRoleArn: DataAccessRoleArn,
settings: zio.aws.transcribe.model.MedicalScribeSettings,
channelDefinitions: Optional[
Iterable[zio.aws.transcribe.model.MedicalScribeChannelDefinition]
] = Optional.Absent,
tags: Optional[Iterable[zio.aws.transcribe.model.Tag]] = Optional.Absent
) {
def buildAwsValue()
: software.amazon.awssdk.services.transcribe.model.StartMedicalScribeJobRequest = {
import StartMedicalScribeJobRequest.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.transcribe.model.StartMedicalScribeJobRequest
.builder()
.medicalScribeJobName(
TranscriptionJobName.unwrap(medicalScribeJobName): java.lang.String
)
.media(media.buildAwsValue())
.outputBucketName(
OutputBucketName.unwrap(outputBucketName): java.lang.String
)
.optionallyWith(
outputEncryptionKMSKeyId.map(value =>
KMSKeyId.unwrap(value): java.lang.String
)
)(_.outputEncryptionKMSKeyId)
.optionallyWith(
kmsEncryptionContext.map(value =>
value
.map({ case (key, value) =>
(NonEmptyString.unwrap(key): java.lang.String) -> (NonEmptyString
.unwrap(value): java.lang.String)
})
.asJava
)
)(_.kmsEncryptionContext)
.dataAccessRoleArn(
DataAccessRoleArn.unwrap(dataAccessRoleArn): java.lang.String
)
.settings(settings.buildAwsValue())
.optionallyWith(
channelDefinitions.map(value =>
value.map { item =>
item.buildAwsValue()
}.asJavaCollection
)
)(_.channelDefinitions)
.optionallyWith(
tags.map(value =>
value.map { item =>
item.buildAwsValue()
}.asJavaCollection
)
)(_.tags)
.build()
}
def asReadOnly
: zio.aws.transcribe.model.StartMedicalScribeJobRequest.ReadOnly =
zio.aws.transcribe.model.StartMedicalScribeJobRequest.wrap(buildAwsValue())
}
object StartMedicalScribeJobRequest {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.transcribe.model.StartMedicalScribeJobRequest
] = BuilderHelper.apply
trait ReadOnly {
def asEditable: zio.aws.transcribe.model.StartMedicalScribeJobRequest =
zio.aws.transcribe.model.StartMedicalScribeJobRequest(
medicalScribeJobName,
media.asEditable,
outputBucketName,
outputEncryptionKMSKeyId.map(value => value),
kmsEncryptionContext.map(value => value),
dataAccessRoleArn,
settings.asEditable,
channelDefinitions.map(value =>
value.map { item =>
item.asEditable
}
),
tags.map(value =>
value.map { item =>
item.asEditable
}
)
)
def medicalScribeJobName: TranscriptionJobName
def media: zio.aws.transcribe.model.Media.ReadOnly
def outputBucketName: OutputBucketName
def outputEncryptionKMSKeyId: Optional[KMSKeyId]
def kmsEncryptionContext: Optional[Map[NonEmptyString, NonEmptyString]]
def dataAccessRoleArn: DataAccessRoleArn
def settings: zio.aws.transcribe.model.MedicalScribeSettings.ReadOnly
def channelDefinitions: Optional[
List[zio.aws.transcribe.model.MedicalScribeChannelDefinition.ReadOnly]
]
def tags: Optional[List[zio.aws.transcribe.model.Tag.ReadOnly]]
def getMedicalScribeJobName: ZIO[Any, Nothing, TranscriptionJobName] =
ZIO.succeed(medicalScribeJobName)
def getMedia: ZIO[Any, Nothing, zio.aws.transcribe.model.Media.ReadOnly] =
ZIO.succeed(media)
def getOutputBucketName: ZIO[Any, Nothing, OutputBucketName] =
ZIO.succeed(outputBucketName)
def getOutputEncryptionKMSKeyId: ZIO[Any, AwsError, KMSKeyId] = AwsError
.unwrapOptionField("outputEncryptionKMSKeyId", outputEncryptionKMSKeyId)
def getKmsEncryptionContext
: ZIO[Any, AwsError, Map[NonEmptyString, NonEmptyString]] =
AwsError.unwrapOptionField("kmsEncryptionContext", kmsEncryptionContext)
def getDataAccessRoleArn: ZIO[Any, Nothing, DataAccessRoleArn] =
ZIO.succeed(dataAccessRoleArn)
def getSettings: ZIO[
Any,
Nothing,
zio.aws.transcribe.model.MedicalScribeSettings.ReadOnly
] = ZIO.succeed(settings)
def getChannelDefinitions: ZIO[Any, AwsError, List[
zio.aws.transcribe.model.MedicalScribeChannelDefinition.ReadOnly
]] = AwsError.unwrapOptionField("channelDefinitions", channelDefinitions)
def getTags
: ZIO[Any, AwsError, List[zio.aws.transcribe.model.Tag.ReadOnly]] =
AwsError.unwrapOptionField("tags", tags)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.transcribe.model.StartMedicalScribeJobRequest
) extends zio.aws.transcribe.model.StartMedicalScribeJobRequest.ReadOnly {
override val medicalScribeJobName: TranscriptionJobName =
zio.aws.transcribe.model.primitives
.TranscriptionJobName(impl.medicalScribeJobName())
override val media: zio.aws.transcribe.model.Media.ReadOnly =
zio.aws.transcribe.model.Media.wrap(impl.media())
override val outputBucketName: OutputBucketName =
zio.aws.transcribe.model.primitives
.OutputBucketName(impl.outputBucketName())
override val outputEncryptionKMSKeyId: Optional[KMSKeyId] =
zio.aws.core.internal
.optionalFromNullable(impl.outputEncryptionKMSKeyId())
.map(value => zio.aws.transcribe.model.primitives.KMSKeyId(value))
override val kmsEncryptionContext
: Optional[Map[NonEmptyString, NonEmptyString]] = zio.aws.core.internal
.optionalFromNullable(impl.kmsEncryptionContext())
.map(value =>
value.asScala
.map({ case (key, value) =>
zio.aws.transcribe.model.primitives.NonEmptyString(
key
) -> zio.aws.transcribe.model.primitives.NonEmptyString(value)
})
.toMap
)
override val dataAccessRoleArn: DataAccessRoleArn =
zio.aws.transcribe.model.primitives
.DataAccessRoleArn(impl.dataAccessRoleArn())
override val settings
: zio.aws.transcribe.model.MedicalScribeSettings.ReadOnly =
zio.aws.transcribe.model.MedicalScribeSettings.wrap(impl.settings())
override val channelDefinitions: Optional[
List[zio.aws.transcribe.model.MedicalScribeChannelDefinition.ReadOnly]
] = zio.aws.core.internal
.optionalFromNullable(impl.channelDefinitions())
.map(value =>
value.asScala.map { item =>
zio.aws.transcribe.model.MedicalScribeChannelDefinition.wrap(item)
}.toList
)
override val tags: Optional[List[zio.aws.transcribe.model.Tag.ReadOnly]] =
zio.aws.core.internal
.optionalFromNullable(impl.tags())
.map(value =>
value.asScala.map { item =>
zio.aws.transcribe.model.Tag.wrap(item)
}.toList
)
}
def wrap(
impl: software.amazon.awssdk.services.transcribe.model.StartMedicalScribeJobRequest
): zio.aws.transcribe.model.StartMedicalScribeJobRequest.ReadOnly =
new Wrapper(impl)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy