Class: Oscal::V1_2_1::FindingTarget
- Defined in:
- lib/oscal/v1_2_1/all_models.rb
Instance Method Summary collapse
- #json_assembly_soa_from_implementation_status_implementation_status(instance, value) ⇒ Object
- #json_assembly_soa_from_status_status(instance, value) ⇒ Object
- #json_assembly_soa_to_implementation_status_implementation_status(instance, doc) ⇒ Object
- #json_assembly_soa_to_status_status(instance, doc) ⇒ Object
- #json_from_remarks_remarks(instance, value) ⇒ Object
- #json_to_remarks_remarks(instance, doc) ⇒ Object
- #validate_occurrences ⇒ Object
Methods inherited from Base
Instance Method Details
#json_assembly_soa_from_implementation_status_implementation_status(instance, value) ⇒ Object
14546 14547 14548 14549 14550 14551 14552 14553 14554 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14546 def json_assembly_soa_from_implementation_status_implementation_status(instance, value) items = case value when Hash then [value] when Array then value else return end parsed = items.map { |item| Oscal::V1_2_1::ImplementationStatus.of_json(item.is_a?(Hash) ? item : {}) } instance.instance_variable_set(:@implementation_status, parsed) end |
#json_assembly_soa_from_status_status(instance, value) ⇒ Object
14586 14587 14588 14589 14590 14591 14592 14593 14594 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14586 def json_assembly_soa_from_status_status(instance, value) items = case value when Hash then [value] when Array then value else return end parsed = items.map { |item| Oscal::V1_2_1::FindingTargetStatus.of_json(item.is_a?(Hash) ? item : {}) } instance.instance_variable_set(:@status, parsed) end |
#json_assembly_soa_to_implementation_status_implementation_status(instance, doc) ⇒ Object
14532 14533 14534 14535 14536 14537 14538 14539 14540 14541 14542 14543 14544 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14532 def json_assembly_soa_to_implementation_status_implementation_status(instance, doc) current = instance.instance_variable_get(:@implementation_status) if current.is_a?(Array) result = current.map do |item| if item.is_a?(Lutaml::Model::Serializable) Oscal::V1_2_1::ImplementationStatus.as_json(item) else item end end doc["implementation-status"] = result.length == 1 ? result.first : result end end |
#json_assembly_soa_to_status_status(instance, doc) ⇒ Object
14596 14597 14598 14599 14600 14601 14602 14603 14604 14605 14606 14607 14608 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14596 def json_assembly_soa_to_status_status(instance, doc) current = instance.instance_variable_get(:@status) if current.is_a?(Array) result = current.map do |item| if item.is_a?(Lutaml::Model::Serializable) Oscal::V1_2_1::FindingTargetStatus.as_json(item) else item end end doc["status"] = result.length == 1 ? result.first : result end end |
#json_from_remarks_remarks(instance, value) ⇒ Object
14556 14557 14558 14559 14560 14561 14562 14563 14564 14565 14566 14567 14568 14569 14570 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14556 def json_from_remarks_remarks(instance, value) if value.is_a?(Array) parsed = value.map { |v| Oscal::V1_2_1::Remarks.of_json(v) } instance.instance_variable_set(:@remarks, parsed) elsif value.is_a?(Hash) if value.empty? inst = Oscal::V1_2_1::Remarks.new(content: "") instance.instance_variable_set(:@remarks, inst) else instance.instance_variable_set(:@remarks, Oscal::V1_2_1::Remarks.of_json(value)) end elsif value instance.instance_variable_set(:@remarks, Oscal::V1_2_1::Remarks.of_json(value)) end end |
#json_to_remarks_remarks(instance, doc) ⇒ Object
14572 14573 14574 14575 14576 14577 14578 14579 14580 14581 14582 14583 14584 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14572 def json_to_remarks_remarks(instance, doc) current = instance.instance_variable_get(:@remarks) if current.is_a?(Array) doc["remarks"] = current.map { |item| item.respond_to?(:content) ? item.content : item } elsif current if current.is_a?(Lutaml::Model::Serializable) doc["remarks"] = Oscal::V1_2_1::Remarks.as_json(current) else val = current.respond_to?(:content) ? current.content : current doc["remarks"] = val end end end |
#validate_occurrences ⇒ Object
14610 14611 14612 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 14610 def validate_occurrences Metaschema::ConstraintValidator.validate_occurrences(self, self.class.instance_variable_get(:@occurrence_constraints)) end |