module Restforce::Concerns::Verbs

def define_api_verb(verb)

Returns nil.

# => api_get 'sobjects'
define_api_verb :get

Examples

verb - Symbol name of the verb (e.g. :get).

verb to a salesforce api endpoint.
Internal: Defines a method to handle HTTP requests with the passed in
def define_api_verb(verb)
  define_method :"api_#{verb}" do |*args, &block|
    args[0] = api_path(args[0])
    send(verb, *args, &block)
  end
end

def define_verb(verb)

Returns nil.

# => get '/services/data/v24.0/sobjects'
define_verb :get

Examples

verb - Symbol name of the verb (e.g. :get).

verb.
Internal: Defines a method to handle HTTP requests with the passed in
def define_verb(verb)
  define_method verb do |*args, &block|
    retries = options[:authentication_retries]
    begin
      connection.send(verb, *args, &block)
    rescue Restforce::UnauthorizedError
      if retries.positive?
        retries -= 1
        connection.url_prefix = options[:instance_url]
        retry
      end
      raise
    end
  end
end

def define_verbs(*verbs)

Returns nil.

define_verbs :get, :post

Examples

verbs - A list of verbs to define methods for.

Internal: Define methods to handle a verb.
def define_verbs(*verbs)
  verbs.each do |verb|
    define_verb(verb)
    define_api_verb(verb)
  end
end