SecurityImpactLevel.java

package gov.nist.secauto.oscal.lib.model;

import gov.nist.secauto.metaschema.binding.model.annotations.BoundField;
import gov.nist.secauto.metaschema.binding.model.annotations.MetaschemaAssembly;
import java.lang.Override;
import java.lang.String;
import org.apache.commons.lang3.builder.MultilineRecursiveToStringStyle;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

/**
 * The overall level of expected impact resulting from unauthorized disclosure, modification, or loss of access to information.
 */
@MetaschemaAssembly(
    formalName = "Security Impact Level",
    description = "The overall level of expected impact resulting from unauthorized disclosure, modification, or loss of access to information.",
    name = "security-impact-level",
    metaschema = OscalSspMetaschema.class
)
public class SecurityImpactLevel {
  /**
   * "A target-level of confidentiality for the system, based on the sensitivity of information within the system."
   */
  @BoundField(
      formalName = "Security Objective: Confidentiality",
      description = "A target-level of confidentiality for the system, based on the sensitivity of information within the system.",
      useName = "security-objective-confidentiality",
      minOccurs = 1
  )
  private String _securityObjectiveConfidentiality;

  /**
   * "A target-level of integrity for the system, based on the sensitivity of information within the system."
   */
  @BoundField(
      formalName = "Security Objective: Integrity",
      description = "A target-level of integrity for the system, based on the sensitivity of information within the system.",
      useName = "security-objective-integrity",
      minOccurs = 1
  )
  private String _securityObjectiveIntegrity;

  /**
   * "A target-level of availability for the system, based on the sensitivity of information within the system."
   */
  @BoundField(
      formalName = "Security Objective: Availability",
      description = "A target-level of availability for the system, based on the sensitivity of information within the system.",
      useName = "security-objective-availability",
      minOccurs = 1
  )
  private String _securityObjectiveAvailability;

  public SecurityImpactLevel() {
  }

  public String getSecurityObjectiveConfidentiality() {
    return _securityObjectiveConfidentiality;
  }

  public void setSecurityObjectiveConfidentiality(String value) {
    _securityObjectiveConfidentiality = value;
  }

  public String getSecurityObjectiveIntegrity() {
    return _securityObjectiveIntegrity;
  }

  public void setSecurityObjectiveIntegrity(String value) {
    _securityObjectiveIntegrity = value;
  }

  public String getSecurityObjectiveAvailability() {
    return _securityObjectiveAvailability;
  }

  public void setSecurityObjectiveAvailability(String value) {
    _securityObjectiveAvailability = value;
  }

  @Override
  public String toString() {
    return new ReflectionToStringBuilder(this, MultilineRecursiveToStringStyle.MULTI_LINE_STYLE).toString();
  }
}