Sha256: 8d7b8d2ddb398ad203bec43b768c7bf9d7fcf091978385a3836e8dc477783185
Contents?: true
Size: 1.34 KB
Versions: 3
Compression:
Stored size: 1.34 KB
Contents
require 'montage/version' require 'montage/client' require 'montage/resources' require 'montage/query' require 'montage_rails/version' require 'montage_rails/errors' require 'montage_rails/base' require 'montage_rails/query_cache' module MontageRails class << self attr_accessor :username, :password, :token, :domain, :no_caching def configure yield self validate get_token unless token end def connection @connection ||= begin Montage::Client.new do |c| c.token = token c.domain = domain end end end def notify(caller, &block) ActiveSupport::Notifications.instrument("reql.montage_rails", caller.payload) do yield end end private def validate raise AttributeMissingError, "You must include a domain" unless domain raise AttributeMissingError, "You must include a username and password if no token is given" unless token || (username && password) end def get_token c = Montage::Client.new do |c| c.domain = domain c.username = username c.password = password end response = c.auth raise MontageAPIError, "There was a problem authenticating with your username and password for domain #{domain}" unless response.success? @token = response.token.value end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
montage_rails-0.5.0 | lib/montage_rails.rb |
montage_rails-0.4.11 | lib/montage_rails.rb |
montage_rails-0.4.10 | lib/montage_rails.rb |