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
 
@@ -14,51 +14,34 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module EmassClient
17
- class PoamGet
17
+ class PoamResponseGetSystemsDataInner
18
18
  # [Required] Unique eMASS system identifier.
19
19
  attr_accessor :system_id
20
20
 
21
21
  # [Required] Unique item identifier
22
22
  attr_accessor :poam_id
23
23
 
24
- # [Required] Globally unique identifier for individual POA&M Items, seen on the front-end as ID”.
24
+ # [Required] Globally unique identifier for individual POA&M Items, seen on the front-end as ID.
25
25
  attr_accessor :display_poam_id
26
26
 
27
- # [Read-only] Indicates whether a test result is inherited.
28
- attr_accessor :is_inherited
29
-
30
- # [Optional] Unique identifier external to the eMASS application for use with associating POA&Ms. 100 Characters.
31
- attr_accessor :external_uid
32
-
33
- # [Optional] System acronym name.
34
- attr_accessor :control_acronym
35
-
36
- # [Optional] CCI associated with POA&M Item..
37
- attr_accessor :cci
38
-
39
- # [Optional] The Security Control Assessment Procedure being associated with the POA&M Item.
40
- attr_accessor :assessment_procedure
41
-
42
- # [Required] Values include the following: (Ongoing,Risk Accepted,Completed,Not Applicable
27
+ # [Required] The POA&M status
43
28
  attr_accessor :status
44
29
 
45
- # [Read-Only] Values include the following options: (Not Approved,Under Review,Approved)
46
- attr_accessor :review_status
47
-
48
30
  # [Required] Provide a description of the POA&M Item. 2000 Characters.
49
31
  attr_accessor :vulnerability_description
50
32
 
51
33
  # [Required] Include Source Identifying Vulnerability text. 2000 Characters.
52
- attr_accessor :source_ident_vuln
53
-
54
- # [Optional] Security Checks that are associated with the POA&M.
55
- attr_accessor :security_checks
56
-
57
- attr_accessor :milestones
34
+ attr_accessor :source_identifying_vulnerability
58
35
 
59
36
  # [Required] Organization/Office represented. 100 Characters.
60
37
  attr_accessor :poc_organization
61
38
 
39
+ # [Required] List of resources used. 250 Characters.
40
+ attr_accessor :resources
41
+
42
+ # [Required] If not specified, this field will be set to false because it does not accept a null value. VA only
43
+ attr_accessor :identified_in_cfo_audit_or_other_review
44
+
62
45
  # [Conditional] First name of POC. 100 Characters.
63
46
  attr_accessor :poc_first_name
64
47
 
@@ -68,69 +51,21 @@ module EmassClient
68
51
  # [Conditional] Email address of POC. 100 Characters.
69
52
  attr_accessor :poc_email
70
53
 
71
- # [Conditional] Phone number of POC. 100 Characters.
54
+ # [Conditional] Phone number of POC (area code) ***-**** format. 100 Characters.
72
55
  attr_accessor :poc_phone_number
73
56
 
74
- # [Conditional] Required for approved items. Values include the following options (Very Low,Low,Moderate,High,Very High)
57
+ # [Conditional] Required for approved items. Values include the following options: (Very Low, Low, Moderate,High,Very High)
75
58
  attr_accessor :severity
76
59
 
77
- # [Optional] Values include the following options (I,II,III)
78
- attr_accessor :raw_severity
79
-
80
- # [Optional] Values include the following options: (Very Low,Low,Moderate,High,Very High)
81
- attr_accessor :relevance_of_threat
82
-
83
- # [Optional] Values include the following options: (Very Low,Low,Moderate,High,Very High)
84
- attr_accessor :likelihood
85
-
86
- # [Optional] Values include the following options: (Very Low,Low,Moderate,High,Very High)
87
- attr_accessor :impact
88
-
89
- # [Optional] Include description of Security Control’s impact.
90
- attr_accessor :impact_description
91
-
92
- # [Optional] Values include the following options: (Very Low,Low,Moderate,High,Very High)
93
- attr_accessor :residual_risk_level
94
-
95
- # [Optional] Include recommendations. Character Limit = 2,000.
96
- attr_accessor :recommendations
97
-
98
- # [Required] List of resources used. 250 Characters.
99
- attr_accessor :resources
100
-
101
60
  # [Conditional] Required for ongoing and completed POA&M items. Unix time format.
102
61
  attr_accessor :scheduled_completion_date
103
62
 
104
63
  # [Conditional] Field is required for completed POA&M items. Unix time format.
105
64
  attr_accessor :completion_date
106
65
 
107
- # [Read-Only] Value returned for a POA&M Item with review status Approved” and has a milestone with a scheduled completion date that extends beyond the POA&M Item’s scheduled completion date.
108
- attr_accessor :extension_date
109
-
110
66
  # [Conditional] Field is required for completed and risk accepted POA&M items. 2000 Characters
111
67
  attr_accessor :comments
112
68
 
113
- # [Optional] Include mitigation explanation. 2000 Characters.
114
- attr_accessor :mitigation
115
-
116
- # [Conditional] Optionally used in PUT to delete milestones when updating a POA&M.
117
- attr_accessor :is_active
118
-
119
- # [Optional] Indicate the risk level expected after any proposed mitigations are implemented. Proposed mitigations should be appropriately documented as POA&M milestones. Navy only.
120
- attr_accessor :resulting_residual_risk_level_after_proposed_mitigations
121
-
122
- # [Optional] A predisposing condition is a condition existing within an organization, a mission or business process, enterprise architecture, information system/PIT, or environment of operation, which affects (i.e., increases or decreases) the likelihood that threat events, once initiated, result in adverse impacts. Navy only.
123
- attr_accessor :predisposing_conditions
124
-
125
- # [Optional] Describe the identified threat(s) and relevance to the information system. Navy only.
126
- attr_accessor :threat_description
127
-
128
- # [Optional] List any affected devices by hostname. If all devices in the information system are affected, state 'system' or 'all'. Navy only
129
- attr_accessor :devices_affected
130
-
131
- # [Required] If not specified, this field will be set to false because it does not accept a null value. VA only
132
- attr_accessor :identified_in_cfo_audit_or_other_review
133
-
134
69
  # [Conditional] At least one of the following is required and must be completed for each POA&M Item: Personnel Resources-> Funded Base Hours Personnel Resources-> Unfunded Base Hours Non-Personnel Resources-> Funded Amount Non-Personnel Resources-> Unfunded Amount Displays numbers to the second decimal point (e.g., 100.00). VA only.
