Class: Oscal::V1_2_1::ImplementedRequirement
- Inherits:
-
Base
- Object
- Lutaml::Model::Serializable
- Base
- Oscal::V1_2_1::ImplementedRequirement
- Defined in:
- lib/oscal/v1_2_1/all_models.rb
Class Method Summary collapse
Instance Method Summary collapse
- #json_from_remarks_remarks(instance, value) ⇒ Object
- #json_to_remarks_remarks(instance, doc) ⇒ Object
- #validate_constraints ⇒ Object
- #validate_occurrences ⇒ Object
Methods inherited from Base
Class Method Details
.metaschema_constraints ⇒ Object
12251 12252 12253 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 12251 def self. @metaschema_constraints end |
Instance Method Details
#json_from_remarks_remarks(instance, value) ⇒ Object
12221 12222 12223 12224 12225 12226 12227 12228 12229 12230 12231 12232 12233 12234 12235 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 12221 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
12237 12238 12239 12240 12241 12242 12243 12244 12245 12246 12247 12248 12249 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 12237 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_constraints ⇒ Object
12255 12256 12257 12258 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 12255 def validate_constraints validator = Metaschema::ConstraintValidator.new validator.validate(self, self.class.) end |
#validate_occurrences ⇒ Object
12260 12261 12262 |
# File 'lib/oscal/v1_2_1/all_models.rb', line 12260 def validate_occurrences Metaschema::ConstraintValidator.validate_occurrences(self, self.class.instance_variable_get(:@occurrence_constraints)) end |