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
55 56 57 58 |
# File 'lib/sequencescape-api/associations.rb', line 55 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
60 61 62 |
# File 'lib/sequencescape-api/associations.rb', line 60 def attributes_for?(path) !!attributes_from_path(path) end |
#errors ⇒ Object
107 108 109 |
# File 'lib/sequencescape-api/associations.rb', line 107 def errors @errors ||= CompositeErrors.new(self) end |
#initialize(*args, &block) ⇒ Object
42 43 44 45 46 |
# File 'lib/sequencescape-api/associations.rb', line 42 def initialize(*args, &block) @associations = {} @errors = nil super end |
#is_association?(name) ⇒ Boolean
51 52 53 |
# File 'lib/sequencescape-api/associations.rb', line 51 def is_association?(name) associations.key?(name.to_sym) end |
#run_validations! ⇒ Object
69 70 71 72 73 |
# File 'lib/sequencescape-api/associations.rb', line 69 def run_validations! our_result = super their_result = @associations.values.all?(&:run_validations!) our_result and their_result end |