135
70
  attr_accessor :personnel_resources_funded_base_hours
136
71
 
@@ -161,6 +96,80 @@ module EmassClient
161
96
  # [Conditional] Required if the value \"Other\" is populated for the field Non-Personnel Resources: Non-Funding Obstacle. VA only.
162
97
  attr_accessor :non_personnel_resources_nonfunding_obstacle_other_reason
163
98
 
99
+ attr_accessor :milestones
100
+
101
+ # [Optional] Unique identifier external to the eMASS application for use with associating POA&Ms. 100 Characters.
102
+ attr_accessor :external_uid
103
+
104
+ # [Optional] Control acronym associated with the POA&M Item. NIST SP 800-53 Revision 4 defined.
105
+ attr_accessor :control_acronym
106
+
107
+ # [Optional] The Security Control Assessment Procedure being associated with the POA&M Item.
108
+ attr_accessor :assessment_procedure
109
+
110
+ # [Optional] Security Checks that are associated with the POA&M.
111
+ attr_accessor :security_checks
112
+
113
+ # [Optional] Scan vulnerability ratting Values include the following options: (Very Low, Low, Moderate,High,Very High)
114
+ attr_accessor :raw_severity
115
+
116
+ # [Optional] Values include the following options (Very Low, Low, Moderate,High,Very High)
117
+ attr_accessor :relevance_of_threat
118
+
119
+ # [Optional] Values include the following options (Very Low, Low, Moderate,High,Very High)
120
+ attr_accessor :likelihood
121
+
122
+ # [Optional] Values include the following options (Very Low, Low, Moderate,High,Very High)
123
+ attr_accessor :impact
124
+
125
+ # [Optional] Include description of Security Control's impact.
126
+ attr_accessor :impact_description
127
+
128
+ # [Optional] Values include the following options (Very Low, Low, Moderate,High,Very High)
129
+ attr_accessor :residual_risk_level
130
+
131
+ # [Optional] Include recommendations. Character Limit = 2,000.
132
+ attr_accessor :recommendations
133
+
134
+ # [Optional] Include mitigation explanation. 2000 Characters.
135
+ attr_accessor :mitigations
136
+
137
+ # [Optional] Indicate the risk level expected after any proposed mitigations are implemented. Proposed mitigations should be appropriately documented as POA&M milestones. Navy only.
138
+ attr_accessor :resulting_residual_risk_level_after_proposed_mitigations
139
+
140
+ # [Optional] A predisposing condition is a condition existing within an organization, a mission or business process, enterprise architecture, information system/PIT, or environment of operation, which affects (i.e., increases or decreases) the likelihood that threat events, once initiated, result in adverse impacts. Navy only.
141
+ attr_accessor :predisposing_conditions
142
+
143
+ # [Optional] Describe the identified threat(s) and relevance to the information system. Navy only.
144
+ attr_accessor :threat_description
145
+
146
+ # [Optional] List any affected devices by hostname. If all devices in the information system are affected, state 'system' or 'all'. Navy only
147
+ attr_accessor :devices_affected
148
+
149
+ # [Read-Only] Unique identifier of the authorization term/condition linked to the POA&M Item.
150
+ attr_accessor :condition_id
151
+
152
+ # [Read-only] Indicates whether a test result is inherited.
153
+ attr_accessor :is_inherited
154
+
155
+ # [Read-Only] CCI associated with POA&M Item.
156
+ attr_accessor :cci
157
+
158
+ # [Read-Only] Values include the following options: (Not Approved,Under Review,Approved)
159
+ attr_accessor :review_status
160
+
161
+ # [Read-Only] Timestamp representing when the POA&M Item was entered into the database.
162
+ attr_accessor :created_date
163
+
164
+ # [Read-Only] Value returned for a POA&M Item with review status \"Approved\" and has a milestone with a scheduled completion date that extends beyond the POA&M Item's scheduled completion date.
165
+ attr_accessor :extension_date
166
+
167
+ # [Read-Only] Value returned for a POA&M Item with a review status of \"Approved\" and an unapproved milestone with a scheduled completion date that extends beyond the POA&M Item's scheduled completion date.
168
+ attr_accessor :pending_extension_date
169
+
170
+ # [Read-Only] Lists the filenames of any artifact files attached to the POA&M Item. Multiple values are separated by “; ”.
171
+ attr_accessor :artifacts
172
+
164
173
  class EnumAttributeValidator
165
174
  attr_reader :datatype
166
175
  attr_reader :allowable_values
@@ -189,42 +198,20 @@ module EmassClient
189
198
  :'system_id' => :'systemId',
190
199
  :'poam_id' => :'poamId',
191
200
  :'display_poam_id' => :'displayPoamId',
192
- :'is_inherited' => :'isInherited',
193
- :'external_uid' => :'externalUid',
194
- :'control_acronym' => :'controlAcronym',
195
- :'cci' => :'cci',
196
- :'assessment_procedure' => :'assessmentProcedure',
197
201
  :'status' => :'status',
198
- :'review_status' => :'reviewStatus',
199
202
  :'vulnerability_description' => :'vulnerabilityDescription',
200
- :'source_ident_vuln' => :'sourceIdentVuln',
201
- :'security_checks' => :'securityChecks',
202
- :'milestones' => :'milestones',
203
+ :'source_identifying_vulnerability' => :'sourceIdentifyingVulnerability',
203
204
  :'poc_organization' => :'pocOrganization',
205
+ :'resources' => :'resources',
206
+ :'identified_in_cfo_audit_or_other_review' => :'identifiedInCFOAuditOrOtherReview',
204
207
  :'poc_first_name' => :'pocFirstName',
