# File lib/emass_client/models/systems.rb, line 831 def primary_control_set=(primary_control_set) validator = EnumAttributeValidator.new('Object', ['NIST SP 800-53 Revision 4', 'DoDI 8500.2']) unless validator.valid?(primary_control_set) fail ArgumentError, "invalid value for \"primary_control_set\", must be one of #{validator.allowable_values}." end @primary_control_set = primary_control_set end
class EmassClient::Systems
Attributes
- Read-only
-
Acronym of the system record.
- Read-only
-
Overlays applied to the system record.
- Read-only
-
Availability of the system record. RMF values include the following options (High, Moderate, Low)
- Read-only
-
Corresponding Cyber Operational Attributes Management System (COAMS) identifier for the system record.
- Read-only
-
Confidentiality of the system record. RMF values include the following options (High, Moderate, Low)
- Read-only
-
Date the system record’s Contingency Plan was tested.
- Read-only
-
Has the system record’s Contingency Plan been tested?
- Read-only
-
Cross Domain Tickets of the system record.
- Read-only
-
Displays the system’s current step within the RMF Lifecycle.
- Read-only
-
Description of the system record.
- Read-Only
-
DITPR-DON identifier of the system record.
- Read-only
-
DITPR ID of the system record.
- Read-Only
-
DoD Confidentiality level of the system record.
- Read-only
-
Geographical Association of the system record (VA only).
- Read-only
-
Governing Mission Area of the system record.
- Read-only
-
Does the system record contain and/or process Controlled Unclassified information?
- Read-Only
-
Does the system record have an Ongoing or Risk Accepted POA&M Item?
- Read-Only
-
Does the system record have an Ongoing or Risk Accepted POA&M Item 120 days past its Scheduled Completion Date?
- Read-Only
-
Does the system record have an Ongoing or Risk Accepted POA&M Item 90 to 120 days past its Scheduled Completion Date?
- Read-only
-
Does the system record contain and/or process Personal Health Information?
- Read-only
-
Does the system record contain and/or process Personally Identifiable Information?
- Optional
-
Values include the following options (Very Low, Low, Moderate,High,Very High)
- Read-only
-
Integrity of the system record. RMF values include the following options (High, Moderate, Low)
- Read-only
-
Identify the interconnected information systems and corresponding identifiers within control CA-3.
- Read-only
-
Is the system record a National Security System?
- Read-only
-
Does the system require a Privacy Impact Assessment?
- Read-only
-
Does the system record have a public facing component/presence.
- Read-Only
-
MAC level of the system record.
- Read-only
-
Mission Criticality of the system record. Values include the following options (Mission Critical (MC), Mission Essential (ME), Mission Support (MS).
- Read-only
-
Name of the system record.
- Read-only
-
Name of the top-level component that owns the system (e.g. Navy, Air Force, Army, etc..).
- Read-only
-
Include any additional information required by the organization.
- Read-only
-
Date in which the system’s PIA took place.
- Read-only
-
Status of the PIA, availability values include the following options (Not Started, In Progress, Completed)
- Read-only
-
RMF/DIACAP Policy identifier for the system record.
- Read-only
-
Unique identifier for the DoD’s Ports, Protocols, and Services Management Registry system.
- Read-only
-
Primary Control Set of the system record. RMF values include the following options (NIST SP 800-53 Revision 4), DIACAP values include the following options (DoDI 8500.2)
- Read-only
-
Primary functional area of the system record.
- Read-Only
-
Registration types parameters (assessAndAuthorize, assessOnly, guest, regular, functional, cloudServiceProvider.)
- Read-only
-
Indicates if the system reports to the DoD Cyber Hygiene Scorecard.
- Read-only
-
RMF Activity of the system record.
- Read-only
-
Secondary functional area of the system record.
- Read-only
-
Secondary organization that owns the system record (i.e. Sub-Organization-level.
- Read-only
-
Approval date of the system’s RMF Security Plan.
- Read-only
-
Status of the approval of the system’s RMF Security Plan. Values include the following options (Approved, Denied, Not Yet Approved).
- Read-only
-
Date the system record’s Annual Security Review was conducted.
- Read-only
-
Unique system record identifier.
- Read-only
-
Owning organization of the system record.
- Read-only
-
Ownership of the system record (VA only).
- Read-only
-
Type of the system record. RMF values include the following options (IS Major Application, IS Enclave, Platform IT System). DIACAP values include the following options (Platform IT, Interconnection, AIS Application)
- Read-only
-
Terms/Conditions for receiving and maintaining the system’s Authorization. Assigned by the Authorizing Official.
- Read-only
-
User-defined field to augment Ad Hoc Reporting.
- Read-only
-
User-defined field to augment Ad Hoc Reporting.
- Read-only
-
User-defined field to augment Ad Hoc Reporting.
- Read-only
-
User-defined field to augment Ad Hoc Reporting.
- Read-only
-
User-defined field to augment Ad Hoc Reporting.
- Read-only
-
Version/Release Number of system record.
Public Class Methods
Attribute mapping from ruby-style variable name to JSON key.
# File lib/emass_client/models/systems.rb, line 229 def self.attribute_map { :'system_id' => :'systemId', :'policy' => :'policy', :'registration_type' => :'registrationType', :'name' => :'name', :'acronym' => :'acronym', :'description' => :'description', :'system_owner' => :'systemOwner', :'organization_name' => :'organizationName', :'secondary_organization' => :'secondaryOrganization', :'version_release_no' => :'versionReleaseNo', :'system_type' => :'systemType', :'is_nss' => :'isNSS', :'is_public_facing' => :'isPublicFacing', :'coams_id' => :'coamsId', :'is_type_authorization' => :'isTypeAuthorization', :'ditpr_id' => :'ditprId', :'authorization_status' => :'authorizationStatus', :'authorization_date' => :'authorizationDate', :'authorization_termination_date' => :'authorizationTerminationDate', :'authorization_length' => :'authorizationLength', :'terms_for_auth' => :'termsForAuth', :'security_plan_approval_status' => :'securityPlanApprovalStatus', :'security_plan_approval_date' => :'securityPlanApprovalDate', :'mission_criticality' => :'missionCriticality', :'geographical_association' => :'geographicalAssociation', :'system_ownership' => :'systemOwnership', :'governing_mission_area' => :'governingMissionArea', :'primary_functional_area' => :'primaryFunctionalArea', :'secondary_functional_area' => :'secondaryFunctionalArea', :'primary_control_set' => :'primaryControlSet', :'confidentiality' => :'confidentiality', :'integrity' => :'integrity', :'availability' => :'availability', :'applied_overlays' => :'appliedOverlays', :'rmf_activity' => :'rmfActivity', :'cross_domain_ticket' => :'crossDomainTicket', :'ditpr_don_id' => :'ditprDonId', :'mac' => :'mac', :'dod_confidentiality' => :'dodConfidentiality', :'contingency_plan_tested' => :'contingencyPlanTested', :'contingency_plan_test_date' => :'contingencyPlanTestDate', :'security_review_date' => :'securityReviewDate', :'has_open_poam_item' => :'hasOpenPoamItem', :'has_open_poam_item90to120_past_scheduled_completion_date' => :'hasOpenPoamItem90to120PastScheduledCompletionDate', :'has_open_poam_item120_plus_past_scheudled_completion_date' => :'hasOpenPoamItem120PlusPastScheudledCompletionDate', :'impact' => :'impact', :'has_cui' => :'hasCUI', :'has_pii' => :'hasPII', :'has_phi' => :'hasPHI', :'ppsm_registry_number' => :'ppsmRegistryNumber', :'interconnected_information_system_and_identifiers' => :'interconnectedInformationSystemAndIdentifiers', :'is_pia_required' => :'isPiaRequired', :'pia_status' => :'piaStatus', :'pia_date' => :'piaDate', :'user_defined_field1' => :'userDefinedField1', :'user_defined_field2' => :'userDefinedField2', :'user_defined_field3' => :'userDefinedField3', :'user_defined_field4' => :'userDefinedField4', :'user_defined_field5' => :'userDefinedField5', :'current_rmf_lifecycle_step' => :'currentRmfLifecycleStep', :'other_information' => :'otherInformation', :'reports_for_scorecard' => :'reportsForScorecard', :'package' => :'package', :'connectivity_ccsd' => :'connectivityCcsd' } end
Builds the object from hash @param [Hash] attributes Model attributes in the form of hash @return [Object] Returns the model itself
# File lib/emass_client/models/systems.rb, line 1025 def self.build_from_hash(attributes) new.build_from_hash(attributes) end
Initializes the object @param [Hash] attributes Model attributes in the form of hash
# File lib/emass_client/models/systems.rb, line 376 def initialize(attributes = {}) if (!attributes.is_a?(Hash)) fail ArgumentError, "The input argument (attributes) must be a hash in `EmassClient::Systems` initialize method" end # check to see if the attribute exists and convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| if (!self.class.attribute_map.key?(k.to_sym)) fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::Systems`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect end h[k.to_sym] = v } if attributes.key?(:'system_id') self.system_id = attributes[:'system_id'] end if attributes.key?(:'policy') self.policy = attributes[:'policy'] end if attributes.key?(:'registration_type') self.registration_type = attributes[:'registration_type'] end if attributes.key?(:'name') self.name = attributes[:'name'] end if attributes.key?(:'acronym') self.acronym = attributes[:'acronym'] end if attributes.key?(:'description') self.description = attributes[:'description'] end if attributes.key?(:'system_owner') self.system_owner = attributes[:'system_owner'] end if attributes.key?(:'organization_name') self.organization_name = attributes[:'organization_name'] end if attributes.key?(:'secondary_organization') self.secondary_organization = attributes[:'secondary_organization'] end if attributes.key?(:'version_release_no') self.version_release_no = attributes[:'version_release_no'] end if attributes.key?(:'system_type') self.system_type = attributes[:'system_type'] end if attributes.key?(:'is_nss') self.is_nss = attributes[:'is_nss'] end if attributes.key?(:'is_public_facing') self.is_public_facing = attributes[:'is_public_facing'] end if attributes.key?(:'coams_id') self.coams_id = attributes[:'coams_id'] end if attributes.key?(:'is_type_authorization') self.is_type_authorization = attributes[:'is_type_authorization'] end if attributes.key?(:'ditpr_id') self.ditpr_id = attributes[:'ditpr_id'] end if attributes.key?(:'authorization_status') self.authorization_status = attributes[:'authorization_status'] end if attributes.key?(:'authorization_date') self.authorization_date = attributes[:'authorization_date'] end if attributes.key?(:'authorization_termination_date') self.authorization_termination_date = attributes[:'authorization_termination_date'] end if attributes.key?(:'authorization_length') self.authorization_length = attributes[:'authorization_length'] end if attributes.key?(:'terms_for_auth') self.terms_for_auth = attributes[:'terms_for_auth'] end if attributes.key?(:'security_plan_approval_status') self.security_plan_approval_status = attributes[:'security_plan_approval_status'] end if attributes.key?(:'security_plan_approval_date') self.security_plan_approval_date = attributes[:'security_plan_approval_date'] end if attributes.key?(:'mission_criticality') self.mission_criticality = attributes[:'mission_criticality'] end if attributes.key?(:'geographical_association') self.geographical_association = attributes[:'geographical_association'] end if attributes.key?(:'system_ownership') self.system_ownership = attributes[:'system_ownership'] end if attributes.key?(:'governing_mission_area') self.governing_mission_area = attributes[:'governing_mission_area'] end if attributes.key?(:'primary_functional_area') self.primary_functional_area = attributes[:'primary_functional_area'] end if attributes.key?(:'secondary_functional_area') self.secondary_functional_area = attributes[:'secondary_functional_area'] end if attributes.key?(:'primary_control_set') self.primary_control_set = attributes[:'primary_control_set'] end if attributes.key?(:'confidentiality') self.confidentiality = attributes[:'confidentiality'] end if attributes.key?(:'integrity') self.integrity = attributes[:'integrity'] end if attributes.key?(:'availability') self.availability = attributes[:'availability'] end if attributes.key?(:'applied_overlays') self.applied_overlays = attributes[:'applied_overlays'] end if attributes.key?(:'rmf_activity') self.rmf_activity = attributes[:'rmf_activity'] end if attributes.key?(:'cross_domain_ticket') self.cross_domain_ticket = attributes[:'cross_domain_ticket'] end if attributes.key?(:'ditpr_don_id') self.ditpr_don_id = attributes[:'ditpr_don_id'] end if attributes.key?(:'mac') self.mac = attributes[:'mac'] end if attributes.key?(:'dod_confidentiality') self.dod_confidentiality = attributes[:'dod_confidentiality'] end if attributes.key?(:'contingency_plan_tested') self.contingency_plan_tested = attributes[:'contingency_plan_tested'] end if attributes.key?(:'contingency_plan_test_date') self.contingency_plan_test_date = attributes[:'contingency_plan_test_date'] end if attributes.key?(:'security_review_date') self.security_review_date = attributes[:'security_review_date'] end if attributes.key?(:'has_open_poam_item') self.has_open_poam_item = attributes[:'has_open_poam_item'] end if attributes.key?(:'has_open_poam_item90to120_past_scheduled_completion_date') self.has_open_poam_item90to120_past_scheduled_completion_date = attributes[:'has_open_poam_item90to120_past_scheduled_completion_date'] end if attributes.key?(:'has_open_poam_item120_plus_past_scheudled_completion_date') self.has_open_poam_item120_plus_past_scheudled_completion_date = attributes[:'has_open_poam_item120_plus_past_scheudled_completion_date'] end if attributes.key?(:'impact') self.impact = attributes[:'impact'] end if attributes.key?(:'has_cui') self.has_cui = attributes[:'has_cui'] end if attributes.key?(:'has_pii') self.has_pii = attributes[:'has_pii'] end if attributes.key?(:'has_phi') self.has_phi = attributes[:'has_phi'] end if attributes.key?(:'ppsm_registry_number') self.ppsm_registry_number = attributes[:'ppsm_registry_number'] end if attributes.key?(:'interconnected_information_system_and_identifiers') self.interconnected_information_system_and_identifiers = attributes[:'interconnected_information_system_and_identifiers'] end if attributes.key?(:'is_pia_required') self.is_pia_required = attributes[:'is_pia_required'] end if attributes.key?(:'pia_status') self.pia_status = attributes[:'pia_status'] end if attributes.key?(:'pia_date') self.pia_date = attributes[:'pia_date'] end if attributes.key?(:'user_defined_field1') self.user_defined_field1 = attributes[:'user_defined_field1'] end if attributes.key?(:'user_defined_field2') self.user_defined_field2 = attributes[:'user_defined_field2'] end if attributes.key?(:'user_defined_field3') self.user_defined_field3 = attributes[:'user_defined_field3'] end if attributes.key?(:'user_defined_field4') self.user_defined_field4 = attributes[:'user_defined_field4'] end if attributes.key?(:'user_defined_field5') self.user_defined_field5 = attributes[:'user_defined_field5'] end if attributes.key?(:'current_rmf_lifecycle_step') self.current_rmf_lifecycle_step = attributes[:'current_rmf_lifecycle_step'] end if attributes.key?(:'other_information') self.other_information = attributes[:'other_information'] end if attributes.key?(:'reports_for_scorecard') self.reports_for_scorecard = attributes[:'reports_for_scorecard'] end if attributes.key?(:'package') if (value = attributes[:'package']).is_a?(Array) self.package = value end end if attributes.key?(:'connectivity_ccsd') if (value = attributes[:'connectivity_ccsd']).is_a?(Array) self.connectivity_ccsd = value end end end
List of attributes with nullable: true
# File lib/emass_client/models/systems.rb, line 369 def self.openapi_nullable Set.new([ ]) end
Attribute type mapping.
# File lib/emass_client/models/systems.rb, line 299 def self.openapi_types { :'system_id' => :'Object', :'policy' => :'Object', :'registration_type' => :'Object', :'name' => :'Object', :'acronym' => :'Object', :'description' => :'Object', :'system_owner' => :'Object', :'organization_name' => :'Object', :'secondary_organization' => :'Object', :'version_release_no' => :'Object', :'system_type' => :'Object', :'is_nss' => :'Object', :'is_public_facing' => :'Object', :'coams_id' => :'Object', :'is_type_authorization' => :'Object', :'ditpr_id' => :'Object', :'authorization_status' => :'Object', :'authorization_date' => :'Object', :'authorization_termination_date' => :'Object', :'authorization_length' => :'Object', :'terms_for_auth' => :'Object', :'security_plan_approval_status' => :'Object', :'security_plan_approval_date' => :'Object', :'mission_criticality' => :'Object', :'geographical_association' => :'Object', :'system_ownership' => :'Object', :'governing_mission_area' => :'Object', :'primary_functional_area' => :'Object', :'secondary_functional_area' => :'Object', :'primary_control_set' => :'Object', :'confidentiality' => :'Object', :'integrity' => :'Object', :'availability' => :'Object', :'applied_overlays' => :'Object', :'rmf_activity' => :'Object', :'cross_domain_ticket' => :'Object', :'ditpr_don_id' => :'Object', :'mac' => :'Object', :'dod_confidentiality' => :'Object', :'contingency_plan_tested' => :'Object', :'contingency_plan_test_date' => :'Object', :'security_review_date' => :'Object', :'has_open_poam_item' => :'Object', :'has_open_poam_item90to120_past_scheduled_completion_date' => :'Object', :'has_open_poam_item120_plus_past_scheudled_completion_date' => :'Object', :'impact' => :'Object', :'has_cui' => :'Object', :'has_pii' => :'Object', :'has_phi' => :'Object', :'ppsm_registry_number' => :'Object', :'interconnected_information_system_and_identifiers' => :'Object', :'is_pia_required' => :'Object', :'pia_status' => :'Object', :'pia_date' => :'Object', :'user_defined_field1' => :'Object', :'user_defined_field2' => :'Object', :'user_defined_field3' => :'Object', :'user_defined_field4' => :'Object', :'user_defined_field5' => :'Object', :'current_rmf_lifecycle_step' => :'Object', :'other_information' => :'Object', :'reports_for_scorecard' => :'Object', :'package' => :'Object', :'connectivity_ccsd' => :'Object' } end
Public Instance Methods
Checks equality by comparing each attribute. @param [Object] Object to be compared
# File lib/emass_client/models/systems.rb, line 941 def ==(o) return true if self.equal?(o) self.class == o.class && system_id == o.system_id && policy == o.policy && registration_type == o.registration_type && name == o.name && acronym == o.acronym && description == o.description && system_owner == o.system_owner && organization_name == o.organization_name && secondary_organization == o.secondary_organization && version_release_no == o.version_release_no && system_type == o.system_type && is_nss == o.is_nss && is_public_facing == o.is_public_facing && coams_id == o.coams_id && is_type_authorization == o.is_type_authorization && ditpr_id == o.ditpr_id && authorization_status == o.authorization_status && authorization_date == o.authorization_date && authorization_termination_date == o.authorization_termination_date && authorization_length == o.authorization_length && terms_for_auth == o.terms_for_auth && security_plan_approval_status == o.security_plan_approval_status && security_plan_approval_date == o.security_plan_approval_date && mission_criticality == o.mission_criticality && geographical_association == o.geographical_association && system_ownership == o.system_ownership && governing_mission_area == o.governing_mission_area && primary_functional_area == o.primary_functional_area && secondary_functional_area == o.secondary_functional_area && primary_control_set == o.primary_control_set && confidentiality == o.confidentiality && integrity == o.integrity && availability == o.availability && applied_overlays == o.applied_overlays && rmf_activity == o.rmf_activity && cross_domain_ticket == o.cross_domain_ticket && ditpr_don_id == o.ditpr_don_id && mac == o.mac && dod_confidentiality == o.dod_confidentiality && contingency_plan_tested == o.contingency_plan_tested && contingency_plan_test_date == o.contingency_plan_test_date && security_review_date == o.security_review_date && has_open_poam_item == o.has_open_poam_item && has_open_poam_item90to120_past_scheduled_completion_date == o.has_open_poam_item90to120_past_scheduled_completion_date && has_open_poam_item120_plus_past_scheudled_completion_date == o.has_open_poam_item120_plus_past_scheudled_completion_date && impact == o.impact && has_cui == o.has_cui && has_pii == o.has_pii && has_phi == o.has_phi && ppsm_registry_number == o.ppsm_registry_number && interconnected_information_system_and_identifiers == o.interconnected_information_system_and_identifiers && is_pia_required == o.is_pia_required && pia_status == o.pia_status && pia_date == o.pia_date && user_defined_field1 == o.user_defined_field1 && user_defined_field2 == o.user_defined_field2 && user_defined_field3 == o.user_defined_field3 && user_defined_field4 == o.user_defined_field4 && user_defined_field5 == o.user_defined_field5 && current_rmf_lifecycle_step == o.current_rmf_lifecycle_step && other_information == o.other_information && reports_for_scorecard == o.reports_for_scorecard && package == o.package && connectivity_ccsd == o.connectivity_ccsd end
Deserializes the data based on type @param string type Data type @param string value Value to be deserialized @return [Object] Deserialized data
# File lib/emass_client/models/systems.rb, line 1055 def _deserialize(type, value) case type.to_sym when :DateTime DateTime.parse(value) when :Date Date.parse(value) when :String value.to_s when :Integer value.to_i when :Float value.to_f when :Boolean if value.to_s =~ /\A(true|t|yes|y|1)\z/i true else false end when :Object # generic object (usually a Hash), return directly value when /\AArray<(?<inner_type>.+)>\z/ inner_type = Regexp.last_match[:inner_type] value.map { |v| _deserialize(inner_type, v) } when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/ k_type = Regexp.last_match[:k_type] v_type = Regexp.last_match[:v_type] {}.tap do |hash| value.each do |k, v| hash[_deserialize(k_type, k)] = _deserialize(v_type, v) end end else # model EmassClient.const_get(type).build_from_hash(value) end end
Outputs non-array value in the form of hash For object, use to_hash. Otherwise, just return the value @param [Object] value Any valid value @return [Hash] Returns the value in the form of hash
# File lib/emass_client/models/systems.rb, line 1124 def _to_hash(value) if value.is_a?(Array) value.compact.map { |v| _to_hash(v) } elsif value.is_a?(Hash) {}.tap do |hash| value.each { |k, v| hash[k] = _to_hash(v) } end elsif value.respond_to? :to_hash value.to_hash else value end end
Custom attribute writer method checking allowed values (enum). @param [Object] applied_overlays
Object to be assigned
# File lib/emass_client/models/systems.rb, line 871 def applied_overlays=(applied_overlays) validator = EnumAttributeValidator.new('Object', ['Classified Information', 'Privacy', 'Cross Domain Solution (CDS)', 'Financial Management', 'Intelligence', 'Nuclear Command, Communication, Control Systems (NC3)', 'Cloud Service Provider (CSP)']) unless validator.valid?(applied_overlays) fail ArgumentError, "invalid value for \"applied_overlays\", must be one of #{validator.allowable_values}." end @applied_overlays = applied_overlays end
Custom attribute writer method checking allowed values (enum). @param [Object] availability Object to be assigned
# File lib/emass_client/models/systems.rb, line 861 def availability=(availability) validator = EnumAttributeValidator.new('Object', ['High', 'Moderate', 'Low']) unless validator.valid?(availability) fail ArgumentError, "invalid value for \"availability\", must be one of #{validator.allowable_values}." end @availability = availability end
Builds the object from hash @param [Hash] attributes Model attributes in the form of hash @return [Object] Returns the model itself
# File lib/emass_client/models/systems.rb, line 1032 def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) self.class.openapi_types.each_pair do |key, type| if type =~ /\AArray<(.*)>/i # check to ensure the input is an array given that the attribute # is documented as an array but the input is not if attributes[self.class.attribute_map[key]].is_a?(Array) self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) end elsif !attributes[self.class.attribute_map[key]].nil? self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) self.send("#{key}=", nil) end end self end
Custom attribute writer method checking allowed values (enum). @param [Object] confidentiality Object to be assigned
# File lib/emass_client/models/systems.rb, line 841 def confidentiality=(confidentiality) validator = EnumAttributeValidator.new('Object', ['High', 'Moderate', 'Low']) unless validator.valid?(confidentiality) fail ArgumentError, "invalid value for \"confidentiality\", must be one of #{validator.allowable_values}." end @confidentiality = confidentiality end
Custom attribute writer method checking allowed values (enum). @param [Object] current_rmf_lifecycle_step
Object to be assigned
# File lib/emass_client/models/systems.rb, line 931 def current_rmf_lifecycle_step=(current_rmf_lifecycle_step) validator = EnumAttributeValidator.new('Object', ['1 – Categorize', '2 – Select', '3 – Implement', '4 – Assess', '5 – Authorize', '6 – Monitor']) unless validator.valid?(current_rmf_lifecycle_step) fail ArgumentError, "invalid value for \"current_rmf_lifecycle_step\", must be one of #{validator.allowable_values}." end @current_rmf_lifecycle_step = current_rmf_lifecycle_step end
Custom attribute writer method checking allowed values (enum). @param [Object] dod_confidentiality
Object to be assigned
# File lib/emass_client/models/systems.rb, line 901 def dod_confidentiality=(dod_confidentiality) validator = EnumAttributeValidator.new('Object', ['Public', 'Sensitive', 'Classified']) unless validator.valid?(dod_confidentiality) fail ArgumentError, "invalid value for \"dod_confidentiality\", must be one of #{validator.allowable_values}." end @dod_confidentiality = dod_confidentiality end
@see the ‘==` method @param [Object] Object to be compared
# File lib/emass_client/models/systems.rb, line 1012 def eql?(o) self == o end
Custom attribute writer method checking allowed values (enum). @param [Object] geographical_association
Object to be assigned
# File lib/emass_client/models/systems.rb, line 781 def geographical_association=(geographical_association) validator = EnumAttributeValidator.new('Object', ['VA Operated IS', 'non-VA Operated IS']) unless validator.valid?(geographical_association) fail ArgumentError, "invalid value for \"geographical_association\", must be one of #{validator.allowable_values}." end @geographical_association = geographical_association end
Custom attribute writer method checking allowed values (enum). @param [Object] governing_mission_area
Object to be assigned
# File lib/emass_client/models/systems.rb, line 801 def governing_mission_area=(governing_mission_area) validator = EnumAttributeValidator.new('Object', ['Business MA (BMA)', 'DoD portion of the Intelligence MA (DIMA)', 'Enterprise Information Environment MA (EIEMA)', 'Warfighting MA (WMA)']) unless validator.valid?(governing_mission_area) fail ArgumentError, "invalid value for \"governing_mission_area\", must be one of #{validator.allowable_values}." end @governing_mission_area = governing_mission_area end
Calculates hash code according to all attributes. @return [Integer] Hash code
# File lib/emass_client/models/systems.rb, line 1018 def hash [system_id, policy, registration_type, name, acronym, description, system_owner, organization_name, secondary_organization, version_release_no, system_type, is_nss, is_public_facing, coams_id, is_type_authorization, ditpr_id, authorization_status, authorization_date, authorization_termination_date, authorization_length, terms_for_auth, security_plan_approval_status, security_plan_approval_date, mission_criticality, geographical_association, system_ownership, governing_mission_area, primary_functional_area, secondary_functional_area, primary_control_set, confidentiality, integrity, availability, applied_overlays, rmf_activity, cross_domain_ticket, ditpr_don_id, mac, dod_confidentiality, contingency_plan_tested, contingency_plan_test_date, security_review_date, has_open_poam_item, has_open_poam_item90to120_past_scheduled_completion_date, has_open_poam_item120_plus_past_scheudled_completion_date, impact, has_cui, has_pii, has_phi, ppsm_registry_number, interconnected_information_system_and_identifiers, is_pia_required, pia_status, pia_date, user_defined_field1, user_defined_field2, user_defined_field3, user_defined_field4, user_defined_field5, current_rmf_lifecycle_step, other_information, reports_for_scorecard, package, connectivity_ccsd].hash end
Custom attribute writer method checking allowed values (enum). @param [Object] impact Object to be assigned
# File lib/emass_client/models/systems.rb, line 911 def impact=(impact) validator = EnumAttributeValidator.new('Object', ['low', 'Moderate', 'High']) unless validator.valid?(impact) fail ArgumentError, "invalid value for \"impact\", must be one of #{validator.allowable_values}." end @impact = impact end
Custom attribute writer method checking allowed values (enum). @param [Object] integrity Object to be assigned
# File lib/emass_client/models/systems.rb, line 851 def integrity=(integrity) validator = EnumAttributeValidator.new('Object', ['High', 'Moderate', 'Low']) unless validator.valid?(integrity) fail ArgumentError, "invalid value for \"integrity\", must be one of #{validator.allowable_values}." end @integrity = integrity end
Show invalid properties with the reasons. Usually used together with valid? @return Array for valid properties with the reasons
# File lib/emass_client/models/systems.rb, line 652 def list_invalid_properties invalid_properties = Array.new invalid_properties end
Custom attribute writer method checking allowed values (enum). @param [Object] mac Object to be assigned
# File lib/emass_client/models/systems.rb, line 891 def mac=(mac) validator = EnumAttributeValidator.new('Object', ['I', 'II', 'III']) unless validator.valid?(mac) fail ArgumentError, "invalid value for \"mac\", must be one of #{validator.allowable_values}." end @mac = mac end
Custom attribute writer method checking allowed values (enum). @param [Object] mission_criticality
Object to be assigned
# File lib/emass_client/models/systems.rb, line 771 def mission_criticality=(mission_criticality) validator = EnumAttributeValidator.new('Object', ['Mission Critical (MC)', 'Mission Essential (ME)', 'Mission Support (MS)']) unless validator.valid?(mission_criticality) fail ArgumentError, "invalid value for \"mission_criticality\", must be one of #{validator.allowable_values}." end @mission_criticality = mission_criticality end
Custom attribute writer method checking allowed values (enum). @param [Object] organization_name
Object to be assigned
# File lib/emass_client/models/systems.rb, line 731 def organization_name=(organization_name) validator = EnumAttributeValidator.new('Object', ['Army', 'Navy', 'Air Force', 'Marines', 'DoD', 'Defense Information Systems Agency']) unless validator.valid?(organization_name) fail ArgumentError, "invalid value for \"organization_name\", must be one of #{validator.allowable_values}." end @organization_name = organization_name end
Custom attribute writer method checking allowed values (enum). @param [Object] pia_status
Object to be assigned
# File lib/emass_client/models/systems.rb, line 921 def pia_status=(pia_status) validator = EnumAttributeValidator.new('Object', ['Not Started', 'In Progress', 'Completed']) unless validator.valid?(pia_status) fail ArgumentError, "invalid value for \"pia_status\", must be one of #{validator.allowable_values}." end @pia_status = pia_status end
Custom attribute writer method checking allowed values (enum). @param [Object] policy Object to be assigned
# File lib/emass_client/models/systems.rb, line 711 def policy=(policy) validator = EnumAttributeValidator.new('Object', ['RMF', 'DIACAP']) unless validator.valid?(policy) fail ArgumentError, "invalid value for \"policy\", must be one of #{validator.allowable_values}." end @policy = policy end
Custom attribute writer method checking allowed values (enum). @param [Object] primary_control_set
Object to be assigned
Custom attribute writer method checking allowed values (enum). @param [Object] primary_functional_area
Object to be assigned
# File lib/emass_client/models/systems.rb, line 811 def primary_functional_area=(primary_functional_area) validator = EnumAttributeValidator.new('Object', ['Allies', 'CBRNE', 'Civilian Personnel & Readiness', 'Command and Control', 'Communications', 'Communications Security (COMSEC)', 'Economic', 'Environmental Security', 'Facilities', 'Finance', 'Health/Medical', 'Human Resources', 'Information Management', 'Inspector General', 'Intelligence', 'Logistics', 'Military Personnel and Readiness', 'Nuclear', 'Nuclear, Chemical, and Biological', 'Operations', 'Personnel and Readiness', 'Procurement/Acquisition', 'Reserve Components', 'Scientific and Engineering', 'Space and Weather', 'Test and Evaluation', 'Trainers', 'Weapons', 'Legal', 'Transportation', 'Not Applicable (N/A)', 'Integration and Testing']) unless validator.valid?(primary_functional_area) fail ArgumentError, "invalid value for \"primary_functional_area\", must be one of #{validator.allowable_values}." end @primary_functional_area = primary_functional_area end
Custom attribute writer method checking allowed values (enum). @param [Object] registration_type
Object to be assigned
# File lib/emass_client/models/systems.rb, line 721 def registration_type=(registration_type) validator = EnumAttributeValidator.new('Object', ['Assess and Authorize', 'Assess Only', 'Guest', 'Regular', 'Functional', 'Cloud Service Provider', 'Common Control Provider']) unless validator.valid?(registration_type) fail ArgumentError, "invalid value for \"registration_type\", must be one of #{validator.allowable_values}." end @registration_type = registration_type end
Custom attribute writer method checking allowed values (enum). @param [Object] rmf_activity
Object to be assigned
# File lib/emass_client/models/systems.rb, line 881 def rmf_activity=(rmf_activity) validator = EnumAttributeValidator.new('Object', ['Initiate and plan C&A', 'Initiate and plan cybersecurity Assessment Authorization', 'Implement and validate assigned security controls', 'Make assessment determination and authorization decision', 'Maintain ATO and conduct reviews', 'Decommission']) unless validator.valid?(rmf_activity) fail ArgumentError, "invalid value for \"rmf_activity\", must be one of #{validator.allowable_values}." end @rmf_activity = rmf_activity end
Custom attribute writer method checking allowed values (enum). @param [Object] secondary_functional_area
Object to be assigned
# File lib/emass_client/models/systems.rb, line 821 def secondary_functional_area=(secondary_functional_area) validator = EnumAttributeValidator.new('Object', ['Allies', 'CBRNE', 'Civilian Personnel & Readiness', 'Command and Control', 'Communications', 'Communications Security (COMSEC)', 'Economic', 'Environmental Security', 'Facilities', 'Finance', 'Health/Medical', 'Human Resources', 'Information Management', 'Inspector General', 'Intelligence', 'Logistics', 'Military Personnel and Readiness', 'Nuclear', 'Nuclear, Chemical, and Biological', 'Operations', 'Personnel and Readiness', 'Procurement/Acquisition', 'Reserve Components', 'Scientific and Engineering', 'Space and Weather', 'Test and Evaluation', 'Trainers', 'Weapons', 'Legal', 'Transportation', 'Not Applicable (N/A)', 'Integration and Testing']) unless validator.valid?(secondary_functional_area) fail ArgumentError, "invalid value for \"secondary_functional_area\", must be one of #{validator.allowable_values}." end @secondary_functional_area = secondary_functional_area end
Custom attribute writer method checking allowed values (enum). @param [Object] security_plan_approval_status
Object to be assigned
# File lib/emass_client/models/systems.rb, line 761 def security_plan_approval_status=(security_plan_approval_status) validator = EnumAttributeValidator.new('Object', ['Approved', 'Not Yet Approved', 'Denied']) unless validator.valid?(security_plan_approval_status) fail ArgumentError, "invalid value for \"security_plan_approval_status\", must be one of #{validator.allowable_values}." end @security_plan_approval_status = security_plan_approval_status end
Custom attribute writer method checking allowed values (enum). @param [Object] system_ownership
Object to be assigned
# File lib/emass_client/models/systems.rb, line 791 def system_ownership=(system_ownership) validator = EnumAttributeValidator.new('Object', ['Region 1', 'Region 2', 'Region 3', 'Region 4']) unless validator.valid?(system_ownership) fail ArgumentError, "invalid value for \"system_ownership\", must be one of #{validator.allowable_values}." end @system_ownership = system_ownership end
Custom attribute writer method checking allowed values (enum). @param [Object] system_type
Object to be assigned
# File lib/emass_client/models/systems.rb, line 741 def system_type=(system_type) validator = EnumAttributeValidator.new('Object', ['IS Major Application', 'IS Enclave', 'Platform IT', 'Platform IT System', 'Platform IT Interconnection', 'AIS Application', 'Outsourced IT-Based Process (DoD-controlled)', 'Enclave', 'Outsourced IT-Based Process (service provider shared)']) unless validator.valid?(system_type) fail ArgumentError, "invalid value for \"system_type\", must be one of #{validator.allowable_values}." end @system_type = system_type end
Returns the object in the form of hash @return [Hash] Returns the object in the form of hash
# File lib/emass_client/models/systems.rb, line 1106 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = self.send(attr) if value.nil? is_nullable = self.class.openapi_nullable.include?(attr) next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) end hash[param] = _to_hash(value) end hash end
Returns the string representation of the object @return [String] String presentation of the object
# File lib/emass_client/models/systems.rb, line 1094 def to_s to_hash.to_s end
Check to see if the all the properties in the model are valid @return true if the model is valid
# File lib/emass_client/models/systems.rb, line 659 def valid? policy_validator = EnumAttributeValidator.new('Object', ['RMF', 'DIACAP']) return false unless policy_validator.valid?(@policy) registration_type_validator = EnumAttributeValidator.new('Object', ['Assess and Authorize', 'Assess Only', 'Guest', 'Regular', 'Functional', 'Cloud Service Provider', 'Common Control Provider']) return false unless registration_type_validator.valid?(@registration_type) organization_name_validator = EnumAttributeValidator.new('Object', ['Army', 'Navy', 'Air Force', 'Marines', 'DoD', 'Defense Information Systems Agency']) return false unless organization_name_validator.valid?(@organization_name) system_type_validator = EnumAttributeValidator.new('Object', ['IS Major Application', 'IS Enclave', 'Platform IT', 'Platform IT System', 'Platform IT Interconnection', 'AIS Application', 'Outsourced IT-Based Process (DoD-controlled)', 'Enclave', 'Outsourced IT-Based Process (service provider shared)']) return false unless system_type_validator.valid?(@system_type) authorization_status_validator = EnumAttributeValidator.new('Object', ['Authority to Operate (ATO)', 'Authority to Operate with Conditions (ATO) w/Conditions)', 'Interim Authority to Test (IATT)', 'Interim Authority to Operate (IATO)', 'Denied Authority to Operate (DATO)', 'Not Yet Authorized', 'Unaccredited', 'Decommissioned']) return false unless authorization_status_validator.valid?(@authorization_status) security_plan_approval_status_validator = EnumAttributeValidator.new('Object', ['Approved', 'Not Yet Approved', 'Denied']) return false unless security_plan_approval_status_validator.valid?(@security_plan_approval_status) mission_criticality_validator = EnumAttributeValidator.new('Object', ['Mission Critical (MC)', 'Mission Essential (ME)', 'Mission Support (MS)']) return false unless mission_criticality_validator.valid?(@mission_criticality) geographical_association_validator = EnumAttributeValidator.new('Object', ['VA Operated IS', 'non-VA Operated IS']) return false unless geographical_association_validator.valid?(@geographical_association) system_ownership_validator = EnumAttributeValidator.new('Object', ['Region 1', 'Region 2', 'Region 3', 'Region 4']) return false unless system_ownership_validator.valid?(@system_ownership) governing_mission_area_validator = EnumAttributeValidator.new('Object', ['Business MA (BMA)', 'DoD portion of the Intelligence MA (DIMA)', 'Enterprise Information Environment MA (EIEMA)', 'Warfighting MA (WMA)']) return false unless governing_mission_area_validator.valid?(@governing_mission_area) primary_functional_area_validator = EnumAttributeValidator.new('Object', ['Allies', 'CBRNE', 'Civilian Personnel & Readiness', 'Command and Control', 'Communications', 'Communications Security (COMSEC)', 'Economic', 'Environmental Security', 'Facilities', 'Finance', 'Health/Medical', 'Human Resources', 'Information Management', 'Inspector General', 'Intelligence', 'Logistics', 'Military Personnel and Readiness', 'Nuclear', 'Nuclear, Chemical, and Biological', 'Operations', 'Personnel and Readiness', 'Procurement/Acquisition', 'Reserve Components', 'Scientific and Engineering', 'Space and Weather', 'Test and Evaluation', 'Trainers', 'Weapons', 'Legal', 'Transportation', 'Not Applicable (N/A)', 'Integration and Testing']) return false unless primary_functional_area_validator.valid?(@primary_functional_area) secondary_functional_area_validator = EnumAttributeValidator.new('Object', ['Allies', 'CBRNE', 'Civilian Personnel & Readiness', 'Command and Control', 'Communications', 'Communications Security (COMSEC)', 'Economic', 'Environmental Security', 'Facilities', 'Finance', 'Health/Medical', 'Human Resources', 'Information Management', 'Inspector General', 'Intelligence', 'Logistics', 'Military Personnel and Readiness', 'Nuclear', 'Nuclear, Chemical, and Biological', 'Operations', 'Personnel and Readiness', 'Procurement/Acquisition', 'Reserve Components', 'Scientific and Engineering', 'Space and Weather', 'Test and Evaluation', 'Trainers', 'Weapons', 'Legal', 'Transportation', 'Not Applicable (N/A)', 'Integration and Testing']) return false unless secondary_functional_area_validator.valid?(@secondary_functional_area) primary_control_set_validator = EnumAttributeValidator.new('Object', ['NIST SP 800-53 Revision 4', 'DoDI 8500.2']) return false unless primary_control_set_validator.valid?(@primary_control_set) confidentiality_validator = EnumAttributeValidator.new('Object', ['High', 'Moderate', 'Low']) return false unless confidentiality_validator.valid?(@confidentiality) integrity_validator = EnumAttributeValidator.new('Object', ['High', 'Moderate', 'Low']) return false unless integrity_validator.valid?(@integrity) availability_validator = EnumAttributeValidator.new('Object', ['High', 'Moderate', 'Low']) return false unless availability_validator.valid?(@availability) applied_overlays_validator = EnumAttributeValidator.new('Object', ['Classified Information', 'Privacy', 'Cross Domain Solution (CDS)', 'Financial Management', 'Intelligence', 'Nuclear Command, Communication, Control Systems (NC3)', 'Cloud Service Provider (CSP)']) return false unless applied_overlays_validator.valid?(@applied_overlays) rmf_activity_validator = EnumAttributeValidator.new('Object', ['Initiate and plan C&A', 'Initiate and plan cybersecurity Assessment Authorization', 'Implement and validate assigned security controls', 'Make assessment determination and authorization decision', 'Maintain ATO and conduct reviews', 'Decommission']) return false unless rmf_activity_validator.valid?(@rmf_activity) mac_validator = EnumAttributeValidator.new('Object', ['I', 'II', 'III']) return false unless mac_validator.valid?(@mac) dod_confidentiality_validator = EnumAttributeValidator.new('Object', ['Public', 'Sensitive', 'Classified']) return false unless dod_confidentiality_validator.valid?(@dod_confidentiality) impact_validator = EnumAttributeValidator.new('Object', ['low', 'Moderate', 'High']) return false unless impact_validator.valid?(@impact) pia_status_validator = EnumAttributeValidator.new('Object', ['Not Started', 'In Progress', 'Completed']) return false unless pia_status_validator.valid?(@pia_status) current_rmf_lifecycle_step_validator = EnumAttributeValidator.new('Object', ['1 – Categorize', '2 – Select', '3 – Implement', '4 – Assess', '5 – Authorize', '6 – Monitor']) return false unless current_rmf_lifecycle_step_validator.valid?(@current_rmf_lifecycle_step) true end