commonMain.aws.sdk.kotlin.services.pinpointsmsvoicev2.model.UpdatePhoneNumberResponse.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pinpointsmsvoicev2-jvm Show documentation
Show all versions of pinpointsmsvoicev2-jvm Show documentation
The AWS SDK for Kotlin client for Pinpoint SMS Voice V2
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.pinpointsmsvoicev2.model
import aws.smithy.kotlin.runtime.SdkDsl
import aws.smithy.kotlin.runtime.time.Instant
public class UpdatePhoneNumberResponse private constructor(builder: Builder) {
/**
* The time when the phone number was created, in [UNIX epoch time](https://www.epochconverter.com/) format.
*/
public val createdTimestamp: aws.smithy.kotlin.runtime.time.Instant? = builder.createdTimestamp
/**
* When set to true the phone number can't be deleted.
*/
public val deletionProtectionEnabled: kotlin.Boolean = builder.deletionProtectionEnabled
/**
* The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.
*/
public val isoCountryCode: kotlin.String? = builder.isoCountryCode
/**
* The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.
*/
public val messageType: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.MessageType? = builder.messageType
/**
* The monthly leasing price of the phone number, in US dollars.
*/
public val monthlyLeasingPrice: kotlin.String? = builder.monthlyLeasingPrice
/**
* Specifies if the number could be used for text messages, voice or both.
*/
public val numberCapabilities: List? = builder.numberCapabilities
/**
* The type of number that was requested.
*/
public val numberType: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.NumberType? = builder.numberType
/**
* The name of the OptOutList associated with the phone number.
*/
public val optOutListName: kotlin.String? = builder.optOutListName
/**
* The phone number that was updated.
*/
public val phoneNumber: kotlin.String? = builder.phoneNumber
/**
* The Amazon Resource Name (ARN) of the updated phone number.
*/
public val phoneNumberArn: kotlin.String? = builder.phoneNumberArn
/**
* The unique identifier of the phone number.
*/
public val phoneNumberId: kotlin.String? = builder.phoneNumberId
/**
* The unique identifier for the registration.
*/
public val registrationId: kotlin.String? = builder.registrationId
/**
* This is true if self managed opt-out are enabled.
*/
public val selfManagedOptOutsEnabled: kotlin.Boolean = builder.selfManagedOptOutsEnabled
/**
* The current status of the request.
*/
public val status: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.NumberStatus? = builder.status
/**
* The Amazon Resource Name (ARN) of the two way channel.
*/
public val twoWayChannelArn: kotlin.String? = builder.twoWayChannelArn
/**
* An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
*/
public val twoWayChannelRole: kotlin.String? = builder.twoWayChannelRole
/**
* By default this is set to false. When set to true you can receive incoming text messages from your end recipients.
*/
public val twoWayEnabled: kotlin.Boolean = builder.twoWayEnabled
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.pinpointsmsvoicev2.model.UpdatePhoneNumberResponse = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("UpdatePhoneNumberResponse(")
append("createdTimestamp=$createdTimestamp,")
append("deletionProtectionEnabled=$deletionProtectionEnabled,")
append("isoCountryCode=$isoCountryCode,")
append("messageType=$messageType,")
append("monthlyLeasingPrice=$monthlyLeasingPrice,")
append("numberCapabilities=$numberCapabilities,")
append("numberType=$numberType,")
append("optOutListName=$optOutListName,")
append("phoneNumber=$phoneNumber,")
append("phoneNumberArn=$phoneNumberArn,")
append("phoneNumberId=$phoneNumberId,")
append("registrationId=$registrationId,")
append("selfManagedOptOutsEnabled=$selfManagedOptOutsEnabled,")
append("status=$status,")
append("twoWayChannelArn=$twoWayChannelArn,")
append("twoWayChannelRole=$twoWayChannelRole,")
append("twoWayEnabled=$twoWayEnabled")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = createdTimestamp?.hashCode() ?: 0
result = 31 * result + (deletionProtectionEnabled.hashCode())
result = 31 * result + (isoCountryCode?.hashCode() ?: 0)
result = 31 * result + (messageType?.hashCode() ?: 0)
result = 31 * result + (monthlyLeasingPrice?.hashCode() ?: 0)
result = 31 * result + (numberCapabilities?.hashCode() ?: 0)
result = 31 * result + (numberType?.hashCode() ?: 0)
result = 31 * result + (optOutListName?.hashCode() ?: 0)
result = 31 * result + (phoneNumber?.hashCode() ?: 0)
result = 31 * result + (phoneNumberArn?.hashCode() ?: 0)
result = 31 * result + (phoneNumberId?.hashCode() ?: 0)
result = 31 * result + (registrationId?.hashCode() ?: 0)
result = 31 * result + (selfManagedOptOutsEnabled.hashCode())
result = 31 * result + (status?.hashCode() ?: 0)
result = 31 * result + (twoWayChannelArn?.hashCode() ?: 0)
result = 31 * result + (twoWayChannelRole?.hashCode() ?: 0)
result = 31 * result + (twoWayEnabled.hashCode())
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as UpdatePhoneNumberResponse
if (createdTimestamp != other.createdTimestamp) return false
if (deletionProtectionEnabled != other.deletionProtectionEnabled) return false
if (isoCountryCode != other.isoCountryCode) return false
if (messageType != other.messageType) return false
if (monthlyLeasingPrice != other.monthlyLeasingPrice) return false
if (numberCapabilities != other.numberCapabilities) return false
if (numberType != other.numberType) return false
if (optOutListName != other.optOutListName) return false
if (phoneNumber != other.phoneNumber) return false
if (phoneNumberArn != other.phoneNumberArn) return false
if (phoneNumberId != other.phoneNumberId) return false
if (registrationId != other.registrationId) return false
if (selfManagedOptOutsEnabled != other.selfManagedOptOutsEnabled) return false
if (status != other.status) return false
if (twoWayChannelArn != other.twoWayChannelArn) return false
if (twoWayChannelRole != other.twoWayChannelRole) return false
if (twoWayEnabled != other.twoWayEnabled) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.pinpointsmsvoicev2.model.UpdatePhoneNumberResponse = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The time when the phone number was created, in [UNIX epoch time](https://www.epochconverter.com/) format.
*/
public var createdTimestamp: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* When set to true the phone number can't be deleted.
*/
public var deletionProtectionEnabled: kotlin.Boolean = false
/**
* The two-character code, in ISO 3166-1 alpha-2 format, for the country or region.
*/
public var isoCountryCode: kotlin.String? = null
/**
* The type of message. Valid values are TRANSACTIONAL for messages that are critical or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive.
*/
public var messageType: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.MessageType? = null
/**
* The monthly leasing price of the phone number, in US dollars.
*/
public var monthlyLeasingPrice: kotlin.String? = null
/**
* Specifies if the number could be used for text messages, voice or both.
*/
public var numberCapabilities: List? = null
/**
* The type of number that was requested.
*/
public var numberType: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.NumberType? = null
/**
* The name of the OptOutList associated with the phone number.
*/
public var optOutListName: kotlin.String? = null
/**
* The phone number that was updated.
*/
public var phoneNumber: kotlin.String? = null
/**
* The Amazon Resource Name (ARN) of the updated phone number.
*/
public var phoneNumberArn: kotlin.String? = null
/**
* The unique identifier of the phone number.
*/
public var phoneNumberId: kotlin.String? = null
/**
* The unique identifier for the registration.
*/
public var registrationId: kotlin.String? = null
/**
* This is true if self managed opt-out are enabled.
*/
public var selfManagedOptOutsEnabled: kotlin.Boolean = false
/**
* The current status of the request.
*/
public var status: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.NumberStatus? = null
/**
* The Amazon Resource Name (ARN) of the two way channel.
*/
public var twoWayChannelArn: kotlin.String? = null
/**
* An optional IAM Role Arn for a service to assume, to be able to post inbound SMS messages.
*/
public var twoWayChannelRole: kotlin.String? = null
/**
* By default this is set to false. When set to true you can receive incoming text messages from your end recipients.
*/
public var twoWayEnabled: kotlin.Boolean = false
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.pinpointsmsvoicev2.model.UpdatePhoneNumberResponse) : this() {
this.createdTimestamp = x.createdTimestamp
this.deletionProtectionEnabled = x.deletionProtectionEnabled
this.isoCountryCode = x.isoCountryCode
this.messageType = x.messageType
this.monthlyLeasingPrice = x.monthlyLeasingPrice
this.numberCapabilities = x.numberCapabilities
this.numberType = x.numberType
this.optOutListName = x.optOutListName
this.phoneNumber = x.phoneNumber
this.phoneNumberArn = x.phoneNumberArn
this.phoneNumberId = x.phoneNumberId
this.registrationId = x.registrationId
this.selfManagedOptOutsEnabled = x.selfManagedOptOutsEnabled
this.status = x.status
this.twoWayChannelArn = x.twoWayChannelArn
this.twoWayChannelRole = x.twoWayChannelRole
this.twoWayEnabled = x.twoWayEnabled
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.pinpointsmsvoicev2.model.UpdatePhoneNumberResponse = UpdatePhoneNumberResponse(this)
internal fun correctErrors(): Builder {
return this
}
}
}