205
208
  :'poc_last_name' => :'pocLastName',
206
209
  :'poc_email' => :'pocEmail',
207
210
  :'poc_phone_number' => :'pocPhoneNumber',
208
211
  :'severity' => :'severity',
209
- :'raw_severity' => :'rawSeverity',
210
- :'relevance_of_threat' => :'relevanceOfThreat',
211
- :'likelihood' => :'likelihood',
212
- :'impact' => :'impact',
213
- :'impact_description' => :'impactDescription',
214
- :'residual_risk_level' => :'residualRiskLevel',
215
- :'recommendations' => :'recommendations',
216
- :'resources' => :'resources',
217
212
  :'scheduled_completion_date' => :'scheduledCompletionDate',
218
213
  :'completion_date' => :'completionDate',
219
- :'extension_date' => :'extensionDate',
220
214
  :'comments' => :'comments',
221
- :'mitigation' => :'mitigation',
222
- :'is_active' => :'isActive',
223
- :'resulting_residual_risk_level_after_proposed_mitigations' => :'resultingResidualRiskLevelAfterProposedMitigations',
224
- :'predisposing_conditions' => :'predisposingConditions',
225
- :'threat_description' => :'threatDescription',
226
- :'devices_affected' => :'devicesAffected',
227
- :'identified_in_cfo_audit_or_other_review' => :'identifiedInCFOAuditOrOtherReview',
228
215
  :'personnel_resources_funded_base_hours' => :'personnelResourcesFundedBaseHours',
229
216
  :'personnel_resources_cost_code' => :'personnelResourcesCostCode',
230
217
  :'personnel_resources_unfunded_base_hours' => :'personnelResourcesUnfundedBaseHours',
@@ -234,13 +221,43 @@ module EmassClient
234
221
  :'non_personnel_resources_cost_code' => :'nonPersonnelResourcesCostCode',
235
222
  :'non_personnel_resources_unfunded_amount' => :'nonPersonnelResourcesUnfundedAmount',
236
223
  :'non_personnel_resources_nonfunding_obstacle' => :'nonPersonnelResourcesNonfundingObstacle',
237
- :'non_personnel_resources_nonfunding_obstacle_other_reason' => :'nonPersonnelResourcesNonfundingObstacleOtherReason'
224
+ :'non_personnel_resources_nonfunding_obstacle_other_reason' => :'nonPersonnelResourcesNonfundingObstacleOtherReason',
225
+ :'milestones' => :'milestones',
226
+ :'external_uid' => :'externalUid',
227
+ :'control_acronym' => :'controlAcronym',
228
+ :'assessment_procedure' => :'assessmentProcedure',
229
+ :'security_checks' => :'securityChecks',
230
+ :'raw_severity' => :'rawSeverity',
231
+ :'relevance_of_threat' => :'relevanceOfThreat',
232
+ :'likelihood' => :'likelihood',
233
+ :'impact' => :'impact',
234
+ :'impact_description' => :'impactDescription',
235
+ :'residual_risk_level' => :'residualRiskLevel',
236
+ :'recommendations' => :'recommendations',
237
+ :'mitigations' => :'mitigations',
238
+ :'resulting_residual_risk_level_after_proposed_mitigations' => :'resultingResidualRiskLevelAfterProposedMitigations',
239
+ :'predisposing_conditions' => :'predisposingConditions',
240
+ :'threat_description' => :'threatDescription',
241
+ :'devices_affected' => :'devicesAffected',
242
+ :'condition_id' => :'conditionId',
243
+ :'is_inherited' => :'isInherited',
244
+ :'cci' => :'cci',
245
+ :'review_status' => :'reviewStatus',
246
+ :'created_date' => :'createdDate',
247
+ :'extension_date' => :'extensionDate',
248
+ :'pending_extension_date' => :'pendingExtensionDate',
249
+ :'artifacts' => :'artifacts'
238
250
  }
239
251
  end
240
252
 
253
+ # Returns attribute mapping this model knows about
254
+ def self.acceptable_attribute_map
255
+ attribute_map
256
+ end
257
+
241
258
  # Returns all the JSON keys this model knows about
242
259
  def self.acceptable_attributes
243
- attribute_map.values
260
+ acceptable_attribute_map.values
244
261
  end
245
262
 
246
263
  # Attribute type mapping.
@@ -249,42 +266,20 @@ module EmassClient
249
266
  :'system_id' => :'Integer',
250
267
  :'poam_id' => :'Integer',
251
268
  :'display_poam_id' => :'Integer',
252
- :'is_inherited' => :'Boolean',
253
- :'external_uid' => :'String',
254
- :'control_acronym' => :'String',
255
- :'cci' => :'String',
256
- :'assessment_procedure' => :'String',
257
269
  :'status' => :'String',
258
- :'review_status' => :'String',
259
270
  :'vulnerability_description' => :'String',
260
- :'source_ident_vuln' => :'String',
261
- :'security_checks' => :'String',
262
- :'milestones' => :'Array<MilestonesGet>',
271
+ :'source_identifying_vulnerability' => :'String',
263
272
  :'poc_organization' => :'String',
273
+ :'resources' => :'String',
274
+ :'identified_in_cfo_audit_or_other_review' => :'Boolean',
264
275
  :'poc_first_name' => :'String',
265
276
  :'poc_last_name' => :'String',
266
277
  :'poc_email' => :'String',
267
278
  :'poc_phone_number' => :'String',
268
279
  :'severity' => :'String',
269
- :'raw_severity' => :'String',
270
- :'relevance_of_threat' => :'String',
271
- :'likelihood' => :'String',
272
- :'impact' => :'String',
273
- :'impact_description' => :'String',
274
- :'residual_risk_level' => :'String',
275
- :'recommendations' => :'String',
276
- :'resources' => :'String',
277
280
  :'scheduled_completion_date' => :'Integer',
278
281
  :'completion_date' => :'Integer',
279
- :'extension_date' => :'Integer',
280
282
  :'comments' => :'String',
