emass_client 3.12.0 → 3.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +159 -129
  3. data/lib/emass_client/api/artifacts_api.rb +40 -48
  4. data/lib/emass_client/api/artifacts_export_api.rb +5 -5
  5. data/lib/emass_client/api/cac_api.rb +10 -10
  6. data/lib/emass_client/api/cloud_resource_results_api.rb +10 -10
  7. data/lib/emass_client/api/cmmc_assessment_dashboards_api.rb +314 -0
  8. data/lib/emass_client/api/cmmc_assessments_api.rb +5 -5
  9. data/lib/emass_client/api/coast_guard_system_fisma_metrics_dashboard_api.rb +95 -0
  10. data/lib/emass_client/api/container_scan_results_api.rb +10 -10
  11. data/lib/emass_client/api/controls_api.rb +17 -17
  12. data/lib/emass_client/api/device_scan_results_api.rb +112 -0
  13. data/lib/emass_client/api/hardware_baseline_api.rb +313 -0
  14. data/lib/emass_client/api/milestones_api.rb +15 -15
  15. data/lib/emass_client/api/organization_migration_status_dashboard_api.rb +95 -0
  16. data/lib/emass_client/api/pac_api.rb +10 -10
  17. data/lib/emass_client/api/poam_api.rb +40 -40
  18. data/lib/emass_client/api/registration_api.rb +5 -5
  19. data/lib/emass_client/api/software_baseline_api.rb +313 -0
  20. data/lib/emass_client/api/static_code_scans_api.rb +9 -9
  21. data/lib/emass_client/api/system_application_findings_dashboards_api.rb +168 -0
  22. data/lib/emass_client/api/{enterprise_artifacts_dashboards_api.rb → system_artifacts_dashboards_api.rb} +21 -21
  23. data/lib/emass_client/api/system_associations_dashboard_api.rb +8 -8
  24. data/lib/emass_client/api/system_atciatc_dashboard_api.rb +95 -0
  25. data/lib/emass_client/api/system_conmon_integration_status_dashboard_api.rb +8 -8
  26. data/lib/emass_client/api/system_connectivity_ccsd_dashboards_api.rb +168 -0
  27. data/lib/emass_client/api/system_critical_assets_dashboard_api.rb +95 -0
  28. data/lib/emass_client/api/system_device_findings_dashboards_api.rb +168 -0
  29. data/lib/emass_client/api/system_fisma_metrics_dashboard_api.rb +95 -0
  30. data/lib/emass_client/api/{hardware_baseline_dashboards_api.rb → system_hardware_dashboards_api.rb} +21 -21
  31. data/lib/emass_client/api/system_migration_status_dashboard_api.rb +95 -0
  32. data/lib/emass_client/api/{enterprise_poam_dashboards_api.rb → system_poam_dashboards_api.rb} +21 -21
  33. data/lib/emass_client/api/{ports_and_protocols_dashboards_api.rb → system_ports_protocols_dashboards_api.rb} +21 -21
  34. data/lib/emass_client/api/system_privacy_dashboard_api.rb +95 -0
  35. data/lib/emass_client/api/system_questionnaire_dashboards_api.rb +168 -0
  36. data/lib/emass_client/api/system_roles_api.rb +8 -8
  37. data/lib/emass_client/api/{enterprise_security_controls_dashboards_api.rb → system_security_controls_dashboards_api.rb} +31 -31
  38. data/lib/emass_client/api/{enterprise_sensor_based_hardware_resources_dashboards_api.rb → system_sensor_hardware_dashboards_api.rb} +21 -21
  39. data/lib/emass_client/api/{enterprise_sensor_based_software_resources_dashboards_api.rb → system_sensor_software_dashboards_api.rb} +29 -29
  40. data/lib/emass_client/api/{software_baseline_dashboards_api.rb → system_software_dashboards_api.rb} +21 -21
  41. data/lib/emass_client/api/system_status_dashboard_api.rb +8 -8
  42. data/lib/emass_client/api/{enterprise_terms_conditions_dashboards_api.rb → system_terms_conditions_dashboards_api.rb} +21 -21
  43. data/lib/emass_client/api/system_vulnerability_dashboard_api.rb +95 -0
  44. data/lib/emass_client/api/{enterprise_vulnerability_dashboards_api.rb → system_workflows_dashboards_api.rb} +53 -53
  45. data/lib/emass_client/api/systems_api.rb +16 -22
  46. data/lib/emass_client/api/test_api.rb +5 -5
  47. data/lib/emass_client/api/test_results_api.rb +10 -10
  48. data/lib/emass_client/api/{users_dashboard_api.rb → user_system_assignments_dashboard_api.rb} +13 -13
  49. data/lib/emass_client/api/va_system_dashboards_api.rb +679 -0
  50. data/lib/emass_client/api/vaombfisma_dashboard_api.rb +95 -0
  51. data/lib/emass_client/api/workflow_definitions_api.rb +9 -9
  52. data/lib/emass_client/api/workflow_instances_api.rb +14 -14
  53. data/lib/emass_client/api_client.rb +44 -31
  54. data/lib/emass_client/api_error.rb +4 -4
  55. data/lib/emass_client/configuration.rb +42 -12
  56. data/lib/emass_client/models/{response201.rb → api_rule_failed.rb} +17 -11
  57. data/lib/emass_client/models/{response490_meta.rb → api_rule_failed_meta.rb} +16 -10
  58. data/lib/emass_client/models/artifacts_ids.rb +221 -0
  59. data/lib/emass_client/models/artifacts_optional_fields.rb +298 -0
  60. data/lib/emass_client/models/artifacts_read_only_fields.rb +255 -0
  61. data/lib/emass_client/models/artifacts_request_delete_body_inner.rb +14 -8
  62. data/lib/emass_client/models/artifacts_required_fields.rb +252 -0
  63. data/lib/emass_client/models/artifacts_response_del.rb +14 -8
  64. data/lib/emass_client/models/artifacts_response_del_data_inner.rb +14 -8
  65. data/lib/emass_client/models/artifacts_response_get.rb +15 -9
  66. data/lib/emass_client/models/{artifacts_get.rb → artifacts_response_get_data_inner.rb} +78 -62
  67. data/lib/emass_client/models/artifacts_response_put_post.rb +14 -8
  68. data/lib/emass_client/models/artifacts_response_put_post_data_inner.rb +19 -13
  69. data/lib/emass_client/models/{response400.rb → bad_request.rb} +17 -11
  70. data/lib/emass_client/models/{response400_meta.rb → bad_request_meta.rb} +16 -10
  71. data/lib/emass_client/models/cac_get.rb +14 -8
  72. data/lib/emass_client/models/cac_response_get.rb +14 -8
  73. data/lib/emass_client/models/cac_response_post.rb +14 -8
  74. data/lib/emass_client/models/cac_response_post_data_inner.rb +19 -13
  75. data/lib/emass_client/models/cloud_resources_delete.rb +14 -8
  76. data/lib/emass_client/models/cloud_resources_delete_body_inner.rb +14 -8
  77. data/lib/emass_client/models/cloud_resources_post_delete.rb +19 -13
  78. data/lib/emass_client/models/cloud_resources_response_post.rb +14 -8
  79. data/lib/emass_client/models/cmmc_get.rb +84 -123
  80. data/lib/emass_client/models/cmmc_response_get.rb +14 -8
  81. data/lib/emass_client/models/connectivity_ccsd.rb +14 -8
  82. data/lib/emass_client/models/container_resources_delete_body_inner.rb +14 -8
  83. data/lib/emass_client/models/containers_resources_post_delete.rb +19 -13
  84. data/lib/emass_client/models/containers_response_delete.rb +14 -8
  85. data/lib/emass_client/models/containers_response_post.rb +14 -8
  86. data/lib/emass_client/models/controls_conditional_fields.rb +357 -0
  87. data/lib/emass_client/models/controls_ids.rb +221 -0
  88. data/lib/emass_client/models/controls_optional_fields.rb +471 -0
  89. data/lib/emass_client/models/controls_put.rb +19 -13
  90. data/lib/emass_client/models/controls_read_only_fields.rb +277 -0
  91. data/lib/emass_client/models/controls_required_fields.rb +295 -0
  92. data/lib/emass_client/models/controls_response_get.rb +15 -9
  93. data/lib/emass_client/models/{controls_get.rb → controls_response_get_data_inner.rb} +155 -138
  94. data/lib/emass_client/models/controls_response_put.rb +14 -8
  95. data/lib/emass_client/models/{response403.rb → created.rb} +17 -11
  96. data/lib/emass_client/models/{response201_meta.rb → created_meta.rb} +16 -10
  97. data/lib/emass_client/models/definition_transitions.rb +14 -8
  98. data/lib/emass_client/models/{poam_response_post.rb → device_scan_results_response_post.rb} +17 -11
  99. data/lib/emass_client/models/{success200_response_data_inner.rb → device_scan_results_response_post_data_inner.rb} +51 -16
  100. data/lib/emass_client/models/{response401.rb → forbidden.rb} +17 -11
  101. data/lib/emass_client/models/{response403_meta.rb → forbidden_meta.rb} +16 -10
  102. data/lib/emass_client/models/get_system_status_details200_response.rb +240 -0
  103. data/lib/emass_client/models/hw_baseline_conditional_fields.rb +244 -0
  104. data/lib/emass_client/models/hw_baseline_ids.rb +221 -0
  105. data/lib/emass_client/models/hw_baseline_optional_fields.rb +354 -0
  106. data/lib/emass_client/models/hw_baseline_read_only_fields.rb +222 -0
  107. data/lib/emass_client/models/hw_baseline_request_delete_body_inner.rb +220 -0
  108. data/lib/emass_client/models/hw_baseline_required_fields.rb +221 -0
  109. data/lib/emass_client/models/{poam_response_delete.rb → hw_baseline_response_delete.rb} +17 -11
  110. data/lib/emass_client/models/hw_baseline_response_delete_data_inner.rb +274 -0
  111. data/lib/emass_client/models/{dashboard_mock_response.rb → hw_baseline_response_get.rb} +18 -12
  112. data/lib/emass_client/models/hw_baseline_response_get_data_inner.rb +429 -0
  113. data/lib/emass_client/models/{success200_response.rb → hw_baseline_response_post_put.rb} +17 -11
  114. data/lib/emass_client/models/hw_baseline_response_post_put_data_inner.rb +274 -0
  115. data/lib/emass_client/models/{instances_transitions.rb → instance_transitions.rb} +16 -10
  116. data/lib/emass_client/models/internal_server_error.rb +220 -0
  117. data/lib/emass_client/models/{response500_meta.rb → internal_server_error_meta.rb} +16 -10
  118. data/lib/emass_client/models/length_required.rb +220 -0
  119. data/lib/emass_client/models/{response411_meta.rb → length_required_meta.rb} +16 -10
  120. data/lib/emass_client/models/method_not_allowed.rb +220 -0
  121. data/lib/emass_client/models/{response405_meta.rb → method_not_allowed_meta.rb} +16 -10
  122. data/lib/emass_client/models/milestone_response_delete.rb +14 -8
  123. data/lib/emass_client/models/milestone_response_get.rb +14 -8
  124. data/lib/emass_client/models/milestone_response_get_milestone.rb +14 -8
  125. data/lib/emass_client/models/milestone_response_post.rb +14 -8
  126. data/lib/emass_client/models/milestone_response_put.rb +14 -8
  127. data/lib/emass_client/models/milestones_fields.rb +222 -0
  128. data/lib/emass_client/models/milestones_get.rb +43 -15
  129. data/lib/emass_client/models/milestones_put_post_delete.rb +19 -13
  130. data/lib/emass_client/models/milestones_request_delete_body_inner.rb +14 -8
  131. data/lib/emass_client/models/milestones_required_post.rb +23 -40
  132. data/lib/emass_client/models/milestones_required_post_milestones_inner.rb +265 -0
  133. data/lib/emass_client/models/milestones_required_put.rb +23 -57
  134. data/lib/emass_client/models/{ssps.rb → milestones_required_put_milestones_inner.rb} +89 -35
  135. data/lib/emass_client/models/{response404.rb → not_found.rb} +16 -10
  136. data/lib/emass_client/models/pac_get.rb +30 -13
  137. data/lib/emass_client/models/pac_post.rb +19 -13
  138. data/lib/emass_client/models/pac_response_get.rb +14 -8
  139. data/lib/emass_client/models/pac_response_post.rb +14 -8
  140. data/lib/emass_client/models/{dashboard_mock_response_pagination.rb → pagination.rb} +35 -29
  141. data/lib/emass_client/models/poam_conditional_fields.rb +402 -0
  142. data/lib/emass_client/models/poam_ids.rb +241 -0
  143. data/lib/emass_client/models/poam_optional_fields.rb +409 -0
  144. data/lib/emass_client/models/poam_post_put_del.rb +19 -13
  145. data/lib/emass_client/models/poam_read_only_fields.rb +332 -0
  146. data/lib/emass_client/models/poam_request_delete_body_inner.rb +14 -8
  147. data/lib/emass_client/models/poam_required_fields.rb +305 -0
  148. data/lib/emass_client/models/poam_response_get_poams.rb +15 -9
  149. data/lib/emass_client/models/poam_response_get_poams_data.rb +824 -0
  150. data/lib/emass_client/models/poam_response_get_systems.rb +15 -9
  151. data/lib/emass_client/models/{poam_get.rb → poam_response_get_systems_data_inner.rb} +325 -365
  152. data/lib/emass_client/models/{poam_response_put.rb → poam_response_post_put_delete.rb} +16 -10
  153. data/lib/emass_client/models/register.rb +14 -8
  154. data/lib/emass_client/models/register_data.rb +14 -8
  155. data/lib/emass_client/models/register_user_request_post_body.rb +24 -8
  156. data/lib/emass_client/models/response200.rb +14 -8
  157. data/lib/emass_client/models/role_category.rb +14 -8
  158. data/lib/emass_client/models/roles.rb +14 -8
  159. data/lib/emass_client/models/stage.rb +14 -8
  160. data/lib/emass_client/models/static_code_application_post.rb +14 -8
  161. data/lib/emass_client/models/static_code_post.rb +19 -13
  162. data/lib/emass_client/models/static_code_request_post_body.rb +14 -8
  163. data/lib/emass_client/models/static_code_request_post_body_application.rb +14 -8
  164. data/lib/emass_client/models/static_code_response_post.rb +14 -8
  165. data/lib/emass_client/models/sw_baseline_conditional_fields.rb +222 -0
  166. data/lib/emass_client/models/sw_baseline_ids.rb +221 -0
  167. data/lib/emass_client/models/sw_baseline_optional_fields.rb +563 -0
  168. data/lib/emass_client/models/sw_baseline_read_only_fields.rb +222 -0
  169. data/lib/emass_client/models/sw_baseline_request_delete_body_inner.rb +220 -0
  170. data/lib/emass_client/models/sw_baseline_required_fields.rb +241 -0
  171. data/lib/emass_client/models/sw_baseline_response_delete.rb +231 -0
  172. data/lib/emass_client/models/sw_baseline_response_delete_data_inner.rb +274 -0
  173. data/lib/emass_client/models/sw_baseline_response_get.rb +240 -0
  174. data/lib/emass_client/models/sw_baseline_response_get_data_inner.rb +624 -0
  175. data/lib/emass_client/models/sw_baseline_response_post_put.rb +231 -0
  176. data/lib/emass_client/models/sw_baseline_response_post_put_data_inner.rb +274 -0
  177. data/lib/emass_client/models/system_response.rb +14 -8
  178. data/lib/emass_client/models/system_roles_category_response.rb +14 -8
  179. data/lib/emass_client/models/system_roles_response.rb +14 -8
  180. data/lib/emass_client/models/system_roles_response_data_inner.rb +14 -8
  181. data/lib/emass_client/models/systems.rb +708 -86
  182. data/lib/emass_client/models/systems_response.rb +14 -8
  183. data/lib/emass_client/models/test.rb +14 -8
  184. data/lib/emass_client/models/test_data.rb +14 -8
  185. data/lib/emass_client/models/test_results_get.rb +14 -8
  186. data/lib/emass_client/models/test_results_post.rb +19 -13
  187. data/lib/emass_client/models/test_results_response_get.rb +14 -8
  188. data/lib/emass_client/models/test_results_response_post.rb +14 -8
  189. data/lib/emass_client/models/unauthorized.rb +220 -0
  190. data/lib/emass_client/models/{response401_meta.rb → unauthorized_meta.rb} +16 -10
  191. data/lib/emass_client/models/users.rb +14 -8
  192. data/lib/emass_client/models/workflow_definition_get.rb +14 -8
  193. data/lib/emass_client/models/workflow_definition_response_get.rb +14 -8
  194. data/lib/emass_client/models/workflow_instance_get.rb +28 -11
  195. data/lib/emass_client/models/workflow_instance_response_get.rb +14 -8
  196. data/lib/emass_client/models/workflow_instances_response_get.rb +15 -9
  197. data/lib/emass_client/models/workflow_instances_response_get_pagination.rb +14 -8
  198. data/lib/emass_client/version.rb +5 -5
  199. data/lib/emass_client.rb +101 -52
  200. metadata +105 -56
  201. data/lib/emass_client/api/fisma_inventory_summary_dashboards_api.rb +0 -168
  202. data/lib/emass_client/api/privacy_compliance_dashboards_api.rb +0 -168
  203. data/lib/emass_client/api/system_a20_summary_dashboard_api.rb +0 -95
  204. data/lib/emass_client/api/system_aa_summary_dashboard_api.rb +0 -95
  205. data/lib/emass_client/api/system_pl109_reporting_summary_dashboard_api.rb +0 -95
  206. data/lib/emass_client/api/threat_risks_dashboards_api.rb +0 -241
  207. data/lib/emass_client/models/mock_object.rb +0 -338
  208. data/lib/emass_client/models/response405.rb +0 -214
  209. data/lib/emass_client/models/response411.rb +0 -214
  210. data/lib/emass_client/models/response490.rb +0 -214
  211. data/lib/emass_client/models/response500.rb +0 -214
  212. data/lib/emass_client/models/workflow_instances_get.rb +0 -337
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Enterprise Mission Assurance Support Service (eMASS)
3
3
 
