Class: Oscal::V1_2_1::InsertControls
- 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
11217 11218 11219 11220 11221 11222 11223 11224 11225 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 11217 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
11227 11228 11229 11230 11231 11232 11233 11234 11235 11236 11237 11238 11239 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 11227 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 |