Class: Oscal::V1_2_1::Import
- Defined in:
- lib/oscal/v1_2_1/all_models.rb
Instance Method Summary collapse
- #json_assembly_soa_from_include_all_include_all(instance, value) ⇒ Object
- #json_assembly_soa_to_include_all_include_all(instance, doc) ⇒ Object
Methods inherited from Base
Instance Method Details
#json_assembly_soa_from_include_all_include_all(instance, value) ⇒ Object
11053 11054 11055 11056 11057 11058 11059 11060 11061 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 11053 def json_assembly_soa_from_include_all_include_all(instance, value) items = case value when Hash then [value] when Array then value else return end parsed = items.map { |item| Oscal::V1_2_1::IncludeAll.of_json(item.is_a?(Hash) ? item : {}) } instance.instance_variable_set(:@include_all, parsed) end |
#json_assembly_soa_to_include_all_include_all(instance, doc) ⇒ Object
11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 11063 def json_assembly_soa_to_include_all_include_all(instance, doc) current = instance.instance_variable_get(:@include_all) if current.is_a?(Array) result = current.map do |item| if item.is_a?(Lutaml::Model::Serializable) Oscal::V1_2_1::IncludeAll.as_json(item) else item end end doc["include-all"] = result.length == 1 ? result.first : result end end |