Sha256: 7547ea7a2592956ca27d00adcace8c7960aeb155768a1ad19eb9b1d606474897

Contents?: true

Size: 1.4 KB

Versions: 1

Compression:

Stored size: 1.4 KB

Contents

require 'savon'
require 'i18n'
require 'active_support'
require 'active_support/core_ext'

require 'inforouter/version'
require 'inforouter/errors'
require 'inforouter/responses'
require 'inforouter/record'
require 'inforouter/access_list'
require 'inforouter/access_list_domain_members_item'
require 'inforouter/access_list_user_group_item'
require 'inforouter/access_list_user_item'
require 'inforouter/document'
require 'inforouter/folder'
require 'inforouter/rights'
require 'inforouter/rule_item'
require 'inforouter/rules'
require 'inforouter/user'
require 'inforouter/users'
require 'inforouter/configuration'
require 'inforouter/client'

I18n.load_path << File.join(File.dirname(__FILE__), 'config', 'locales', 'en.yml')

module Inforouter
  class << self
    attr_accessor :configuration

    # infoRouter API version.
    API_VERSION = '8.0'

    # Returns true if the gem has been configured.
    def configured?
      !!configured
    end

    # Configure the gem
    def configure
      self.configuration ||= Configuration.new
      yield configuration
    end

    def reset!
      self.configuration = nil
      @client = nil
    end

    def client(options = {})
      check_configuration!
      @client ||= Inforouter::Client.new(options)
    end

    private

    def check_configuration!
      fail Inforouter::Errors::MissingConfig.new unless self.configuration
      self.configuration.check!
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
inforouter-0.2.0 lib/inforouter.rb