class ApipieBindings::Resource

Attributes

name[R]

Public Class Methods

new(name, api) click to toggle source
# 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

Public Instance Methods

action(name) click to toggle source
# File lib/apipie_bindings/resource.rb, line 29
def action(name)
  ApipieBindings::Action.new(@name, name, @api)
end
actions() click to toggle source
# File lib/apipie_bindings/resource.rb, line 21
def actions
  apidoc[:methods].map { |a| action(a[:name].to_sym) }
end
apidoc() click to toggle source
# File lib/apipie_bindings/resource.rb, line 17
def apidoc
  @api.apidoc[:docs][:resources][@name]
end
call(action, params={}, headers={}, options={}) click to toggle source
# File lib/apipie_bindings/resource.rb, line 13
def call(action, params={}, headers={}, options={})
  @api.call(@name, action, params, headers, options)
end
has_action?(name) click to toggle source
# File lib/apipie_bindings/resource.rb, line 25
def has_action?(name)
  apidoc[:methods].any? { |action| action[:name].to_sym == name }
end
inspect() click to toggle source
# File lib/apipie_bindings/resource.rb, line 41
def inspect
  to_s
end
singular_name() click to toggle source
# File lib/apipie_bindings/resource.rb, line 33
def singular_name
  ApipieBindings::Inflector.singularize(@name.to_s)
end
to_s() click to toggle source
# File lib/apipie_bindings/resource.rb, line 37
def to_s
  "<Resource :#{@name}>"
end