module DroidServices::Extensions::HasResource

Public Instance Methods

build_collection() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 41
def build_collection
  resource_scope
end
build_resource(id, attributes = {}) click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 31
def build_resource(id, attributes = {})
  if id.present?
    resource = find_resource(id)
    resource.attributes = attributes
    resource
  else
    resource_scope.new(default_resource_attributes.merge(attributes))
  end
end
collection_name() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 23
def collection_name
  resource_name.pluralize
end
find_resource(id) click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 45
def find_resource(id)
  resource_scope.find(id)
end
resource_attributes() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 27
def resource_attributes
  filter_attributes(dirty_resource_attributes)
end
resource_class() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 11
def resource_class
  if self.class.resource_class_name
    self.class.resource_class_name.constantize
  else
    resource_name.classify.constantize
  end
end
resource_scope() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 19
def resource_scope
  resource_class
end

Private Instance Methods

default_resource_attributes() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 61
def default_resource_attributes
  {}
end
dirty_resource_attributes() click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 57
def dirty_resource_attributes
  params[resource_name] || {}
end
filter_attributes(attributes) click to toggle source
# File lib/droid_services/extensions/has_resource.rb, line 65
def filter_attributes(attributes)
  attributes
end