All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.vigoo.zioaws.redshiftdata.model.SqlParameter.scala Maven / Gradle / Ivy

package io.github.vigoo.zioaws.redshiftdata.model
import scala.jdk.CollectionConverters.*
import java.time.Instant
import zio.{ Chunk, ZIO }
import software.amazon.awssdk.core.SdkBytes
final case class SqlParameter(name: primitives.ParameterName, value: primitives.ParameterValue) {
  def buildAwsValue(): software.amazon.awssdk.services.redshiftdata.model.SqlParameter = {
    import SqlParameter.zioAwsBuilderHelper.BuilderOps
    software.amazon.awssdk.services.redshiftdata.model.SqlParameter.builder().name(name: java.lang.String).value(value: java.lang.String).build()
  }
  def asReadOnly: SqlParameter.ReadOnly = SqlParameter.wrap(buildAwsValue())
}
object SqlParameter {
  private lazy val zioAwsBuilderHelper: io.github.vigoo.zioaws.core.BuilderHelper[software.amazon.awssdk.services.redshiftdata.model.SqlParameter] = io.github.vigoo.zioaws.core.BuilderHelper.apply
  trait ReadOnly {
    def editable: SqlParameter = SqlParameter(nameValue, valueValue)
    def nameValue: primitives.ParameterName
    def valueValue: primitives.ParameterValue
    def name: ZIO[Any, Nothing, primitives.ParameterName] = ZIO.succeed(nameValue)
    def value: ZIO[Any, Nothing, primitives.ParameterValue] = ZIO.succeed(valueValue)
  }
  private class Wrapper(impl: software.amazon.awssdk.services.redshiftdata.model.SqlParameter) extends SqlParameter.ReadOnly {
    override def nameValue: primitives.ParameterName = impl.name(): primitives.ParameterName
    override def valueValue: primitives.ParameterValue = impl.value(): primitives.ParameterValue
  }
  def wrap(impl: software.amazon.awssdk.services.redshiftdata.model.SqlParameter): ReadOnly = new Wrapper(impl)
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy