Class: Quickery::QuickeryBuilder
- Inherits:
-
Object
- Object
- Quickery::QuickeryBuilder
- Defined in:
- lib/quickery/quickery_builder.rb
Instance Attribute Summary collapse
-
#association_chains ⇒ Object
readonly
Returns the value of attribute association_chains.
-
#dependee_column_name ⇒ Object
readonly
Returns the value of attribute dependee_column_name.
-
#depender_column_name ⇒ Object
readonly
Returns the value of attribute depender_column_name.
-
#model ⇒ Object
readonly
Returns the value of attribute model.
Instance Method Summary collapse
- #add_to_association_chains ⇒ Object
- #add_to_model ⇒ Object
- #create_model_callbacks ⇒ Object
-
#initialize(model:, association_chains:, dependee_column_name:, depender_column_name:) ⇒ QuickeryBuilder
constructor
A new instance of QuickeryBuilder.
Constructor Details
#initialize(model:, association_chains:, dependee_column_name:, depender_column_name:) ⇒ QuickeryBuilder
Returns a new instance of QuickeryBuilder.
8 9 10 11 12 13 |
# File 'lib/quickery/quickery_builder.rb', line 8 def initialize(model:, association_chains:, dependee_column_name:, depender_column_name:) @model = model @association_chains = association_chains @dependee_column_name = dependee_column_name @depender_column_name = depender_column_name end |
Instance Attribute Details
#association_chains ⇒ Object (readonly)
Returns the value of attribute association_chains.
6 7 8 |
# File 'lib/quickery/quickery_builder.rb', line 6 def association_chains @association_chains end |
#dependee_column_name ⇒ Object (readonly)
Returns the value of attribute dependee_column_name.
5 6 7 |
# File 'lib/quickery/quickery_builder.rb', line 5 def dependee_column_name @dependee_column_name end |
#depender_column_name ⇒ Object (readonly)
Returns the value of attribute depender_column_name.
4 5 6 |
# File 'lib/quickery/quickery_builder.rb', line 4 def depender_column_name @depender_column_name end |
#model ⇒ Object (readonly)
Returns the value of attribute model.
3 4 5 |
# File 'lib/quickery/quickery_builder.rb', line 3 def model @model end |
Instance Method Details
#add_to_association_chains ⇒ Object
20 21 22 23 24 |
# File 'lib/quickery/quickery_builder.rb', line 20 def add_to_association_chains association_chains.each do |association_chain| association_chain.quickery_builder = self end end |
#add_to_model ⇒ Object
15 16 17 18 |
# File 'lib/quickery/quickery_builder.rb', line 15 def add_to_model @model.quickery_builders ||= {} @model.quickery_builders[depender_column_name] = self end |
#create_model_callbacks ⇒ Object
26 27 28 29 |
# File 'lib/quickery/quickery_builder.rb', line 26 def create_model_callbacks @callbacks_builder = CallbacksBuilder.new(quickery_builder: self) @callbacks_builder.build_callbacks end |