zio.aws.cloudwatchevents.model.Connection.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of zio-aws-cloudwatchevents_3 Show documentation
Show all versions of zio-aws-cloudwatchevents_3 Show documentation
Low-level AWS wrapper for ZIO
The newest version!
package zio.aws.cloudwatchevents.model
import zio.aws.cloudwatchevents.model.primitives.{
Timestamp,
ConnectionStateReason,
ConnectionName,
ConnectionArn
}
import java.time.Instant
import zio.prelude.data.Optional
import zio.aws.core.{AwsError, BuilderHelper}
import zio.ZIO
import scala.jdk.CollectionConverters.*
final case class Connection(
connectionArn: Optional[ConnectionArn] = Optional.Absent,
name: Optional[ConnectionName] = Optional.Absent,
connectionState: Optional[zio.aws.cloudwatchevents.model.ConnectionState] =
Optional.Absent,
stateReason: Optional[ConnectionStateReason] = Optional.Absent,
authorizationType: Optional[
zio.aws.cloudwatchevents.model.ConnectionAuthorizationType
] = Optional.Absent,
creationTime: Optional[Timestamp] = Optional.Absent,
lastModifiedTime: Optional[Timestamp] = Optional.Absent,
lastAuthorizedTime: Optional[Timestamp] = Optional.Absent
) {
def buildAwsValue()
: software.amazon.awssdk.services.cloudwatchevents.model.Connection = {
import Connection.zioAwsBuilderHelper.BuilderOps
software.amazon.awssdk.services.cloudwatchevents.model.Connection
.builder()
.optionallyWith(
connectionArn.map(value =>
ConnectionArn.unwrap(value): java.lang.String
)
)(_.connectionArn)
.optionallyWith(
name.map(value => ConnectionName.unwrap(value): java.lang.String)
)(_.name)
.optionallyWith(connectionState.map(value => value.unwrap))(
_.connectionState
)
.optionallyWith(
stateReason.map(value =>
ConnectionStateReason.unwrap(value): java.lang.String
)
)(_.stateReason)
.optionallyWith(authorizationType.map(value => value.unwrap))(
_.authorizationType
)
.optionallyWith(
creationTime.map(value => Timestamp.unwrap(value): Instant)
)(_.creationTime)
.optionallyWith(
lastModifiedTime.map(value => Timestamp.unwrap(value): Instant)
)(_.lastModifiedTime)
.optionallyWith(
lastAuthorizedTime.map(value => Timestamp.unwrap(value): Instant)
)(_.lastAuthorizedTime)
.build()
}
def asReadOnly: zio.aws.cloudwatchevents.model.Connection.ReadOnly =
zio.aws.cloudwatchevents.model.Connection.wrap(buildAwsValue())
}
object Connection {
private lazy val zioAwsBuilderHelper: BuilderHelper[
software.amazon.awssdk.services.cloudwatchevents.model.Connection
] = BuilderHelper.apply
trait ReadOnly {
def asEditable: zio.aws.cloudwatchevents.model.Connection =
zio.aws.cloudwatchevents.model.Connection(
connectionArn.map(value => value),
name.map(value => value),
connectionState.map(value => value),
stateReason.map(value => value),
authorizationType.map(value => value),
creationTime.map(value => value),
lastModifiedTime.map(value => value),
lastAuthorizedTime.map(value => value)
)
def connectionArn: Optional[ConnectionArn]
def name: Optional[ConnectionName]
def connectionState
: Optional[zio.aws.cloudwatchevents.model.ConnectionState]
def stateReason: Optional[ConnectionStateReason]
def authorizationType
: Optional[zio.aws.cloudwatchevents.model.ConnectionAuthorizationType]
def creationTime: Optional[Timestamp]
def lastModifiedTime: Optional[Timestamp]
def lastAuthorizedTime: Optional[Timestamp]
def getConnectionArn: ZIO[Any, AwsError, ConnectionArn] =
AwsError.unwrapOptionField("connectionArn", connectionArn)
def getName: ZIO[Any, AwsError, ConnectionName] =
AwsError.unwrapOptionField("name", name)
def getConnectionState
: ZIO[Any, AwsError, zio.aws.cloudwatchevents.model.ConnectionState] =
AwsError.unwrapOptionField("connectionState", connectionState)
def getStateReason: ZIO[Any, AwsError, ConnectionStateReason] =
AwsError.unwrapOptionField("stateReason", stateReason)
def getAuthorizationType: ZIO[
Any,
AwsError,
zio.aws.cloudwatchevents.model.ConnectionAuthorizationType
] = AwsError.unwrapOptionField("authorizationType", authorizationType)
def getCreationTime: ZIO[Any, AwsError, Timestamp] =
AwsError.unwrapOptionField("creationTime", creationTime)
def getLastModifiedTime: ZIO[Any, AwsError, Timestamp] =
AwsError.unwrapOptionField("lastModifiedTime", lastModifiedTime)
def getLastAuthorizedTime: ZIO[Any, AwsError, Timestamp] =
AwsError.unwrapOptionField("lastAuthorizedTime", lastAuthorizedTime)
}
private final class Wrapper(
impl: software.amazon.awssdk.services.cloudwatchevents.model.Connection
) extends zio.aws.cloudwatchevents.model.Connection.ReadOnly {
override val connectionArn: Optional[ConnectionArn] = zio.aws.core.internal
.optionalFromNullable(impl.connectionArn())
.map(value =>
zio.aws.cloudwatchevents.model.primitives.ConnectionArn(value)
)
override val name: Optional[ConnectionName] = zio.aws.core.internal
.optionalFromNullable(impl.name())
.map(value =>
zio.aws.cloudwatchevents.model.primitives.ConnectionName(value)
)
override val connectionState
: Optional[zio.aws.cloudwatchevents.model.ConnectionState] =
zio.aws.core.internal
.optionalFromNullable(impl.connectionState())
.map(value =>
zio.aws.cloudwatchevents.model.ConnectionState.wrap(value)
)
override val stateReason: Optional[ConnectionStateReason] =
zio.aws.core.internal
.optionalFromNullable(impl.stateReason())
.map(value =>
zio.aws.cloudwatchevents.model.primitives.ConnectionStateReason(value)
)
override val authorizationType
: Optional[zio.aws.cloudwatchevents.model.ConnectionAuthorizationType] =
zio.aws.core.internal
.optionalFromNullable(impl.authorizationType())
.map(value =>
zio.aws.cloudwatchevents.model.ConnectionAuthorizationType.wrap(value)
)
override val creationTime: Optional[Timestamp] = zio.aws.core.internal
.optionalFromNullable(impl.creationTime())
.map(value => zio.aws.cloudwatchevents.model.primitives.Timestamp(value))
override val lastModifiedTime: Optional[Timestamp] = zio.aws.core.internal
.optionalFromNullable(impl.lastModifiedTime())
.map(value => zio.aws.cloudwatchevents.model.primitives.Timestamp(value))
override val lastAuthorizedTime: Optional[Timestamp] = zio.aws.core.internal
.optionalFromNullable(impl.lastAuthorizedTime())
.map(value => zio.aws.cloudwatchevents.model.primitives.Timestamp(value))
}
def wrap(
impl: software.amazon.awssdk.services.cloudwatchevents.model.Connection
): zio.aws.cloudwatchevents.model.Connection.ReadOnly = new Wrapper(impl)
}