# File lib/apipie_bindings/resource.rb, line 7 def initialize(name, api) raise NameError.new("Resource '#{name}' does not exist in the API") unless api.apidoc[:docs][:resources].key?(name) @name = name @api = api end
# File lib/apipie_bindings/resource.rb, line 29 def action(name) ApipieBindings::Action.new(@name, name, @api) end
# File lib/apipie_bindings/resource.rb, line 21 def actions apidoc[:methods].map { |a| action(a[:name].to_sym) } end
# File lib/apipie_bindings/resource.rb, line 17 def apidoc @api.apidoc[:docs][:resources][@name] end
# File lib/apipie_bindings/resource.rb, line 13 def call(action, params={}, headers={}, options={}) @api.call(@name, action, params, headers, options) end
# File lib/apipie_bindings/resource.rb, line 25 def has_action?(name) apidoc[:methods].any? { |action| action[:name].to_sym == name } end
# File lib/apipie_bindings/resource.rb, line 41 def inspect to_s end
# File lib/apipie_bindings/resource.rb, line 33 def singular_name ApipieBindings::Inflector.singularize(@name.to_s) end
# File lib/apipie_bindings/resource.rb, line 37 def to_s "<Resource :#{@name}>" end