Class: Oscal::V1_2_1::ParameterSelection
- Defined in:
- lib/oscal/v1_2_1/all_models.rb
Instance Method Summary collapse
- #json_soa_from_choice_choice(instance, value) ⇒ Object
- #json_soa_to_choice_choice(instance, doc) ⇒ Object
Methods inherited from Base
Instance Method Details
#json_soa_from_choice_choice(instance, value) ⇒ Object
9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 9534 def json_soa_from_choice_choice(instance, value) items = case value when Hash then [value] when Array then value when String then [value] else return end parsed = items.map do |item| case item when Hash then Oscal::V1_2_1::ParameterSelectionChoice.of_json(item) when String then Oscal::V1_2_1::ParameterSelectionChoice.of_json(item) else item end end instance.instance_variable_set(:@choice, parsed) end |
#json_soa_to_choice_choice(instance, doc) ⇒ Object
9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 9551 def json_soa_to_choice_choice(instance, doc) current = instance.instance_variable_get(:@choice) if current.is_a?(Array) result = current.map do |item| if item.is_a?(Lutaml::Model::Serializable) Oscal::V1_2_1::ParameterSelectionChoice.as_json(item) else item end end doc["choice"] = result.length == 1 ? result.first : result end end |