281
- :'mitigation' => :'String',
282
- :'is_active' => :'Boolean',
283
- :'resulting_residual_risk_level_after_proposed_mitigations' => :'String',
284
- :'predisposing_conditions' => :'String',
285
- :'threat_description' => :'String',
286
- :'devices_affected' => :'String',
287
- :'identified_in_cfo_audit_or_other_review' => :'Boolean',
288
283
  :'personnel_resources_funded_base_hours' => :'Float',
289
284
  :'personnel_resources_cost_code' => :'String',
290
285
  :'personnel_resources_unfunded_base_hours' => :'Float',
@@ -294,41 +289,39 @@ module EmassClient
294
289
  :'non_personnel_resources_cost_code' => :'String',
295
290
  :'non_personnel_resources_unfunded_amount' => :'Float',
296
291
  :'non_personnel_resources_nonfunding_obstacle' => :'String',
297
- :'non_personnel_resources_nonfunding_obstacle_other_reason' => :'String'
292
+ :'non_personnel_resources_nonfunding_obstacle_other_reason' => :'String',
293
+ :'milestones' => :'Array<MilestonesGet>',
294
+ :'external_uid' => :'String',
295
+ :'control_acronym' => :'String',
296
+ :'assessment_procedure' => :'String',
297
+ :'security_checks' => :'String',
298
+ :'raw_severity' => :'String',
299
+ :'relevance_of_threat' => :'String',
300
+ :'likelihood' => :'String',
301
+ :'impact' => :'String',
302
+ :'impact_description' => :'String',
303
+ :'residual_risk_level' => :'String',
304
+ :'recommendations' => :'String',
305
+ :'mitigations' => :'String',
306
+ :'resulting_residual_risk_level_after_proposed_mitigations' => :'String',
307
+ :'predisposing_conditions' => :'String',
308
+ :'threat_description' => :'String',
309
+ :'devices_affected' => :'String',
310
+ :'condition_id' => :'String',
311
+ :'is_inherited' => :'Boolean',
312
+ :'cci' => :'String',
313
+ :'review_status' => :'String',
314
+ :'created_date' => :'Integer',
315
+ :'extension_date' => :'Integer',
316
+ :'pending_extension_date' => :'Integer',
317
+ :'artifacts' => :'String'
298
318
  }
299
319
  end
300
320
 
301
321
  # List of attributes with nullable: true
302
322
  def self.openapi_nullable
303
323
  Set.new([
304
- :'is_inherited',
305
- :'external_uid',
306
- :'control_acronym',
307
- :'cci',
308
- :'review_status',
309
- :'security_checks',
310
- :'poc_first_name',
311
- :'poc_last_name',
312
- :'poc_email',
313
- :'poc_phone_number',
314
- :'severity',
315
- :'raw_severity',
316
- :'relevance_of_threat',
317
- :'likelihood',
318
- :'impact',
319
- :'impact_description',
320
- :'residual_risk_level',
321
- :'recommendations',
322
324
  :'scheduled_completion_date',
323
- :'completion_date',
324
- :'extension_date',
325
- :'comments',
326
- :'mitigation',
327
- :'is_active',
328
- :'resulting_residual_risk_level_after_proposed_mitigations',
329
- :'predisposing_conditions',
330
- :'threat_description',
331
- :'devices_affected',
332
325
  :'personnel_resources_funded_base_hours',
333
326
  :'personnel_resources_cost_code',
334
327
  :'personnel_resources_unfunded_base_hours',
@@ -338,21 +331,45 @@ module EmassClient
338
331
  :'non_personnel_resources_cost_code',
339
332
  :'non_personnel_resources_unfunded_amount',
340
333
  :'non_personnel_resources_nonfunding_obstacle',
341
- :'non_personnel_resources_nonfunding_obstacle_other_reason'
334
+ :'non_personnel_resources_nonfunding_obstacle_other_reason',
335
+ :'resulting_residual_risk_level_after_proposed_mitigations',
336
+ :'predisposing_conditions',
337
+ :'threat_description',
338
+ :'devices_affected',
339
+ :'condition_id',
340
+ :'is_inherited',
341
+ :'cci',
342
+ :'review_status',
343
+ :'extension_date',
344
+ :'pending_extension_date',
345
+ :'artifacts'
342
346
  ])
343
347
  end
344
348
 
349
+ # List of class defined in allOf (OpenAPI v3)
350
+ def self.openapi_all_of
351
+ [
352
+ :'MilestonesFields',
353
+ :'PoamConditionalFields',
354
+ :'PoamIds',
355
+ :'PoamOptionalFields',
356
+ :'PoamReadOnlyFields',
357
+ :'PoamRequiredFields'
358
+ ]
359
+ end
360
+
345
361
  # Initializes the object
346
362
  # @param [Hash] attributes Model attributes in the form of hash
347
363
  def initialize(attributes = {})
348
364
  if (!attributes.is_a?(Hash))
349
- fail ArgumentError, "The input argument (attributes) must be a hash in `EmassClient::PoamGet` initialize method"
365
+ fail ArgumentError, "The input argument (attributes) must be a hash in `EmassClient::PoamResponseGetSystemsDataInner` initialize method"
350
366
  end
351
367
 
352
368
  # check to see if the attribute exists and convert string to symbol for hash key
369
+ acceptable_attribute_map = self.class.acceptable_attribute_map
353
370
  attributes = attributes.each_with_object({}) { |(k, v), h|
354
- if (!self.class.attribute_map.key?(k.to_sym))
355
- fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::PoamGet`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
371
+ if (!acceptable_attribute_map.key?(k.to_sym))
372
+ fail ArgumentError, "`#{k}` is not a valid attribute in `EmassClient::PoamResponseGetSystemsDataInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
356
373
  end
357
374
  h[k.to_sym] = v
358
375
  }
@@ -369,54 +386,28 @@ module EmassClient
369
386
  self.display_poam_id = attributes[:'display_poam_id']
370
387
  end
371
388
 