4
- #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. <strong>Register External Application (that use the eMASS API)</strong></br> New users will need to [register](https://nisp.emass.apps.mil/Content/Help/jobaids/eMASS_OT_NewUser_Job_Aid.pdf) an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only). Use the `Registration` POST endpoint to register the client certificate. The endpoint call returns the user `api-key`.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
4
+ #The eMASS Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The eMASS API provides an interface for application to communicate eMASS Services. For information on how to register and use the eMASS API reference the [eMASS API Getting Started](eMASSGettingStarted.md). Additional information about eMASS can be obtain by contacting the National Industrial Security Program (NISP). Points of Contact are:
5
5
 
6
- The version of the OpenAPI document: v3.12
7
- Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
6
+ The version of the OpenAPI document: v3.22
7
+ Contact: disa.global.servicedesk.mbx.ma-ticket-request@mail.mil
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.1.0-SNAPSHOT
9
+ Generator version: 7.12.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -27,16 +27,21 @@ module EmassClient
27
27
  }
28
28
  end
29
29
 
30
+ # Returns attribute mapping this model knows about
31
+ def self.acceptable_attribute_map
32
+ attribute_map
33
+ end
34
+
30
35
  # Returns all the JSON keys this model knows about
31
36
  def self.acceptable_attributes
32
- attribute_map.values
37
+ acceptable_attribute_map.values
33
38
  end
