class ActiveForce::Association::EagerLoadProjectionBuilder
Attributes
association[R]
parent_association_field[R]
query_fields[R]
Public Class Methods
build(association, parent_association_field = nil, query_fields = nil)
click to toggle source
# File lib/active_force/association/eager_load_projection_builder.rb, line 6 def build(association, parent_association_field = nil, query_fields = nil) new(association, parent_association_field, query_fields).projections end
new(association, parent_association_field = nil, query_fields = nil)
click to toggle source
# File lib/active_force/association/eager_load_projection_builder.rb, line 20 def initialize(association, parent_association_field = nil, query_fields = nil) @association = association @parent_association_field = parent_association_field @query_fields = query_fields end
projection_builder_class(association)
click to toggle source
# File lib/active_force/association/eager_load_projection_builder.rb, line 10 def projection_builder_class(association) klass = association.class.name.demodulize ActiveForce::Association.const_get "#{klass}ProjectionBuilder" rescue NameError raise "No projection builder exists for #{klass}" end
Public Instance Methods
projections()
click to toggle source
# File lib/active_force/association/eager_load_projection_builder.rb, line 26 def projections builder_class = self.class.projection_builder_class(association) builder_class.new(association, parent_association_field, query_fields).projections end