class Quickery::QuickeryBuilder

Attributes

association_chains[R]
dependee_column_name[R]
depender_column_name[R]
model[R]

Public Class Methods

new(model:, association_chains:, dependee_column_name:, depender_column_name:) click to toggle source
# 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

Public Instance Methods

add_to_association_chains() click to toggle source
# 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() click to toggle source
# 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() click to toggle source
# File lib/quickery/quickery_builder.rb, line 26
def create_model_callbacks
  @callbacks_builder = CallbacksBuilder.new(quickery_builder: self)
  @callbacks_builder.build_callbacks
end