34
39
 
35
40
  # Attribute type mapping.
36
41
  def self.openapi_types
37
42
  {
38
43
  :'meta' => :'Response200',
39
- :'data' => :'Array<ControlsGet>'
44
+ :'data' => :'Array<ControlsResponseGetDataInner>'
40
45
  }
41
46
  end
42
47
 
@@ -55,9 +60,10 @@ module EmassClient
55
60
  end
56
61
 
57
62
  # check to see if the attribute exists and convert string to symbol for hash key
63
+ acceptable_attribute_map = self.class.acceptable_attribute_map
58
64
  attributes = attributes.each_with_object({}) { |(k, v), h|
59
- if (!self.class.attribute_map.key?(k.to_sym))
60
- fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::ControlsResponseGet`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
65
+ if (!acceptable_attribute_map.key?(k.to_sym))
66
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::ControlsResponseGet`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
61
67
  end
62
68
  h[k.to_sym] = v
63
69
  }
@@ -171,7 +177,7 @@ module EmassClient
171
177
  else # model
172
178
  # models (e.g. Pet) or oneOf
173
179
  klass = EmassClient.const_get(type)
174
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
180
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
175
181
  end
176
182
  end
177
183
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Enterprise Mission Assurance Support Service (eMASS)
3
3
 
4
- #The Enterprise Mission Assurance Support Service (eMASS) Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. <strong>Register External Application (that use the eMASS API)</strong></br> New users will need to [register](https://nisp.emass.apps.mil/Content/Help/jobaids/eMASS_OT_NewUser_Job_Aid.pdf) an API key with the eMASS development team prior to accessing the site for the first time. The eMASS REST API requires a client certificate (SSL/TLS, DoD PKI only). Use the `Registration` POST endpoint to register the client certificate. The endpoint call returns the user `api-key`.</br></br> Every call to the eMASS REST API will require the use of the agreed upon public key certificate and API key. The API key must be provided in the request header for all endpoint calls (api-key). If the service receives an untrusted certificate or API key, a 401 error response code will be returned along with an error message.</br></br> <strong>Available Request Headers</strong></br> <table> <tr> <th align=left>key</th> <th align=left>Example Value</th> <th align=left>Description</th> </tr> <tr> <td>`api-key`</td> <td>api-key-provided-by-emass</td> <td>This API key must be provided in the request header for all endpoint calls</td> </tr> <tr> <td>`user-uid`</td> <td>USER.UID.KEY</td> <td>This User unique identifier key must be provided in the request header for all PUT, POST, and DELETE endpoint calls</td> </tr> <tr> <td></td><td></td> <td> Note: For DoD users this is the DoD ID Number (EIDIPI) on their DoD CAC </td> </tr> </table> </br><strong>Approve API Client for Actionable Requests</strong></br> Users are required to log-in to eMASS and grant permissions for a client to update data within eMASS on their behalf. This is only required for actionable requests (PUT, POST, DELETE). The Registration Endpoint and all GET requests can be accessed without completing this process with the correct permissions. Please note that leaving a field parameter blank (for PUT/POST requests) has the potential to clear information in the active eMASS records. To establish an account with eMASS and/or acquire an api-key/user-uid, contact one of the listed POC:
4
+ #The eMASS Representational State Transfer (REST) Application Programming Interface (API) enables users to perform assessments and complete actions associated with system records. The eMASS API provides an interface for application to communicate eMASS Services. For information on how to register and use the eMASS API reference the [eMASS API Getting Started](eMASSGettingStarted.md). Additional information about eMASS can be obtain by contacting the National Industrial Security Program (NISP). Points of Contact are:
5
5
 
