001package gov.nist.secauto.oscal.lib.model;
002
003import gov.nist.secauto.metaschema.binding.model.annotations.BoundField;
004import gov.nist.secauto.metaschema.binding.model.annotations.MetaschemaAssembly;
005import java.lang.Override;
006import java.lang.String;
007import org.apache.commons.lang3.builder.MultilineRecursiveToStringStyle;
008import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
009
010/**
011 * The overall level of expected impact resulting from unauthorized disclosure, modification, or loss of access to information.
012 */
013@MetaschemaAssembly(
014    formalName = "Security Impact Level",
015    description = "The overall level of expected impact resulting from unauthorized disclosure, modification, or loss of access to information.",
016    name = "security-impact-level",
017    metaschema = OscalSspMetaschema.class
018)
019public class SecurityImpactLevel {
020  /**
021   * "A target-level of confidentiality for the system, based on the sensitivity of information within the system."
022   */
023  @BoundField(
024      formalName = "Security Objective: Confidentiality",
025      description = "A target-level of confidentiality for the system, based on the sensitivity of information within the system.",
026      useName = "security-objective-confidentiality",
027      minOccurs = 1
028  )
029  private String _securityObjectiveConfidentiality;
030
031  /**
032   * "A target-level of integrity for the system, based on the sensitivity of information within the system."
033   */
034  @BoundField(
035      formalName = "Security Objective: Integrity",
036      description = "A target-level of integrity for the system, based on the sensitivity of information within the system.",
037      useName = "security-objective-integrity",
038      minOccurs = 1
039  )
040  private String _securityObjectiveIntegrity;
041
042  /**
043   * "A target-level of availability for the system, based on the sensitivity of information within the system."
044   */
045  @BoundField(
046      formalName = "Security Objective: Availability",
047      description = "A target-level of availability for the system, based on the sensitivity of information within the system.",
048      useName = "security-objective-availability",
049      minOccurs = 1
050  )
051  private String _securityObjectiveAvailability;
052
053  public SecurityImpactLevel() {
054  }
055
056  public String getSecurityObjectiveConfidentiality() {
057    return _securityObjectiveConfidentiality;
058  }
059
060  public void setSecurityObjectiveConfidentiality(String value) {
061    _securityObjectiveConfidentiality = value;
062  }
063
064  public String getSecurityObjectiveIntegrity() {
065    return _securityObjectiveIntegrity;
066  }
067
068  public void setSecurityObjectiveIntegrity(String value) {
069    _securityObjectiveIntegrity = value;
070  }
071
072  public String getSecurityObjectiveAvailability() {
073    return _securityObjectiveAvailability;
074  }
075
076  public void setSecurityObjectiveAvailability(String value) {
077    _securityObjectiveAvailability = value;
078  }
079
080  @Override
081  public String toString() {
082    return new ReflectionToStringBuilder(this, MultilineRecursiveToStringStyle.MULTI_LINE_STYLE).toString();
083  }
084}