module RemoteResource::Concerns::Relation::ClassMethods

Public Instance Methods

collect_from_superclasses(variable_name) click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 42
def collect_from_superclasses(variable_name)
  methods = []
  klass = self
  while klass do
    methods += Array.wrap(klass.instance_variable_get(variable_name))
    klass = klass.superclass
  end
  methods
end
delegate_from_relation(*methods) click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 33
def delegate_from_relation(*methods)
  @delegated_from_relation ||= []
  @delegated_from_relation += methods
end
delegate_to_relation(*methods) click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 13
def delegate_to_relation(*methods)
  @delegated_to_relation ||= []
  @delegated_to_relation += methods
  single_delegate methods => :relation
end
delegate_to_relation_merged(*methods) click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 23
def delegate_to_relation_merged(*methods)
  @delegated_to_relation_merged ||= []
  @delegated_to_relation_merged += methods
  delegate_to_relation(*methods)
end
delegated_from_relation() click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 38
def delegated_from_relation
  collect_from_superclasses(:@delegated_from_relation)
end
delegated_to_relation() click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 19
def delegated_to_relation
  collect_from_superclasses(:@delegated_to_relation)
end
delegated_to_relation_merged() click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 29
def delegated_to_relation_merged
  collect_from_superclasses(:@delegated_to_relation_merged)
end
relation() click to toggle source
# File lib/remote_resource/concerns/relation.rb, line 9
def relation
  @relation ||= RemoteResource::Model::Relation.for_model(self)
end