372
- if attributes.key?(:'is_inherited')
373
- self.is_inherited = attributes[:'is_inherited']
374
- end
375
-
376
- if attributes.key?(:'external_uid')
377
- self.external_uid = attributes[:'external_uid']
378
- end
379
-
380
- if attributes.key?(:'control_acronym')
381
- self.control_acronym = attributes[:'control_acronym']
382
- end
383
-
384
- if attributes.key?(:'cci')
385
- self.cci = attributes[:'cci']
386
- end
387
-
388
- if attributes.key?(:'assessment_procedure')
389
- self.assessment_procedure = attributes[:'assessment_procedure']
390
- end
391
-
392
389
  if attributes.key?(:'status')
393
390
  self.status = attributes[:'status']
394
391
  end
395
392
 
396
- if attributes.key?(:'review_status')
397
- self.review_status = attributes[:'review_status']
398
- end
399
-
400
393
  if attributes.key?(:'vulnerability_description')
401
394
  self.vulnerability_description = attributes[:'vulnerability_description']
402
395
  end
403
396
 
404
- if attributes.key?(:'source_ident_vuln')
405
- self.source_ident_vuln = attributes[:'source_ident_vuln']
397
+ if attributes.key?(:'source_identifying_vulnerability')
398
+ self.source_identifying_vulnerability = attributes[:'source_identifying_vulnerability']
406
399
  end
407
400
 
408
- if attributes.key?(:'security_checks')
409
- self.security_checks = attributes[:'security_checks']
401
+ if attributes.key?(:'poc_organization')
402
+ self.poc_organization = attributes[:'poc_organization']
410
403
  end
411
404
 
412
- if attributes.key?(:'milestones')
413
- if (value = attributes[:'milestones']).is_a?(Array)
414
- self.milestones = value
415
- end
405
+ if attributes.key?(:'resources')
406
+ self.resources = attributes[:'resources']
416
407
  end
417
408
 
418
- if attributes.key?(:'poc_organization')
419
- self.poc_organization = attributes[:'poc_organization']
409
+ if attributes.key?(:'identified_in_cfo_audit_or_other_review')
410
+ self.identified_in_cfo_audit_or_other_review = attributes[:'identified_in_cfo_audit_or_other_review']
420
411
  end
421
412
 
422
413
  if attributes.key?(:'poc_first_name')
@@ -439,6 +430,80 @@ module EmassClient
439
430
  self.severity = attributes[:'severity']
440
431
  end
441
432
 
433
+ if attributes.key?(:'scheduled_completion_date')
434
+ self.scheduled_completion_date = attributes[:'scheduled_completion_date']
435
+ end
436
+
437
+ if attributes.key?(:'completion_date')
438
+ self.completion_date = attributes[:'completion_date']
439
+ end
440
+
441
+ if attributes.key?(:'comments')
442
+ self.comments = attributes[:'comments']
443
+ end
444
+
445
+ if attributes.key?(:'personnel_resources_funded_base_hours')
446
+ self.personnel_resources_funded_base_hours = attributes[:'personnel_resources_funded_base_hours']
447
+ end
448
+
449
+ if attributes.key?(:'personnel_resources_cost_code')
450
+ self.personnel_resources_cost_code = attributes[:'personnel_resources_cost_code']
451
+ end
452
+
453
+ if attributes.key?(:'personnel_resources_unfunded_base_hours')
454
+ self.personnel_resources_unfunded_base_hours = attributes[:'personnel_resources_unfunded_base_hours']
455
+ end
456
+
457
+ if attributes.key?(:'personnel_resources_nonfunding_obstacle')
458
+ self.personnel_resources_nonfunding_obstacle = attributes[:'personnel_resources_nonfunding_obstacle']
459
+ end
460
+
461
+ if attributes.key?(:'personnel_resources_nonfunding_obstacle_other_reason')
462
+ self.personnel_resources_nonfunding_obstacle_other_reason = attributes[:'personnel_resources_nonfunding_obstacle_other_reason']
463
+ end
464
+
465
+ if attributes.key?(:'non_personnel_resources_funded_amount')
466
+ self.non_personnel_resources_funded_amount = attributes[:'non_personnel_resources_funded_amount']
467
+ end
468
+
469
+ if attributes.key?(:'non_personnel_resources_cost_code')
470
+ self.non_personnel_resources_cost_code = attributes[:'non_personnel_resources_cost_code']
471
+ end
472
+
473
+ if attributes.key?(:'non_personnel_resources_unfunded_amount')
474
+ self.non_personnel_resources_unfunded_amount = attributes[:'non_personnel_resources_unfunded_amount']
475
+ end
476
+
477
+ if attributes.key?(:'non_personnel_resources_nonfunding_obstacle')
478
+ self.non_personnel_resources_nonfunding_obstacle = attributes[:'non_personnel_resources_nonfunding_obstacle']
479
+ end
480
+
481
+ if attributes.key?(:'non_personnel_resources_nonfunding_obstacle_other_reason')
482
+ self.non_personnel_resources_nonfunding_obstacle_other_reason = attributes[:'non_personnel_resources_nonfunding_obstacle_other_reason']
483
+ end
484
+
485
+ if attributes.key?(:'milestones')
486
+ if (value = attributes[:'milestones']).is_a?(Array)
487
+ self.milestones = value
488
+ end
489
+ end
490
+
491
+ if attributes.key?(:'external_uid')
492
+ self.external_uid = attributes[:'external_uid']
493
+ end
494
+
495
+ if attributes.key?(:'control_acronym')
496
+ self.control_acronym = attributes[:'control_acronym']
497
+ end
498
+
499
+ if attributes.key?(:'assessment_procedure')
500
+ self.assessment_procedure = attributes[:'assessment_procedure']
501
+ end
502
+
503
+ if attributes.key?(:'security_checks')
504
+ self.security_checks = attributes[:'security_checks']
505
+ end
506
+
442
507
  if attributes.key?(:'raw_severity')
443
508
  self.raw_severity = attributes[:'raw_severity']
444
509
  end
@@ -467,32 +532,8 @@ module EmassClient
467
532
  self.recommendations = attributes[:'recommendations']