6
- The version of the OpenAPI document: v3.12
7
- Contact: disa.meade.id.mbx.emass-tier-iii-support@mail.mil
6
+ The version of the OpenAPI document: v3.22
7
+ Contact: disa.global.servicedesk.mbx.ma-ticket-request@mail.mil
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.1.0-SNAPSHOT
9
+ Generator version: 7.12.0-SNAPSHOT
10
10
 
11
11
  =end
12
12
 
@@ -14,52 +14,31 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module EmassClient
17
- class ControlsGet
18
- # [Required] Unique system record identifier.
17
+ class ControlsResponseGetDataInner
18
+ # [Required] Unique eMASS system identifier.
19
19
  attr_accessor :system_id
20
20
 
21
- # [Read-only] Name of the system record.
22
- attr_accessor :name
23
-
24
21
  # [Required] Acronym of the system record.
25
22
  attr_accessor :acronym
26
23
 
27
- # [Read-only] Comma separated list of CCIs associated with the control.
28
- attr_accessor :ccis
29
-
30
- # [Read-only] Indicates whether a control is inherited.
31
- attr_accessor :is_inherited
32
-
33
- # [Read-only] List of overlays that affect the control.
34
- attr_accessor :modified_by_overlays
35
-
36
- # [Read-only] Indicates the manner by which a control was included in the system's categorization.
37
- attr_accessor :included_status
38
-
39
- # [Read-only] Compliance of the control.
40
- attr_accessor :compliance_status
41
-
42
- # [Required] Include written description of Responsible Entities that are responsible for the Security Control. Character Limit = 2,000.
24
+ # [Required] Include written description of Responsible Entities that are responsible for the Security Control. Character Limit 2,000.
43
25
  attr_accessor :responsible_entities
