Module: Sequencescape::Api::Associations::InstanceMethods
- Defined in:
- lib/sequencescape-api/associations.rb
Defined Under Namespace
Classes: CompositeErrors
Instance Method Summary collapse
- #attributes_for(path, default_value_if_missing = nil) ⇒ Object
- #attributes_for?(path) ⇒ Boolean
- #errors ⇒ Object
- #initialize(*args, &block) ⇒ Object
- #is_association?(name) ⇒ Boolean
- #run_validations! ⇒ Object
Instance Method Details
#attributes_for(path, default_value_if_missing = nil) ⇒ Object
54 55 56 57 |
# File 'lib/sequencescape-api/associations.rb', line 54 def attributes_for(path, default_value_if_missing = nil) attributes_from_path(path, default_value_if_missing) or raise Sequencescape::Api::JsonError.new(path.to_s, self) end |
#attributes_for?(path) ⇒ Boolean
59 60 61 |
# File 'lib/sequencescape-api/associations.rb', line 59 def attributes_for?(path) !!attributes_from_path(path) end |
#errors ⇒ Object
105 106 107 |
# File 'lib/sequencescape-api/associations.rb', line 105 def errors @errors ||= CompositeErrors.new(self) end |
#initialize(*args, &block) ⇒ Object
42 43 44 45 |
# File 'lib/sequencescape-api/associations.rb', line 42 def initialize(*args, &block) @associations, @errors = {}, nil super end |
#is_association?(name) ⇒ Boolean
50 51 52 |
# File 'lib/sequencescape-api/associations.rb', line 50 def is_association?(name) associations.key?(name.to_sym) end |
#run_validations! ⇒ Object
68 69 70 71 |
# File 'lib/sequencescape-api/associations.rb', line 68 def run_validations! our_result, their_result = super, @associations.values.all?(&:run_validations!) our_result and their_result end |