commonMain.aws.sdk.kotlin.services.chimesdkmeetings.model.MeetingFeaturesConfiguration.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of chimesdkmeetings-jvm Show documentation
Show all versions of chimesdkmeetings-jvm Show documentation
The AWS SDK for Kotlin client for Chime SDK Meetings
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.chimesdkmeetings.model
import aws.smithy.kotlin.runtime.SdkDsl
/**
* The configuration settings of the features available to a meeting.
*/
public class MeetingFeaturesConfiguration private constructor(builder: Builder) {
/**
* The configuration settings for the attendee features available to a meeting.
*/
public val attendee: aws.sdk.kotlin.services.chimesdkmeetings.model.AttendeeFeatures? = builder.attendee
/**
* The configuration settings for the audio features available to a meeting.
*/
public val audio: aws.sdk.kotlin.services.chimesdkmeetings.model.AudioFeatures? = builder.audio
/**
* The configuration settings for the content features available to a meeting.
*/
public val content: aws.sdk.kotlin.services.chimesdkmeetings.model.ContentFeatures? = builder.content
/**
* The configuration settings for the video features available to a meeting.
*/
public val video: aws.sdk.kotlin.services.chimesdkmeetings.model.VideoFeatures? = builder.video
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.chimesdkmeetings.model.MeetingFeaturesConfiguration = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("MeetingFeaturesConfiguration(")
append("attendee=$attendee,")
append("audio=$audio,")
append("content=$content,")
append("video=$video")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = attendee?.hashCode() ?: 0
result = 31 * result + (audio?.hashCode() ?: 0)
result = 31 * result + (content?.hashCode() ?: 0)
result = 31 * result + (video?.hashCode() ?: 0)
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 MeetingFeaturesConfiguration
if (attendee != other.attendee) return false
if (audio != other.audio) return false
if (content != other.content) return false
if (video != other.video) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.chimesdkmeetings.model.MeetingFeaturesConfiguration = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* The configuration settings for the attendee features available to a meeting.
*/
public var attendee: aws.sdk.kotlin.services.chimesdkmeetings.model.AttendeeFeatures? = null
/**
* The configuration settings for the audio features available to a meeting.
*/
public var audio: aws.sdk.kotlin.services.chimesdkmeetings.model.AudioFeatures? = null
/**
* The configuration settings for the content features available to a meeting.
*/
public var content: aws.sdk.kotlin.services.chimesdkmeetings.model.ContentFeatures? = null
/**
* The configuration settings for the video features available to a meeting.
*/
public var video: aws.sdk.kotlin.services.chimesdkmeetings.model.VideoFeatures? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.chimesdkmeetings.model.MeetingFeaturesConfiguration) : this() {
this.attendee = x.attendee
this.audio = x.audio
this.content = x.content
this.video = x.video
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.chimesdkmeetings.model.MeetingFeaturesConfiguration = MeetingFeaturesConfiguration(this)
/**
* construct an [aws.sdk.kotlin.services.chimesdkmeetings.model.AttendeeFeatures] inside the given [block]
*/
public fun attendee(block: aws.sdk.kotlin.services.chimesdkmeetings.model.AttendeeFeatures.Builder.() -> kotlin.Unit) {
this.attendee = aws.sdk.kotlin.services.chimesdkmeetings.model.AttendeeFeatures.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.chimesdkmeetings.model.AudioFeatures] inside the given [block]
*/
public fun audio(block: aws.sdk.kotlin.services.chimesdkmeetings.model.AudioFeatures.Builder.() -> kotlin.Unit) {
this.audio = aws.sdk.kotlin.services.chimesdkmeetings.model.AudioFeatures.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.chimesdkmeetings.model.ContentFeatures] inside the given [block]
*/
public fun content(block: aws.sdk.kotlin.services.chimesdkmeetings.model.ContentFeatures.Builder.() -> kotlin.Unit) {
this.content = aws.sdk.kotlin.services.chimesdkmeetings.model.ContentFeatures.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.chimesdkmeetings.model.VideoFeatures] inside the given [block]
*/
public fun video(block: aws.sdk.kotlin.services.chimesdkmeetings.model.VideoFeatures.Builder.() -> kotlin.Unit) {
this.video = aws.sdk.kotlin.services.chimesdkmeetings.model.VideoFeatures.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}