44
26
 
45
- # [Optional] Implementation Status of the Security Control for the information system.
46
- attr_accessor :implementation_status
47
-
48
- # [Conditional] Indicate the type of Common Control Provider for an “Inherited” Security Control.
49
- attr_accessor :common_control_provider
50
-
51
- # [Conditional] Provide justification for Security Controls deemed Not Applicable to the system.
52
- attr_accessor :na_justification
53
-
54
27
  # [Required] Control designations
55
28
  attr_accessor :control_designation
56
29
 
57
- # [Required] Field is required for Implementation Plan.
30
+ # [Required] Field is required for Implementation Plan. Unix time format.
58
31
  attr_accessor :estimated_completion_date
59
32
 
60
- # [Required] Includes security control comments. Character Limit = 2,000.
33
+ # [Required] Includes security control comments. Character Limit 2,000.
61
34
  attr_accessor :implementation_narrative
62
35
 
36
+ # [Conditional] Indicate the type of Common Control Provider for an Inherited Security Control.
37
+ attr_accessor :common_control_provider
38
+
39
+ # [Conditional] Provide justification for Security Controls deemed Not Applicable to the system.
40
+ attr_accessor :na_justification
41
+
63
42
  # [Conditional] Criticality of Security Control regarding SLCM. Character Limit = 2,000.
64
43
  attr_accessor :slcm_criticality
65
44
 
@@ -78,6 +57,9 @@ module EmassClient
78
57
  # [Conditional] Additional comments for Security Control regarding SLCM. Character Limit = 4,000.
79
58
  attr_accessor :slcm_comments
80
59
 
60
+ # [Optional] Implementation Status of the Security Control for the information system.
61
+ attr_accessor :implementation_status
62
+
81
63
  # [Optional] Values include the following options (Very Low, Low, Moderate,High,Very High)
82
64
  attr_accessor :severity
83
65
 
@@ -111,12 +93,30 @@ module EmassClient
111
93
  # [Optional] If the Financial Management (Navy) overlay is applied to the system, this field appears and can be populated. Character Limit = 2,000. Navy only.
112
94
  attr_accessor :application_layer
113
95
 
114
- # [Read-Only] Identify the primary computing environment for where the information system is deployed. Navy only.
96
+ # [Optional] If the Financial Management (Navy) overlay is applied to the system, this field appears and can be populated. Navy only.
115
97
  attr_accessor :database_layer
116
98
 
117
- # [Read-Only] Identify the primary computing environment for where the information system is deployed. Navy only.
99
+ # [Optional] If the Financial Management (Navy) overlay is applied to the system, this field appears and can be populated. Navy only.
118
100
  attr_accessor :operating_system_layer
119
101
 
102
+ # [Read-only] Name of the system record.
103
+ attr_accessor :name
104
+
105
+ # [Read-only] Comma separated list of CCIs associated with the control.
106
+ attr_accessor :ccis
107
+
108
+ # [Read-only] Indicates whether a control is inherited.
109
+ attr_accessor :is_inherited
110
+
111
+ # [Read-only] List of overlays that affect the control.
112
+ attr_accessor :modified_by_overlays
113
+
114
+ # [Read-only] Indicates the manner by which a control was included in the system's categorization.
115
+ attr_accessor :included_status
116
+
117
+ # [Read-only] Compliance of the control.
118
+ attr_accessor :compliance_status
119
+
120
120
  class EnumAttributeValidator
121
121
  attr_reader :datatype
122
122
  attr_reader :allowable_values
@@ -143,26 +143,20 @@ module EmassClient
143
143
  def self.attribute_map
144
144
  {
145
145
  :'system_id' => :'systemId',
146
- :'name' => :'name',
147
146
  :'acronym' => :'acronym',
148
- :'ccis' => :'ccis',
149
- :'is_inherited' => :'isInherited',
150
- :'modified_by_overlays' => :'modifiedByOverlays',
151
- :'included_status' => :'includedStatus',
152
- :'compliance_status' => :'complianceStatus',
153
147
  :'responsible_entities' => :'responsibleEntities',
154
- :'implementation_status' => :'implementationStatus',
155
- :'common_control_provider' => :'commonControlProvider',
156
- :'na_justification' => :'naJustification',
157
148
  :'control_designation' => :'controlDesignation',
158
149
  :'estimated_completion_date' => :'estimatedCompletionDate',
159
150
  :'implementation_narrative' => :'implementationNarrative',
151
+ :'common_control_provider' => :'commonControlProvider',
152
+ :'na_justification' => :'naJustification',
160
153
  :'slcm_criticality' => :'slcmCriticality',
161
154
  :'slcm_frequency' => :'slcmFrequency',
162
155
  :'slcm_method' => :'slcmMethod',
163
156
  :'slcm_reporting' => :'slcmReporting',
164
157
  :'slcm_tracking' => :'slcmTracking',
165
158
  :'slcm_comments' => :'slcmComments',
159
+ :'implementation_status' => :'implementationStatus',
166
160
  :'severity' => :'severity',
167
161
  :'vulnerabilty_summary' => :'vulnerabiltySummary',
168
162
  :'recommendations' => :'recommendations',
@@ -175,39 +169,44 @@ module EmassClient
175
169
  :'mitigations' => :'mitigations',
176
170
  :'application_layer' => :'applicationLayer',
177
171
  :'database_layer' => :'databaseLayer',
178
- :'operating_system_layer' => :'operatingSystemLayer'
172
+ :'operating_system_layer' => :'operatingSystemLayer',
173
+ :'name' => :'name',
174
+ :'ccis' => :'ccis',
175
+ :'is_inherited' => :'isInherited',
176
+ :'modified_by_overlays' => :'modifiedByOverlays',
177
+ :'included_status' => :'includedStatus',
178
+ :'compliance_status' => :'complianceStatus'
179
179
  }
