
commonMain.aws.sdk.kotlin.services.wellarchitected.model.Workload.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.wellarchitected.model
import aws.smithy.kotlin.runtime.time.Instant
/**
* A workload return object.
*/
public class Workload private constructor(builder: Builder) {
/**
* The list of Amazon Web Services account IDs associated with the workload.
*/
public val accountIds: List? = builder.accountIds
/**
* List of AppRegistry application ARNs associated to the workload.
*/
public val applications: List? = builder.applications
/**
* The URL of the architectural design for the workload.
*/
public val architecturalDesign: kotlin.String? = builder.architecturalDesign
/**
* The list of Amazon Web Services Regions associated with the workload, for example, `us-east-2`, or `ca-central-1`.
*/
public val awsRegions: List? = builder.awsRegions
/**
* The description for the workload.
*/
public val description: kotlin.String? = builder.description
/**
* Discovery configuration associated to the workload.
*/
public val discoveryConfig: aws.sdk.kotlin.services.wellarchitected.model.WorkloadDiscoveryConfig? = builder.discoveryConfig
/**
* The environment for the workload.
*/
public val environment: aws.sdk.kotlin.services.wellarchitected.model.WorkloadEnvironment? = builder.environment
/**
* The improvement status for a workload.
*/
public val improvementStatus: aws.sdk.kotlin.services.wellarchitected.model.WorkloadImprovementStatus? = builder.improvementStatus
/**
* The industry for the workload.
*/
public val industry: kotlin.String? = builder.industry
/**
* The industry type for the workload.
*
* If specified, must be one of the following:
* + `Agriculture`
* + `Automobile`
* + `Defense`
* + `Design and Engineering`
* + `Digital Advertising`
* + `Education`
* + `Environmental Protection`
* + `Financial Services`
* + `Gaming`
* + `General Public Services`
* + `Healthcare`
* + `Hospitality`
* + `InfoTech`
* + `Justice and Public Safety`
* + `Life Sciences`
* + `Manufacturing`
* + `Media & Entertainment`
* + `Mining & Resources`
* + `Oil & Gas`
* + `Power & Utilities`
* + `Professional Services`
* + `Real Estate & Construction`
* + `Retail & Wholesale`
* + `Social Protection`
* + `Telecommunications`
* + `Travel, Transportation & Logistics`
* + `Other`
*/
public val industryType: kotlin.String? = builder.industryType
/**
* Flag indicating whether the workload owner has acknowledged that the *Review owner* field is required.
*
* If a **Review owner** is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.
*/
public val isReviewOwnerUpdateAcknowledged: kotlin.Boolean = builder.isReviewOwnerUpdateAcknowledged
/**
* The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.
*/
public val lenses: List? = builder.lenses
/**
* The list of non-Amazon Web Services Regions associated with the workload.
*/
public val nonAwsRegions: List? = builder.nonAwsRegions
/**
* The notes associated with the workload.
*/
public val notes: kotlin.String? = builder.notes
/**
* An Amazon Web Services account ID.
*/
public val owner: kotlin.String? = builder.owner
/**
* The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.
*/
public val pillarPriorities: List? = builder.pillarPriorities
/**
* A map from risk names to the count of how many questions have that rating.
*/
public val prioritizedRiskCounts: Map? = builder.prioritizedRiskCounts
/**
* Profile associated with a workload.
*/
public val profiles: List? = builder.profiles
/**
* The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.
*/
public val reviewOwner: kotlin.String? = builder.reviewOwner
/**
* The date and time recorded.
*/
public val reviewRestrictionDate: aws.smithy.kotlin.runtime.time.Instant? = builder.reviewRestrictionDate
/**
* A map from risk names to the count of how many questions have that rating.
*/
public val riskCounts: Map? = builder.riskCounts
/**
* The ID assigned to the share invitation.
*/
public val shareInvitationId: kotlin.String? = builder.shareInvitationId
/**
* The tags associated with the workload.
*/
public val tags: Map? = builder.tags
/**
* The date and time recorded.
*/
public val updatedAt: aws.smithy.kotlin.runtime.time.Instant? = builder.updatedAt
/**
* The ARN for the workload.
*/
public val workloadArn: kotlin.String? = builder.workloadArn
/**
* The ID assigned to the workload. This ID is unique within an Amazon Web Services Region.
*/
public val workloadId: kotlin.String? = builder.workloadId
/**
* The name of the workload.
*
* The name must be unique within an account within an Amazon Web Services Region. Spaces and capitalization are ignored when checking for uniqueness.
*/
public val workloadName: kotlin.String? = builder.workloadName
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.wellarchitected.model.Workload = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("Workload(")
append("accountIds=$accountIds,")
append("applications=$applications,")
append("architecturalDesign=$architecturalDesign,")
append("awsRegions=$awsRegions,")
append("description=$description,")
append("discoveryConfig=$discoveryConfig,")
append("environment=$environment,")
append("improvementStatus=$improvementStatus,")
append("industry=$industry,")
append("industryType=$industryType,")
append("isReviewOwnerUpdateAcknowledged=$isReviewOwnerUpdateAcknowledged,")
append("lenses=$lenses,")
append("nonAwsRegions=$nonAwsRegions,")
append("notes=$notes,")
append("owner=$owner,")
append("pillarPriorities=$pillarPriorities,")
append("prioritizedRiskCounts=$prioritizedRiskCounts,")
append("profiles=$profiles,")
append("reviewOwner=$reviewOwner,")
append("reviewRestrictionDate=$reviewRestrictionDate,")
append("riskCounts=$riskCounts,")
append("shareInvitationId=$shareInvitationId,")
append("tags=$tags,")
append("updatedAt=$updatedAt,")
append("workloadArn=$workloadArn,")
append("workloadId=$workloadId,")
append("workloadName=$workloadName")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = accountIds?.hashCode() ?: 0
result = 31 * result + (applications?.hashCode() ?: 0)
result = 31 * result + (architecturalDesign?.hashCode() ?: 0)
result = 31 * result + (awsRegions?.hashCode() ?: 0)
result = 31 * result + (description?.hashCode() ?: 0)
result = 31 * result + (discoveryConfig?.hashCode() ?: 0)
result = 31 * result + (environment?.hashCode() ?: 0)
result = 31 * result + (improvementStatus?.hashCode() ?: 0)
result = 31 * result + (industry?.hashCode() ?: 0)
result = 31 * result + (industryType?.hashCode() ?: 0)
result = 31 * result + (isReviewOwnerUpdateAcknowledged.hashCode())
result = 31 * result + (lenses?.hashCode() ?: 0)
result = 31 * result + (nonAwsRegions?.hashCode() ?: 0)
result = 31 * result + (notes?.hashCode() ?: 0)
result = 31 * result + (owner?.hashCode() ?: 0)
result = 31 * result + (pillarPriorities?.hashCode() ?: 0)
result = 31 * result + (prioritizedRiskCounts?.hashCode() ?: 0)
result = 31 * result + (profiles?.hashCode() ?: 0)
result = 31 * result + (reviewOwner?.hashCode() ?: 0)
result = 31 * result + (reviewRestrictionDate?.hashCode() ?: 0)
result = 31 * result + (riskCounts?.hashCode() ?: 0)
result = 31 * result + (shareInvitationId?.hashCode() ?: 0)
result = 31 * result + (tags?.hashCode() ?: 0)
result = 31 * result + (updatedAt?.hashCode() ?: 0)
result = 31 * result + (workloadArn?.hashCode() ?: 0)
result = 31 * result + (workloadId?.hashCode() ?: 0)
result = 31 * result + (workloadName?.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 Workload
if (accountIds != other.accountIds) return false
if (applications != other.applications) return false
if (architecturalDesign != other.architecturalDesign) return false
if (awsRegions != other.awsRegions) return false
if (description != other.description) return false
if (discoveryConfig != other.discoveryConfig) return false
if (environment != other.environment) return false
if (improvementStatus != other.improvementStatus) return false
if (industry != other.industry) return false
if (industryType != other.industryType) return false
if (isReviewOwnerUpdateAcknowledged != other.isReviewOwnerUpdateAcknowledged) return false
if (lenses != other.lenses) return false
if (nonAwsRegions != other.nonAwsRegions) return false
if (notes != other.notes) return false
if (owner != other.owner) return false
if (pillarPriorities != other.pillarPriorities) return false
if (prioritizedRiskCounts != other.prioritizedRiskCounts) return false
if (profiles != other.profiles) return false
if (reviewOwner != other.reviewOwner) return false
if (reviewRestrictionDate != other.reviewRestrictionDate) return false
if (riskCounts != other.riskCounts) return false
if (shareInvitationId != other.shareInvitationId) return false
if (tags != other.tags) return false
if (updatedAt != other.updatedAt) return false
if (workloadArn != other.workloadArn) return false
if (workloadId != other.workloadId) return false
if (workloadName != other.workloadName) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.wellarchitected.model.Workload = Builder(this).apply(block).build()
public class Builder {
/**
* The list of Amazon Web Services account IDs associated with the workload.
*/
public var accountIds: List? = null
/**
* List of AppRegistry application ARNs associated to the workload.
*/
public var applications: List? = null
/**
* The URL of the architectural design for the workload.
*/
public var architecturalDesign: kotlin.String? = null
/**
* The list of Amazon Web Services Regions associated with the workload, for example, `us-east-2`, or `ca-central-1`.
*/
public var awsRegions: List? = null
/**
* The description for the workload.
*/
public var description: kotlin.String? = null
/**
* Discovery configuration associated to the workload.
*/
public var discoveryConfig: aws.sdk.kotlin.services.wellarchitected.model.WorkloadDiscoveryConfig? = null
/**
* The environment for the workload.
*/
public var environment: aws.sdk.kotlin.services.wellarchitected.model.WorkloadEnvironment? = null
/**
* The improvement status for a workload.
*/
public var improvementStatus: aws.sdk.kotlin.services.wellarchitected.model.WorkloadImprovementStatus? = null
/**
* The industry for the workload.
*/
public var industry: kotlin.String? = null
/**
* The industry type for the workload.
*
* If specified, must be one of the following:
* + `Agriculture`
* + `Automobile`
* + `Defense`
* + `Design and Engineering`
* + `Digital Advertising`
* + `Education`
* + `Environmental Protection`
* + `Financial Services`
* + `Gaming`
* + `General Public Services`
* + `Healthcare`
* + `Hospitality`
* + `InfoTech`
* + `Justice and Public Safety`
* + `Life Sciences`
* + `Manufacturing`
* + `Media & Entertainment`
* + `Mining & Resources`
* + `Oil & Gas`
* + `Power & Utilities`
* + `Professional Services`
* + `Real Estate & Construction`
* + `Retail & Wholesale`
* + `Social Protection`
* + `Telecommunications`
* + `Travel, Transportation & Logistics`
* + `Other`
*/
public var industryType: kotlin.String? = null
/**
* Flag indicating whether the workload owner has acknowledged that the *Review owner* field is required.
*
* If a **Review owner** is not added to the workload within 60 days of acknowledgement, access to the workload is restricted until an owner is added.
*/
public var isReviewOwnerUpdateAcknowledged: kotlin.Boolean = false
/**
* The list of lenses associated with the workload. Each lens is identified by its LensSummary$LensAlias.
*/
public var lenses: List? = null
/**
* The list of non-Amazon Web Services Regions associated with the workload.
*/
public var nonAwsRegions: List? = null
/**
* The notes associated with the workload.
*/
public var notes: kotlin.String? = null
/**
* An Amazon Web Services account ID.
*/
public var owner: kotlin.String? = null
/**
* The priorities of the pillars, which are used to order items in the improvement plan. Each pillar is represented by its PillarReviewSummary$PillarId.
*/
public var pillarPriorities: List? = null
/**
* A map from risk names to the count of how many questions have that rating.
*/
public var prioritizedRiskCounts: Map? = null
/**
* Profile associated with a workload.
*/
public var profiles: List? = null
/**
* The review owner of the workload. The name, email address, or identifier for the primary group or individual that owns the workload review process.
*/
public var reviewOwner: kotlin.String? = null
/**
* The date and time recorded.
*/
public var reviewRestrictionDate: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* A map from risk names to the count of how many questions have that rating.
*/
public var riskCounts: Map? = null
/**
* The ID assigned to the share invitation.
*/
public var shareInvitationId: kotlin.String? = null
/**
* The tags associated with the workload.
*/
public var tags: Map? = null
/**
* The date and time recorded.
*/
public var updatedAt: aws.smithy.kotlin.runtime.time.Instant? = null
/**
* The ARN for the workload.
*/
public var workloadArn: kotlin.String? = null
/**
* The ID assigned to the workload. This ID is unique within an Amazon Web Services Region.
*/
public var workloadId: kotlin.String? = null
/**
* The name of the workload.
*
* The name must be unique within an account within an Amazon Web Services Region. Spaces and capitalization are ignored when checking for uniqueness.
*/
public var workloadName: kotlin.String? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.wellarchitected.model.Workload) : this() {
this.accountIds = x.accountIds
this.applications = x.applications
this.architecturalDesign = x.architecturalDesign
this.awsRegions = x.awsRegions
this.description = x.description
this.discoveryConfig = x.discoveryConfig
this.environment = x.environment
this.improvementStatus = x.improvementStatus
this.industry = x.industry
this.industryType = x.industryType
this.isReviewOwnerUpdateAcknowledged = x.isReviewOwnerUpdateAcknowledged
this.lenses = x.lenses
this.nonAwsRegions = x.nonAwsRegions
this.notes = x.notes
this.owner = x.owner
this.pillarPriorities = x.pillarPriorities
this.prioritizedRiskCounts = x.prioritizedRiskCounts
this.profiles = x.profiles
this.reviewOwner = x.reviewOwner
this.reviewRestrictionDate = x.reviewRestrictionDate
this.riskCounts = x.riskCounts
this.shareInvitationId = x.shareInvitationId
this.tags = x.tags
this.updatedAt = x.updatedAt
this.workloadArn = x.workloadArn
this.workloadId = x.workloadId
this.workloadName = x.workloadName
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.wellarchitected.model.Workload = Workload(this)
/**
* construct an [aws.sdk.kotlin.services.wellarchitected.model.WorkloadDiscoveryConfig] inside the given [block]
*/
public fun discoveryConfig(block: aws.sdk.kotlin.services.wellarchitected.model.WorkloadDiscoveryConfig.Builder.() -> kotlin.Unit) {
this.discoveryConfig = aws.sdk.kotlin.services.wellarchitected.model.WorkloadDiscoveryConfig.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy