/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.securityhub.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Provides details about a control's enablement status in a specified standard. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class StandardsControlAssociationDetail implements Serializable, Cloneable, StructuredPojo { /** ** The Amazon Resource Name (ARN) of a security standard. *
*/ private String standardsArn; /** ** The unique identifier of a security control across standards. Values for this field typically consist of an * Amazon Web Service name and a number, such as APIGateway.3. *
*/ private String securityControlId; /** *
* The ARN of a security control across standards, such as
* arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't mention
* a specific standard.
*
* Specifies whether a control is enabled or disabled in a specified standard. *
*/ private String associationStatus; /** ** The requirement that underlies a control in the compliance framework related to the standard. *
*/ private java.util.List* The time at which the enablement status of the control in the specified standard was last updated. *
*/ private java.util.Date updatedAt; /** ** The reason for updating the enablement status of a control in a specified standard. *
*/ private String updatedReason; /** ** The title of a control. This field may reference a specific standard. *
*/ private String standardsControlTitle; /** ** The description of a control. This typically summarizes how Security Hub evaluates the control and the conditions * under which it produces a failed finding. This parameter may reference a specific standard. *
*/ private String standardsControlDescription; /** ** Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified standard. *
*/ private java.util.List* The Amazon Resource Name (ARN) of a security standard. *
* * @param standardsArn * The Amazon Resource Name (ARN) of a security standard. */ public void setStandardsArn(String standardsArn) { this.standardsArn = standardsArn; } /** ** The Amazon Resource Name (ARN) of a security standard. *
* * @return The Amazon Resource Name (ARN) of a security standard. */ public String getStandardsArn() { return this.standardsArn; } /** ** The Amazon Resource Name (ARN) of a security standard. *
* * @param standardsArn * The Amazon Resource Name (ARN) of a security standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withStandardsArn(String standardsArn) { setStandardsArn(standardsArn); return this; } /** ** The unique identifier of a security control across standards. Values for this field typically consist of an * Amazon Web Service name and a number, such as APIGateway.3. *
* * @param securityControlId * The unique identifier of a security control across standards. Values for this field typically consist of * an Amazon Web Service name and a number, such as APIGateway.3. */ public void setSecurityControlId(String securityControlId) { this.securityControlId = securityControlId; } /** ** The unique identifier of a security control across standards. Values for this field typically consist of an * Amazon Web Service name and a number, such as APIGateway.3. *
* * @return The unique identifier of a security control across standards. Values for this field typically consist of * an Amazon Web Service name and a number, such as APIGateway.3. */ public String getSecurityControlId() { return this.securityControlId; } /** ** The unique identifier of a security control across standards. Values for this field typically consist of an * Amazon Web Service name and a number, such as APIGateway.3. *
* * @param securityControlId * The unique identifier of a security control across standards. Values for this field typically consist of * an Amazon Web Service name and a number, such as APIGateway.3. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withSecurityControlId(String securityControlId) { setSecurityControlId(securityControlId); return this; } /** *
* The ARN of a security control across standards, such as
* arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't mention
* a specific standard.
*
arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't
* mention a specific standard.
*/
public void setSecurityControlArn(String securityControlArn) {
this.securityControlArn = securityControlArn;
}
/**
*
* The ARN of a security control across standards, such as
* arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't mention
* a specific standard.
*
arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't
* mention a specific standard.
*/
public String getSecurityControlArn() {
return this.securityControlArn;
}
/**
*
* The ARN of a security control across standards, such as
* arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't mention
* a specific standard.
*
arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1
. This parameter doesn't
* mention a specific standard.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public StandardsControlAssociationDetail withSecurityControlArn(String securityControlArn) {
setSecurityControlArn(securityControlArn);
return this;
}
/**
* * Specifies whether a control is enabled or disabled in a specified standard. *
* * @param associationStatus * Specifies whether a control is enabled or disabled in a specified standard. * @see AssociationStatus */ public void setAssociationStatus(String associationStatus) { this.associationStatus = associationStatus; } /** ** Specifies whether a control is enabled or disabled in a specified standard. *
* * @return Specifies whether a control is enabled or disabled in a specified standard. * @see AssociationStatus */ public String getAssociationStatus() { return this.associationStatus; } /** ** Specifies whether a control is enabled or disabled in a specified standard. *
* * @param associationStatus * Specifies whether a control is enabled or disabled in a specified standard. * @return Returns a reference to this object so that method calls can be chained together. * @see AssociationStatus */ public StandardsControlAssociationDetail withAssociationStatus(String associationStatus) { setAssociationStatus(associationStatus); return this; } /** ** Specifies whether a control is enabled or disabled in a specified standard. *
* * @param associationStatus * Specifies whether a control is enabled or disabled in a specified standard. * @return Returns a reference to this object so that method calls can be chained together. * @see AssociationStatus */ public StandardsControlAssociationDetail withAssociationStatus(AssociationStatus associationStatus) { this.associationStatus = associationStatus.toString(); return this; } /** ** The requirement that underlies a control in the compliance framework related to the standard. *
* * @return The requirement that underlies a control in the compliance framework related to the standard. */ public java.util.List* The requirement that underlies a control in the compliance framework related to the standard. *
* * @param relatedRequirements * The requirement that underlies a control in the compliance framework related to the standard. */ public void setRelatedRequirements(java.util.Collection* The requirement that underlies a control in the compliance framework related to the standard. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setRelatedRequirements(java.util.Collection)} or {@link #withRelatedRequirements(java.util.Collection)} * if you want to override the existing values. *
* * @param relatedRequirements * The requirement that underlies a control in the compliance framework related to the standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withRelatedRequirements(String... relatedRequirements) { if (this.relatedRequirements == null) { setRelatedRequirements(new java.util.ArrayList* The requirement that underlies a control in the compliance framework related to the standard. *
* * @param relatedRequirements * The requirement that underlies a control in the compliance framework related to the standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withRelatedRequirements(java.util.Collection* The time at which the enablement status of the control in the specified standard was last updated. *
* * @param updatedAt * The time at which the enablement status of the control in the specified standard was last updated. */ public void setUpdatedAt(java.util.Date updatedAt) { this.updatedAt = updatedAt; } /** ** The time at which the enablement status of the control in the specified standard was last updated. *
* * @return The time at which the enablement status of the control in the specified standard was last updated. */ public java.util.Date getUpdatedAt() { return this.updatedAt; } /** ** The time at which the enablement status of the control in the specified standard was last updated. *
* * @param updatedAt * The time at which the enablement status of the control in the specified standard was last updated. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withUpdatedAt(java.util.Date updatedAt) { setUpdatedAt(updatedAt); return this; } /** ** The reason for updating the enablement status of a control in a specified standard. *
* * @param updatedReason * The reason for updating the enablement status of a control in a specified standard. */ public void setUpdatedReason(String updatedReason) { this.updatedReason = updatedReason; } /** ** The reason for updating the enablement status of a control in a specified standard. *
* * @return The reason for updating the enablement status of a control in a specified standard. */ public String getUpdatedReason() { return this.updatedReason; } /** ** The reason for updating the enablement status of a control in a specified standard. *
* * @param updatedReason * The reason for updating the enablement status of a control in a specified standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withUpdatedReason(String updatedReason) { setUpdatedReason(updatedReason); return this; } /** ** The title of a control. This field may reference a specific standard. *
* * @param standardsControlTitle * The title of a control. This field may reference a specific standard. */ public void setStandardsControlTitle(String standardsControlTitle) { this.standardsControlTitle = standardsControlTitle; } /** ** The title of a control. This field may reference a specific standard. *
* * @return The title of a control. This field may reference a specific standard. */ public String getStandardsControlTitle() { return this.standardsControlTitle; } /** ** The title of a control. This field may reference a specific standard. *
* * @param standardsControlTitle * The title of a control. This field may reference a specific standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withStandardsControlTitle(String standardsControlTitle) { setStandardsControlTitle(standardsControlTitle); return this; } /** ** The description of a control. This typically summarizes how Security Hub evaluates the control and the conditions * under which it produces a failed finding. This parameter may reference a specific standard. *
* * @param standardsControlDescription * The description of a control. This typically summarizes how Security Hub evaluates the control and the * conditions under which it produces a failed finding. This parameter may reference a specific standard. */ public void setStandardsControlDescription(String standardsControlDescription) { this.standardsControlDescription = standardsControlDescription; } /** ** The description of a control. This typically summarizes how Security Hub evaluates the control and the conditions * under which it produces a failed finding. This parameter may reference a specific standard. *
* * @return The description of a control. This typically summarizes how Security Hub evaluates the control and the * conditions under which it produces a failed finding. This parameter may reference a specific standard. */ public String getStandardsControlDescription() { return this.standardsControlDescription; } /** ** The description of a control. This typically summarizes how Security Hub evaluates the control and the conditions * under which it produces a failed finding. This parameter may reference a specific standard. *
* * @param standardsControlDescription * The description of a control. This typically summarizes how Security Hub evaluates the control and the * conditions under which it produces a failed finding. This parameter may reference a specific standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withStandardsControlDescription(String standardsControlDescription) { setStandardsControlDescription(standardsControlDescription); return this; } /** ** Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified standard. *
* * @return Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified * standard. */ public java.util.List* Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified standard. *
* * @param standardsControlArns * Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified * standard. */ public void setStandardsControlArns(java.util.Collection* Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified standard. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setStandardsControlArns(java.util.Collection)} or {@link #withStandardsControlArns(java.util.Collection)} * if you want to override the existing values. *
* * @param standardsControlArns * Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified * standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withStandardsControlArns(String... standardsControlArns) { if (this.standardsControlArns == null) { setStandardsControlArns(new java.util.ArrayList* Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified standard. *
* * @param standardsControlArns * Provides the input parameter that Security Hub uses to call the UpdateStandardsControl API. This API can be used to enable or disable a control in a specified * standard. * @return Returns a reference to this object so that method calls can be chained together. */ public StandardsControlAssociationDetail withStandardsControlArns(java.util.Collection