Sha256: c381ba8c5588d4d9bf700f5dbc29d8596b5ad52e26144510c4874060b2cccac6

Contents?: true

Size: 849 Bytes

Versions: 1

Compression:

Stored size: 849 Bytes

Contents

require 'restclient'
require 'forwardable'
require 'json' unless defined?(ActiveSupport::JSON)

module Panda
  class << self
    extend Forwardable

    attr_reader :cloud, :clouds
    attr_reader :connection

    def_delegators :connection, :get, :post, :put, :delete, :api_url, :setup_bucket, :signed_params

    def configure(auth_params=nil)
      @clouds = {}

      if auth_params
        connect!(auth_params)
      else
        yield @connection = Connection.new
      end

      @connection.raise_error=true
      @connection.format = :hash
      @cloud = Cloud::new(:id => @connection.cloud_id)
    end

    def connect!(auth_params, options={})
      @connection = Connection.new(auth_params, options)
    end

    def connection
      raise "Not connected. Please connect! first." unless @connection
      @connection
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
panda-1.0.0 lib/panda/panda.rb