180
180
  end
181
181
 
182
+ # Returns attribute mapping this model knows about
183
+ def self.acceptable_attribute_map
184
+ attribute_map
185
+ end
186
+
182
187
  # Returns all the JSON keys this model knows about
183
188
  def self.acceptable_attributes
184
- attribute_map.values
189
+ acceptable_attribute_map.values
185
190
  end
186
191
 
187
192
  # Attribute type mapping.
188
193
  def self.openapi_types
189
194
  {
190
195
  :'system_id' => :'Integer',
191
- :'name' => :'String',
192
196
  :'acronym' => :'String',
193
- :'ccis' => :'String',
194
- :'is_inherited' => :'Boolean',
195
- :'modified_by_overlays' => :'String',
196
- :'included_status' => :'String',
197
- :'compliance_status' => :'String',
198
197
  :'responsible_entities' => :'String',
199
- :'implementation_status' => :'String',
200
- :'common_control_provider' => :'String',
201
- :'na_justification' => :'String',
202
198
  :'control_designation' => :'String',
203
199
  :'estimated_completion_date' => :'Integer',
204
200
  :'implementation_narrative' => :'String',
201
+ :'common_control_provider' => :'String',
202
+ :'na_justification' => :'String',
205
203
  :'slcm_criticality' => :'String',
206
204
  :'slcm_frequency' => :'String',
207
205
  :'slcm_method' => :'String',
208
206
  :'slcm_reporting' => :'String',
209
207
  :'slcm_tracking' => :'String',
210
208
  :'slcm_comments' => :'String',
209
+ :'implementation_status' => :'String',
211
210
  :'severity' => :'String',
212
211
  :'vulnerabilty_summary' => :'String',
213
212
  :'recommendations' => :'String',
@@ -220,20 +219,19 @@ module EmassClient
220
219
  :'mitigations' => :'String',
221
220
  :'application_layer' => :'String',
222
221
  :'database_layer' => :'String',
223
- :'operating_system_layer' => :'String'
222
+ :'operating_system_layer' => :'String',
223
+ :'name' => :'String',
224
+ :'ccis' => :'String',
225
+ :'is_inherited' => :'Boolean',
226
+ :'modified_by_overlays' => :'String',
227
+ :'included_status' => :'String',
228
+ :'compliance_status' => :'String'
224
229
  }
225
230
  end
226
231
 
227
232
  # List of attributes with nullable: true
228
233
  def self.openapi_nullable
229
234
  Set.new([
230
- :'name',
231
- :'ccis',
232
- :'is_inherited',
233
- :'modified_by_overlays',
234
- :'included_status',
235
- :'compliance_status',
236
- :'implementation_status',
237
235
  :'common_control_provider',
238
236
  :'na_justification',
239
237
  :'slcm_criticality',
@@ -242,6 +240,7 @@ module EmassClient
242
240
  :'slcm_reporting',
243
241
  :'slcm_tracking',
244
242
  :'slcm_comments',
243
+ :'implementation_status',
245
244
  :'severity',
246
245
  :'vulnerabilty_summary',
247
246
  :'recommendations',
@@ -254,21 +253,39 @@ module EmassClient
254
253
  :'mitigations',
255
254
  :'application_layer',
256
255
  :'database_layer',
257
- :'operating_system_layer'
256
+ :'operating_system_layer',
257
+ :'name',
258
+ :'ccis',
259
+ :'is_inherited',
260
+ :'modified_by_overlays',
261
+ :'included_status',
262
+ :'compliance_status'
258
263
  ])
259
264
  end
260
265
 
266
+ # List of class defined in allOf (OpenAPI v3)
267
+ def self.openapi_all_of
268
+ [
269
+ :'ControlsConditionalFields',
270
+ :'ControlsIds',
271
+ :'ControlsOptionalFields',
272
+ :'ControlsReadOnlyFields',
273
+ :'ControlsRequiredFields'
274
+ ]
275
+ end
276
+
261
277
  # Initializes the object
262
278
  # @param [Hash] attributes Model attributes in the form of hash
263
279
  def initialize(attributes = {})
264
280
  if (!attributes.is_a?(Hash))
265
- fail ArgumentError, "The input argument (attributes) must be a hash in `EmassClient::ControlsGet` initialize method"
281
+ fail ArgumentError, "The input argument (attributes) must be a hash in `EmassClient::ControlsResponseGetDataInner` initialize method"
266
282
  end
267
283
 
268
284
  # check to see if the attribute exists and convert string to symbol for hash key
