Module: DroidServices::Extensions::HasResource
- Extended by:
- ActiveSupport::Concern
- Included in:
- BaseResource
- Defined in:
- lib/droid_services/extensions/has_resource.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #build_collection ⇒ Object
- #build_resource(id, attributes = {}) ⇒ Object
- #collection_name ⇒ Object
- #find_resource(id) ⇒ Object
- #resource_attributes ⇒ Object
- #resource_class ⇒ Object
- #resource_scope ⇒ Object
Instance Method Details
#build_collection ⇒ Object
41 42 43 |
# File 'lib/droid_services/extensions/has_resource.rb', line 41 def build_collection resource_scope end |
#build_resource(id, attributes = {}) ⇒ Object
31 32 33 34 35 36 37 38 39 |
# 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 ⇒ Object
23 24 25 |
# File 'lib/droid_services/extensions/has_resource.rb', line 23 def collection_name resource_name.pluralize end |
#find_resource(id) ⇒ Object
45 46 47 |
# File 'lib/droid_services/extensions/has_resource.rb', line 45 def find_resource(id) resource_scope.find(id) end |
#resource_attributes ⇒ Object
27 28 29 |
# File 'lib/droid_services/extensions/has_resource.rb', line 27 def resource_attributes filter_attributes(dirty_resource_attributes) end |
#resource_class ⇒ Object
11 12 13 14 15 16 17 |
# 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 ⇒ Object
19 20 21 |
# File 'lib/droid_services/extensions/has_resource.rb', line 19 def resource_scope resource_class end |