468
533
  end
469
534
 
470
- if attributes.key?(:'resources')
471
- self.resources = attributes[:'resources']
472
- end
473
-
474
- if attributes.key?(:'scheduled_completion_date')
475
- self.scheduled_completion_date = attributes[:'scheduled_completion_date']
476
- end
477
-
478
- if attributes.key?(:'completion_date')
479
- self.completion_date = attributes[:'completion_date']
480
- end
481
-
482
- if attributes.key?(:'extension_date')
483
- self.extension_date = attributes[:'extension_date']
484
- end
485
-
486
- if attributes.key?(:'comments')
487
- self.comments = attributes[:'comments']
488
- end
489
-
490
- if attributes.key?(:'mitigation')
491
- self.mitigation = attributes[:'mitigation']
492
- end
493
-
494
- if attributes.key?(:'is_active')
495
- self.is_active = attributes[:'is_active']
535
+ if attributes.key?(:'mitigations')
536
+ self.mitigations = attributes[:'mitigations']
496
537
  end
497
538
 
498
539
  if attributes.key?(:'resulting_residual_risk_level_after_proposed_mitigations')
@@ -511,48 +552,36 @@ module EmassClient
511
552
  self.devices_affected = attributes[:'devices_affected']
512
553
  end
513
554
 
514
- if attributes.key?(:'identified_in_cfo_audit_or_other_review')
515
- self.identified_in_cfo_audit_or_other_review = attributes[:'identified_in_cfo_audit_or_other_review']
516
- end
517
-
518
- if attributes.key?(:'personnel_resources_funded_base_hours')
519
- self.personnel_resources_funded_base_hours = attributes[:'personnel_resources_funded_base_hours']
520
- end
521
-
522
- if attributes.key?(:'personnel_resources_cost_code')
523
- self.personnel_resources_cost_code = attributes[:'personnel_resources_cost_code']
524
- end
525
-
526
- if attributes.key?(:'personnel_resources_unfunded_base_hours')
527
- self.personnel_resources_unfunded_base_hours = attributes[:'personnel_resources_unfunded_base_hours']
555
+ if attributes.key?(:'condition_id')
556
+ self.condition_id = attributes[:'condition_id']
528
557
  end
529
558
 
530
- if attributes.key?(:'personnel_resources_nonfunding_obstacle')
531
- self.personnel_resources_nonfunding_obstacle = attributes[:'personnel_resources_nonfunding_obstacle']
559
+ if attributes.key?(:'is_inherited')
560
+ self.is_inherited = attributes[:'is_inherited']
532
561
  end
533
562
 
534
- if attributes.key?(:'personnel_resources_nonfunding_obstacle_other_reason')
535
- self.personnel_resources_nonfunding_obstacle_other_reason = attributes[:'personnel_resources_nonfunding_obstacle_other_reason']
563
+ if attributes.key?(:'cci')
564
+ self.cci = attributes[:'cci']
536
565
  end
537
566
 
538
- if attributes.key?(:'non_personnel_resources_funded_amount')
539
- self.non_personnel_resources_funded_amount = attributes[:'non_personnel_resources_funded_amount']
567
+ if attributes.key?(:'review_status')
568
+ self.review_status = attributes[:'review_status']
540
569
  end
541
570
 
542
- if attributes.key?(:'non_personnel_resources_cost_code')
543
- self.non_personnel_resources_cost_code = attributes[:'non_personnel_resources_cost_code']
571
+ if attributes.key?(:'created_date')
572
+ self.created_date = attributes[:'created_date']
544
573
  end
545
574
 
546
- if attributes.key?(:'non_personnel_resources_unfunded_amount')
547
- self.non_personnel_resources_unfunded_amount = attributes[:'non_personnel_resources_unfunded_amount']
575
+ if attributes.key?(:'extension_date')
576
+ self.extension_date = attributes[:'extension_date']
548
577
  end
549
578
 
550
- if attributes.key?(:'non_personnel_resources_nonfunding_obstacle')
551
- self.non_personnel_resources_nonfunding_obstacle = attributes[:'non_personnel_resources_nonfunding_obstacle']
579
+ if attributes.key?(:'pending_extension_date')
580
+ self.pending_extension_date = attributes[:'pending_extension_date']
552
581
  end
553
582
 
554
- if attributes.key?(:'non_personnel_resources_nonfunding_obstacle_other_reason')
555
- self.non_personnel_resources_nonfunding_obstacle_other_reason = attributes[:'non_personnel_resources_nonfunding_obstacle_other_reason']
583
+ if attributes.key?(:'artifacts')
584
+ self.artifacts = attributes[:'artifacts']
556
585
  end
557
586
  end
558
587
 
@@ -570,22 +599,10 @@ module EmassClient
570
599
  warn '[DEPRECATED] the `valid?` method is obsolete'
571
600
  status_validator = EnumAttributeValidator.new('String', ["Ongoing", "Risk Accepted", "Completed", "Not Applicable", "Archived", "unknown_default_open_api"])
572
601
  return false unless status_validator.valid?(@status)
573
- review_status_validator = EnumAttributeValidator.new('String', ["Not Approved", "Under Review", "Approved", "unknown_default_open_api"])
574
- return false unless review_status_validator.valid?(@review_status)
575
- severity_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
576
- return false unless severity_validator.valid?(@severity)
577
- raw_severity_validator = EnumAttributeValidator.new('String', ["I", "II", "III", "unknown_default_open_api"])
578
- return false unless raw_severity_validator.valid?(@raw_severity)
579
- relevance_of_threat_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
580
- return false unless relevance_of_threat_validator.valid?(@relevance_of_threat)
581
- likelihood_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
582
- return false unless likelihood_validator.valid?(@likelihood)
583
- impact_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
584
- return false unless impact_validator.valid?(@impact)
585
- residual_risk_level_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
586
- return false unless residual_risk_level_validator.valid?(@residual_risk_level)
587
602
  resulting_residual_risk_level_after_proposed_mitigations_validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