285
+ acceptable_attribute_map = self.class.acceptable_attribute_map
269
286
  attributes = attributes.each_with_object({}) { |(k, v), h|
270
- if (!self.class.attribute_map.key?(k.to_sym))
271
- fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::ControlsGet`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
287
+ if (!acceptable_attribute_map.key?(k.to_sym))
288
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::ControlsResponseGetDataInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
272
289
  end
273
290
  h[k.to_sym] = v
274
291
  }
@@ -277,50 +294,14 @@ module EmassClient
277
294
  self.system_id = attributes[:'system_id']
278
295
  end
279
296
 
280
- if attributes.key?(:'name')
281
- self.name = attributes[:'name']
282
- end
283
-
284
297
  if attributes.key?(:'acronym')
285
298
  self.acronym = attributes[:'acronym']
286
299
  end
287
300
 
288
- if attributes.key?(:'ccis')
289
- self.ccis = attributes[:'ccis']
290
- end
291
-
292
- if attributes.key?(:'is_inherited')
293
- self.is_inherited = attributes[:'is_inherited']
294
- end
295
-
296
- if attributes.key?(:'modified_by_overlays')
297
- self.modified_by_overlays = attributes[:'modified_by_overlays']
298
- end
299
-
300
- if attributes.key?(:'included_status')
301
- self.included_status = attributes[:'included_status']
302
- end
303
-
304
- if attributes.key?(:'compliance_status')
305
- self.compliance_status = attributes[:'compliance_status']
306
- end
307
-
308
301
  if attributes.key?(:'responsible_entities')
309
302
  self.responsible_entities = attributes[:'responsible_entities']
310
303
  end
311
304
 
312
- if attributes.key?(:'implementation_status')
313
- self.implementation_status = attributes[:'implementation_status']
314
- end
315
-
316
- if attributes.key?(:'common_control_provider')
317
- self.common_control_provider = attributes[:'common_control_provider']
318
- end
319
-
320
- if attributes.key?(:'na_justification')
321
- self.na_justification = attributes[:'na_justification']
322
- end
323
-
324
305
  if attributes.key?(:'control_designation')
325
306
  self.control_designation = attributes[:'control_designation']
326
307
  end
@@ -333,6 +314,14 @@ module EmassClient
333
314
  self.implementation_narrative = attributes[:'implementation_narrative']
334
315
  end
335
316
 
317
+ if attributes.key?(:'common_control_provider')
318
+ self.common_control_provider = attributes[:'common_control_provider']
319
+ end
320
+
321
+ if attributes.key?(:'na_justification')
322
+ self.na_justification = attributes[:'na_justification']
323
+ end
324
+
336
325
  if attributes.key?(:'slcm_criticality')
337
326
  self.slcm_criticality = attributes[:'slcm_criticality']
338
327
  end
@@ -357,6 +346,10 @@ module EmassClient
357
346
  self.slcm_comments = attributes[:'slcm_comments']
358
347
  end
359
348
 
349
+ if attributes.key?(:'implementation_status')
350
+ self.implementation_status = attributes[:'implementation_status']
351
+ end
352
+
360
353
  if attributes.key?(:'severity')
361
354
  self.severity = attributes[:'severity']
362
355
  end
@@ -408,6 +401,30 @@ module EmassClient
408
401
  if attributes.key?(:'operating_system_layer')
409
402
  self.operating_system_layer = attributes[:'operating_system_layer']
410
403
  end
404
+
405
+ if attributes.key?(:'name')
406
+ self.name = attributes[:'name']
407
+ end
408
+
409
+ if attributes.key?(:'ccis')
410
+ self.ccis = attributes[:'ccis']
411
+ end
412
+
413
+ if attributes.key?(:'is_inherited')
414
+ self.is_inherited = attributes[:'is_inherited']
415
+ end
416
+
417
+ if attributes.key?(:'modified_by_overlays')
418
+ self.modified_by_overlays = attributes[:'modified_by_overlays']
419
+ end
420
+
421
+ if attributes.key?(:'included_status')
422
+ self.included_status = attributes[:'included_status']
423
+ end
424
+
425
+ if attributes.key?(:'compliance_status')
426
+ self.compliance_status = attributes[:'compliance_status']
427
+ end
411
428
  end
412
429
 
413
430
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -422,16 +439,16 @@ module EmassClient
422
439
  # @return true if the model is valid
423
440
  def valid?
424
441
  warn '[DEPRECATED] the `valid?` method is obsolete'
425
- implementation_status_validator = EnumAttributeValidator.new('String', ["Planned", "Implemented", "Inherited", "Not Applicable", "Manually Inherited", "unknown_default_open_api"])
426
- return false unless implementation_status_validator.valid?(@implementation_status)
427
- common_control_provider_validator = EnumAttributeValidator.new('String', ["DoD", "Component", "Enclave", "unknown_default_open_api"])
428
- return false unless common_control_provider_validator.valid?(@common_control_provider)
429
442
  control_designation_validator = EnumAttributeValidator.new('String', ["Common", "System-Specific", "Hybrid", "unknown_default_open_api"])
430
443
  return false unless control_designation_validator.valid?(@control_designation)
444
+ common_control_provider_validator = EnumAttributeValidator.new('String', ["DoD", "Component", "Enclave", "unknown_default_open_api"])
445
+ return false unless common_control_provider_validator.valid?(@common_control_provider)
431
446
  slcm_frequency_validator = EnumAttributeValidator.new('String', ["Constantly", "Daily", "Weekly", "Monthly", "Quarterly", "Semi-Annually", "Annually", "Every Two Years", "Every Three Years", "Undetermined", "unknown_default_open_api"])
432
447
  return false unless slcm_frequency_validator.valid?(@slcm_frequency)
433
448
  slcm_method_validator = EnumAttributeValidator.new('String', ["Automated", "Semi-Automated", "Manual", "Undetermined", "unknown_default_open_api"])
434
449
  return false unless slcm_method_validator.valid?(@slcm_method)
450
+ implementation_status_validator = EnumAttributeValidator.new('String', ["Planned", "Implemented", "Inherited", "Not Applicable", "Manually Inherited", "unknown_default_open_api"])
451
+ return false unless implementation_status_validator.valid?(@implementation_status)
435
452
  severity_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
436
453
  return false unless severity_validator.valid?(@severity)
437
454
  relevance_of_threat_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
@@ -448,13 +465,13 @@ module EmassClient
448
465
  end
449
466
 
450
467
  # Custom attribute writer method checking allowed values (enum).
451
- # @param [Object] implementation_status Object to be assigned
452
- def implementation_status=(implementation_status)
453
- validator = EnumAttributeValidator.new('String', ["Planned", "Implemented", "Inherited", "Not Applicable", "Manually Inherited", "unknown_default_open_api"])
454
- unless validator.valid?(implementation_status)
455
- fail ArgumentError, "invalid value for \"implementation_status\", must be one of #{validator.allowable_values}."
468
+ # @param [Object] control_designation Object to be assigned
469
+ def control_designation=(control_designation)
470
+ validator = EnumAttributeValidator.new('String', ["Common", "System-Specific", "Hybrid", "unknown_default_open_api"])
471
+ unless validator.valid?(control_designation)
472
+ fail ArgumentError, "invalid value for \"control_designation\", must be one of #{validator.allowable_values}."
456
473
  end
457
- @implementation_status = implementation_status
474
+ @control_designation = control_designation
458
475
  end
459
476
 
460
477
  # Custom attribute writer method checking allowed values (enum).
@@ -467,16 +484,6 @@ module EmassClient
467
484
  @common_control_provider = common_control_provider
468
485
  end
469
486
 
470
- # Custom attribute writer method checking allowed values (enum).
471
- # @param [Object] control_designation Object to be assigned
472
- def control_designation=(control_designation)
473
- validator = EnumAttributeValidator.new('String', ["Common", "System-Specific", "Hybrid", "unknown_default_open_api"])
474
- unless validator.valid?(control_designation)
475
- fail ArgumentError, "invalid value for \"control_designation\", must be one of #{validator.allowable_values}."
476
- end
477
- @control_designation = control_designation
478
- end
479
-
480
487
  # Custom attribute writer method checking allowed values (enum).
481
488
  # @param [Object] slcm_frequency Object to be assigned
482
489
  def slcm_frequency=(slcm_frequency)
@@ -497,6 +504,16 @@ module EmassClient
497
504
  @slcm_method = slcm_method
498
505
  end
499
506
 
507
+ # Custom attribute writer method checking allowed values (enum).
508
+ # @param [Object] implementation_status Object to be assigned
509
+ def implementation_status=(implementation_status)
510
+ validator = EnumAttributeValidator.new('String', ["Planned", "Implemented", "Inherited", "Not Applicable", "Manually Inherited", "unknown_default_open_api"])
511
+ unless validator.valid?(implementation_status)
512
+ fail ArgumentError, "invalid value for \"implementation_status\", must be one of #{validator.allowable_values}."
513
+ end
514
+ @implementation_status = implementation_status
515
+ end
516
+
500
517
  # Custom attribute writer method checking allowed values (enum).
501
518
  # @param [Object] severity Object to be assigned
502
519
  def severity=(severity)
@@ -563,26 +580,20 @@ module EmassClient
563
580
  return true if self.equal?(o)
564
581
  self.class == o.class &&
565
582
  system_id == o.system_id &&
566
- name == o.name &&
567
583
  acronym == o.acronym &&
568
- ccis == o.ccis &&
569
- is_inherited == o.is_inherited &&
570
- modified_by_overlays == o.modified_by_overlays &&
571
- included_status == o.included_status &&
572
- compliance_status == o.compliance_status &&
573
584
  responsible_entities == o.responsible_entities &&
574
- implementation_status == o.implementation_status &&
575
- common_control_provider == o.common_control_provider &&
576
- na_justification == o.na_justification &&
577
585
  control_designation == o.control_designation &&
578
586
  estimated_completion_date == o.estimated_completion_date &&
579
587
  implementation_narrative == o.implementation_narrative &&
588
+ common_control_provider == o.common_control_provider &&
589
+ na_justification == o.na_justification &&
580
590
  slcm_criticality == o.slcm_criticality &&
581
591
  slcm_frequency == o.slcm_frequency &&
582
592
  slcm_method == o.slcm_method &&
583
593
  slcm_reporting == o.slcm_reporting &&
584
594
  slcm_tracking == o.slcm_tracking &&
585
595
  slcm_comments == o.slcm_comments &&
596
+ implementation_status == o.implementation_status &&
586
597
  severity == o.severity &&
587
598
  vulnerabilty_summary == o.vulnerabilty_summary &&
588
599
  recommendations == o.recommendations &&
@@ -595,7 +606,13 @@ module EmassClient
595
606
  mitigations == o.mitigations &&
596
607
  application_layer == o.application_layer &&
597
608
  database_layer == o.database_layer &&
598
- operating_system_layer == o.operating_system_layer
609
+ operating_system_layer == o.operating_system_layer &&
610
+ name == o.name &&
611
+ ccis == o.ccis &&
612
+ is_inherited == o.is_inherited &&
613
+ modified_by_overlays == o.modified_by_overlays &&
614
+ included_status == o.included_status &&
615
+ compliance_status == o.compliance_status
599
616
  end
600
617
 
601
618
  # @see the `==` method
@@ -607,7 +624,7 @@ module EmassClient
607
624
  # Calculates hash code according to all attributes.
608
625
  # @return [Integer] Hash code
609
626
  def hash
610
- [system_id, name, acronym, ccis, is_inherited, modified_by_overlays, included_status, compliance_status, responsible_entities, implementation_status, common_control_provider, na_justification, control_designation, estimated_completion_date, implementation_narrative, slcm_criticality, slcm_frequency, slcm_method, slcm_reporting, slcm_tracking, slcm_comments, severity, vulnerabilty_summary, recommendations, relevance_of_threat, likelihood, impact, impact_description, residual_risk_level, test_method, mitigations, application_layer, database_layer, operating_system_layer].hash
627
+ [system_id, acronym, responsible_entities, control_designation, estimated_completion_date, implementation_narrative, common_control_provider, na_justification, slcm_criticality, slcm_frequency, slcm_method, slcm_reporting, slcm_tracking, slcm_comments, implementation_status, severity, vulnerabilty_summary, recommendations, relevance_of_threat, likelihood, impact, impact_description, residual_risk_level, test_method, mitigations, application_layer, database_layer, operating_system_layer, name, ccis, is_inherited, modified_by_overlays, included_status, compliance_status].hash
611
628
  end
612
629
 
613
630
  # Builds the object from hash
@@ -672,7 +689,7 @@ module EmassClient
672
689
  else # model
673
690
  # models (e.g. Pet) or oneOf
674
691
  klass = EmassClient.const_get(type)
675
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
692
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
676
693
  end
677
694
  end
678
695