Module: Metasploit::Model::Association::ClassMethods
- Defined in:
- lib/metasploit/model/association.rb
Overview
Defines DSL for define associations on ActiveModels with #association, which can then be retrieved in bulk with #association_by_name or a single association's reflection by name with #reflect_on_association.
Instance Method Summary collapse
-
#association(name, options = {}) ⇒ Metasploit::Model::Association::Reflection
Registers an association.
-
#association_by_name ⇒ Hash{Symbol => Metasploit::Model::Association::Reflection}
Associations registered with #association.
-
#reflect_on_association(name) ⇒ nil, Metasploit::Model::Association::Reflection
Returns reflection for association with the given name.
Instance Method Details
#association(name, options = {}) ⇒ Metasploit::Model::Association::Reflection
Registers an association.
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/metasploit/model/association.rb', line 19 def association(name, ={}) association = Metasploit::Model::Association::Reflection.new( :model => self, :name => name.to_sym, :class_name => [:class_name] ) association.valid! association_by_name[association.name] = association end |
#association_by_name ⇒ Hash{Symbol => Metasploit::Model::Association::Reflection}
Associations registered with #association.
34 35 36 |
# File 'lib/metasploit/model/association.rb', line 34 def association_by_name @association_by_name ||= {} end |
#reflect_on_association(name) ⇒ nil, Metasploit::Model::Association::Reflection
Returns reflection for association with the given name.
43 44 45 |
# File 'lib/metasploit/model/association.rb', line 43 def reflect_on_association(name) association_by_name[name.to_sym] end |