588
603
  return false unless resulting_residual_risk_level_after_proposed_mitigations_validator.valid?(@resulting_residual_risk_level_after_proposed_mitigations)
604
+ review_status_validator = EnumAttributeValidator.new('String', ["Not Approved", "Under Review", "Approved", "unknown_default_open_api"])
605
+ return false unless review_status_validator.valid?(@review_status)
589
606
  true
590
607
  end
591
608
 
@@ -599,76 +616,6 @@ module EmassClient
599
616
  @status = status
600
617
  end
601
618
 
602
- # Custom attribute writer method checking allowed values (enum).
603
- # @param [Object] review_status Object to be assigned
604
- def review_status=(review_status)
605
- validator = EnumAttributeValidator.new('String', ["Not Approved", "Under Review", "Approved", "unknown_default_open_api"])
606
- unless validator.valid?(review_status)
607
- fail ArgumentError, "invalid value for \"review_status\", must be one of #{validator.allowable_values}."
608
- end
609
- @review_status = review_status
610
- end
611
-
612
- # Custom attribute writer method checking allowed values (enum).
613
- # @param [Object] severity Object to be assigned
614
- def severity=(severity)
615
- validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
616
- unless validator.valid?(severity)
617
- fail ArgumentError, "invalid value for \"severity\", must be one of #{validator.allowable_values}."
618
- end
619
- @severity = severity
620
- end
621
-
622
- # Custom attribute writer method checking allowed values (enum).
623
- # @param [Object] raw_severity Object to be assigned
624
- def raw_severity=(raw_severity)
625
- validator = EnumAttributeValidator.new('String', ["I", "II", "III", "unknown_default_open_api"])
626
- unless validator.valid?(raw_severity)
627
- fail ArgumentError, "invalid value for \"raw_severity\", must be one of #{validator.allowable_values}."
628
- end
629
- @raw_severity = raw_severity
630
- end
631
-
632
- # Custom attribute writer method checking allowed values (enum).
633
- # @param [Object] relevance_of_threat Object to be assigned
634
- def relevance_of_threat=(relevance_of_threat)
635
- validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
636
- unless validator.valid?(relevance_of_threat)
637
- fail ArgumentError, "invalid value for \"relevance_of_threat\", must be one of #{validator.allowable_values}."
638
- end
639
- @relevance_of_threat = relevance_of_threat
640
- end
641
-
642
- # Custom attribute writer method checking allowed values (enum).
643
- # @param [Object] likelihood Object to be assigned
644
- def likelihood=(likelihood)
645
- validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
646
- unless validator.valid?(likelihood)
647
- fail ArgumentError, "invalid value for \"likelihood\", must be one of #{validator.allowable_values}."
648
- end
649
- @likelihood = likelihood
650
- end
651
-
652
- # Custom attribute writer method checking allowed values (enum).
653
- # @param [Object] impact Object to be assigned
654
- def impact=(impact)
655
- validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
656
- unless validator.valid?(impact)
657
- fail ArgumentError, "invalid value for \"impact\", must be one of #{validator.allowable_values}."
658
- end
659
- @impact = impact
660
- end
661
-
662
- # Custom attribute writer method checking allowed values (enum).
663
- # @param [Object] residual_risk_level Object to be assigned
664
- def residual_risk_level=(residual_risk_level)
665
- validator = EnumAttributeValidator.new('String', ["Very Low", "Low", "Moderate", "High", "Very High", "unknown_default_open_api"])
666
- unless validator.valid?(residual_risk_level)
667
- fail ArgumentError, "invalid value for \"residual_risk_level\", must be one of #{validator.allowable_values}."
668
- end
669
- @residual_risk_level = residual_risk_level
670
- end
671
-
672
619
  # Custom attribute writer method checking allowed values (enum).
673
620
  # @param [Object] resulting_residual_risk_level_after_proposed_mitigations Object to be assigned
674
621
  def resulting_residual_risk_level_after_proposed_mitigations=(resulting_residual_risk_level_after_proposed_mitigations)
@@ -679,6 +626,16 @@ module EmassClient
679
626
  @resulting_residual_risk_level_after_proposed_mitigations = resulting_residual_risk_level_after_proposed_mitigations
680
627
  end
681
628
 
629
+ # Custom attribute writer method checking allowed values (enum).
630
+ # @param [Object] review_status Object to be assigned
631
+ def review_status=(review_status)
632
+ validator = EnumAttributeValidator.new('String', ["Not Approved", "Under Review", "Approved", "unknown_default_open_api"])
633
+ unless validator.valid?(review_status)
634
+ fail ArgumentError, "invalid value for \"review_status\", must be one of #{validator.allowable_values}."
635
+ end
636
+ @review_status = review_status
637
+ end
638
+
682
639
  # Checks equality by comparing each attribute.
683
640
  # @param [Object] Object to be compared
684
641
  def ==(o)
@@ -687,42 +644,20 @@ module EmassClient
687
644
  system_id == o.system_id &&
688
645
  poam_id == o.poam_id &&
689
646
  display_poam_id == o.display_poam_id &&
690
- is_inherited == o.is_inherited &&
691
- external_uid == o.external_uid &&
692
- control_acronym == o.control_acronym &&
693
- cci == o.cci &&
694
- assessment_procedure == o.assessment_procedure &&
695
647
  status == o.status &&
696
- review_status == o.review_status &&
697
648
  vulnerability_description == o.vulnerability_description &&
698
- source_ident_vuln == o.source_ident_vuln &&
699
- security_checks == o.security_checks &&
700
- milestones == o.milestones &&
649
+ source_identifying_vulnerability == o.source_identifying_vulnerability &&
701
650
  poc_organization == o.poc_organization &&
651
+ resources == o.resources &&
652
+ identified_in_cfo_audit_or_other_review == o.identified_in_cfo_audit_or_other_review &&
702
653
  poc_first_name == o.poc_first_name &&
703
654
  poc_last_name == o.poc_last_name &&
704
655
  poc_email == o.poc_email &&
705
656
  poc_phone_number == o.poc_phone_number &&
706
657
  severity == o.severity &&
