Module: Restforce

Defined in:
lib/restforce.rb,
lib/restforce/mash.rb,
lib/restforce/client.rb,
lib/restforce/config.rb,
lib/restforce/sobject.rb,
lib/restforce/version.rb,
lib/restforce/upload_io.rb,
lib/restforce/collection.rb,
lib/restforce/middleware.rb,
lib/restforce/middleware/gzip.rb,
lib/restforce/middleware/logger.rb,
lib/restforce/middleware/caching.rb,
lib/restforce/middleware/mashify.rb,
lib/restforce/middleware/multipart.rb,
lib/restforce/middleware/raise_error.rb,
lib/restforce/middleware/instance_url.rb,
lib/restforce/middleware/authorization.rb,
lib/restforce/middleware/authentication.rb,
lib/restforce/middleware/authentication/token.rb,
lib/restforce/middleware/authentication/password.rb

Defined Under Namespace

Modules: CoreExtensions Classes: AuthenticationError, Client, Collection, Configuration, Mash, Middleware, SObject, UnauthorizedError

Constant Summary collapse

VERSION =
'0.1.6'
UploadIO =
Faraday::UploadIO

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.log(message) ⇒ Object



33
34
35
36
# File 'lib/restforce/config.rb', line 33

def log(message)
  return unless Restforce.log?
  Restforce.configuration.logger.send :debug, message
end

Class Method Details

.configurationObject

Returns the current Configuration

Example

Restforce.configuration.username = "username"
Restforce.configuration.password = "password"


13
14
15
# File 'lib/restforce/config.rb', line 13

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields the Configuration

Example

Restforce.configure do |config|
  config.username = "username"
  config.password = "password"
end

Yields:



25
26
27
# File 'lib/restforce/config.rb', line 25

def configure
  yield configuration
end

.decode_signed_request(message, client_secret) ⇒ Object

Public: Decodes a signed request received from Force.com Canvas.

message - The POST message containing the signed request from Salesforce. client_secret - The oauth client secret used to encrypt the message.

Returns the Hash context if the message is valid.



34
35
36
37
38
39
# File 'lib/restforce.rb', line 34

def decode_signed_request(message, client_secret)
  encryped_secret, payload = message.split('.')
  digest = OpenSSL::Digest::Digest.new('sha256')
  signature = Base64.encode64(OpenSSL::HMAC.hexdigest(digest, client_secret, payload))
  JSON.parse(Base64.decode64(payload)) if encryped_secret == signature
end

.log?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/restforce/config.rb', line 29

def log?
  @log ||= false
end

.new(options = {}) ⇒ Object

Alias for Restforce::Client.new

Shamelessly pulled from github.com/pengwynn/octokit/blob/master/lib/octokit.rb



24
25
26
# File 'lib/restforce.rb', line 24

def new(options = {})
  Restforce::Client.new(options)
end