Module: Sinatra::API::ResourceAliases
- Included in:
- Sinatra::API
- Defined in:
- lib/sinatra/api/resource_aliases.rb
Instance Attribute Summary collapse
-
#resource_aliases ⇒ Object
Returns the value of attribute resource_aliases.
Class Method Summary collapse
Instance Method Summary collapse
- #alias_resource(original, resource_alias) ⇒ Object
- #aliases_for(resource) ⇒ Object
- #reset_aliases! ⇒ Object
Instance Attribute Details
#resource_aliases ⇒ Object
Returns the value of attribute resource_aliases.
4 5 6 |
# File 'lib/sinatra/api/resource_aliases.rb', line 4 def resource_aliases @resource_aliases end |
Class Method Details
.extended(base) ⇒ Object
6 7 8 9 |
# File 'lib/sinatra/api/resource_aliases.rb', line 6 def self.extended(base) base.resource_aliases = {} base.on :resource_located, &method(:export_alias) end |
Instance Method Details
#alias_resource(original, resource_alias) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/sinatra/api/resource_aliases.rb', line 11 def alias_resource(original, resource_alias) key, resource_alias = original.to_sym, resource_alias.to_s self.resource_aliases[key] ||= [] return if self.resource_aliases[key].include?(resource_alias) return if key.to_s == resource_alias self.resource_aliases[key] << resource_alias # logger.debug "API resource #{original} is now aliased as #{resource_alias}" end |
#aliases_for(resource) ⇒ Object
23 24 25 |
# File 'lib/sinatra/api/resource_aliases.rb', line 23 def aliases_for(resource) self.resource_aliases[resource.to_sym] || [] end |
#reset_aliases! ⇒ Object
27 28 29 |
# File 'lib/sinatra/api/resource_aliases.rb', line 27 def reset_aliases! self.resource_aliases = {} end |