707
- raw_severity == o.raw_severity &&
708
- relevance_of_threat == o.relevance_of_threat &&
709
- likelihood == o.likelihood &&
710
- impact == o.impact &&
711
- impact_description == o.impact_description &&
712
- residual_risk_level == o.residual_risk_level &&
713
- recommendations == o.recommendations &&
714
- resources == o.resources &&
715
658
  scheduled_completion_date == o.scheduled_completion_date &&
716
659
  completion_date == o.completion_date &&
717
- extension_date == o.extension_date &&
718
660
  comments == o.comments &&
719
- mitigation == o.mitigation &&
720
- is_active == o.is_active &&
721
- resulting_residual_risk_level_after_proposed_mitigations == o.resulting_residual_risk_level_after_proposed_mitigations &&
722
- predisposing_conditions == o.predisposing_conditions &&
723
- threat_description == o.threat_description &&
724
- devices_affected == o.devices_affected &&
725
- identified_in_cfo_audit_or_other_review == o.identified_in_cfo_audit_or_other_review &&
726
661
  personnel_resources_funded_base_hours == o.personnel_resources_funded_base_hours &&
727
662
  personnel_resources_cost_code == o.personnel_resources_cost_code &&
728
663
  personnel_resources_unfunded_base_hours == o.personnel_resources_unfunded_base_hours &&
@@ -732,7 +667,32 @@ module EmassClient
732
667
  non_personnel_resources_cost_code == o.non_personnel_resources_cost_code &&
733
668
  non_personnel_resources_unfunded_amount == o.non_personnel_resources_unfunded_amount &&
734
669
  non_personnel_resources_nonfunding_obstacle == o.non_personnel_resources_nonfunding_obstacle &&
735
- non_personnel_resources_nonfunding_obstacle_other_reason == o.non_personnel_resources_nonfunding_obstacle_other_reason
670
+ non_personnel_resources_nonfunding_obstacle_other_reason == o.non_personnel_resources_nonfunding_obstacle_other_reason &&
671
+ milestones == o.milestones &&
672
+ external_uid == o.external_uid &&
673
+ control_acronym == o.control_acronym &&
674
+ assessment_procedure == o.assessment_procedure &&
675
+ security_checks == o.security_checks &&
676
+ raw_severity == o.raw_severity &&
677
+ relevance_of_threat == o.relevance_of_threat &&
678
+ likelihood == o.likelihood &&
679
+ impact == o.impact &&
680
+ impact_description == o.impact_description &&
681
+ residual_risk_level == o.residual_risk_level &&
682
+ recommendations == o.recommendations &&
683
+ mitigations == o.mitigations &&
684
+ resulting_residual_risk_level_after_proposed_mitigations == o.resulting_residual_risk_level_after_proposed_mitigations &&
685
+ predisposing_conditions == o.predisposing_conditions &&
686
+ threat_description == o.threat_description &&
687
+ devices_affected == o.devices_affected &&
688
+ condition_id == o.condition_id &&
689
+ is_inherited == o.is_inherited &&
690
+ cci == o.cci &&
691
+ review_status == o.review_status &&
692
+ created_date == o.created_date &&
693
+ extension_date == o.extension_date &&
694
+ pending_extension_date == o.pending_extension_date &&
695
+ artifacts == o.artifacts
736
696
  end
737
697
 
738
698
  # @see the `==` method
@@ -744,7 +704,7 @@ module EmassClient
744
704
  # Calculates hash code according to all attributes.
745
705
  # @return [Integer] Hash code
746
706
  def hash
747
- [system_id, poam_id, display_poam_id, is_inherited, external_uid, control_acronym, cci, assessment_procedure, status, review_status, vulnerability_description, source_ident_vuln, security_checks, milestones, poc_organization, poc_first_name, poc_last_name, poc_email, poc_phone_number, severity, raw_severity, relevance_of_threat, likelihood, impact, impact_description, residual_risk_level, recommendations, resources, scheduled_completion_date, completion_date, extension_date, comments, mitigation, is_active, resulting_residual_risk_level_after_proposed_mitigations, predisposing_conditions, threat_description, devices_affected, identified_in_cfo_audit_or_other_review, personnel_resources_funded_base_hours, personnel_resources_cost_code, personnel_resources_unfunded_base_hours, personnel_resources_nonfunding_obstacle, personnel_resources_nonfunding_obstacle_other_reason, non_personnel_resources_funded_amount, non_personnel_resources_cost_code, non_personnel_resources_unfunded_amount, non_personnel_resources_nonfunding_obstacle, non_personnel_resources_nonfunding_obstacle_other_reason].hash
707
+ [system_id, poam_id, display_poam_id, status, vulnerability_description, source_identifying_vulnerability, poc_organization, resources, identified_in_cfo_audit_or_other_review, poc_first_name, poc_last_name, poc_email, poc_phone_number, severity, scheduled_completion_date, completion_date, comments, personnel_resources_funded_base_hours, personnel_resources_cost_code, personnel_resources_unfunded_base_hours, personnel_resources_nonfunding_obstacle, personnel_resources_nonfunding_obstacle_other_reason, non_personnel_resources_funded_amount, non_personnel_resources_cost_code, non_personnel_resources_unfunded_amount, non_personnel_resources_nonfunding_obstacle, non_personnel_resources_nonfunding_obstacle_other_reason, milestones, external_uid, control_acronym, assessment_procedure, security_checks, raw_severity, relevance_of_threat, likelihood, impact, impact_description, residual_risk_level, recommendations, mitigations, resulting_residual_risk_level_after_proposed_mitigations, predisposing_conditions, threat_description, devices_affected, condition_id, is_inherited, cci, review_status, created_date, extension_date, pending_extension_date, artifacts].hash
748
708
  end
749
709
 
750
710
  # Builds the object from hash
@@ -809,7 +769,7 @@ module EmassClient
809
769
  else # model
810
770
  # models (e.g. Pet) or oneOf
811
771
  klass = EmassClient.const_get(type)
812
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
772
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
813
773
  end
814
774
  end
815
775