Module: Pebblebed

Defined in:
lib/pebblebed/clients/quorum_client.rb,
lib/pebblebed/uid.rb,
lib/pebblebed/http.rb,
lib/pebblebed/config.rb,
lib/pebblebed/version.rb,
lib/pebblebed/connector.rb,
lib/pebblebed/uid_query.rb,
lib/pebblebed/clients/generic_client.rb,
lib/pebblebed/clients/abstract_client.rb,
lib/pebblebed/clients/checkpoint_client.rb

Overview

A client that talks to a number of clients all at on

Defined Under Namespace

Modules: Http Classes: AbstractClient, Builder, CheckpointClient, Connector, GenericClient, HttpError, InvalidUid, Parts, QuorumClient, UIDQuery, Uid

Constant Summary collapse

VERSION =
"0.0.18"

Class Method Summary collapse

Class Method Details

.config(&block) ⇒ Object



16
17
18
# File 'lib/pebblebed/config.rb', line 16

def self.config(&block)
  Builder.new.send(:instance_eval, &block)
end

.hostObject



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

def self.host
  @host
end

.host=(value) ⇒ Object



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

def self.host=(value)
  @host = value
end

.memcachedObject



37
38
39
# File 'lib/pebblebed/config.rb', line 37

def self.memcached
  @memcached
end

.memcached=(value) ⇒ Object



41
42
43
# File 'lib/pebblebed/config.rb', line 41

def self.memcached=(value)
  @memcached = value
end

.require_service(name, options = {}) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/pebblebed/config.rb', line 20

def self.require_service(name, options = {})
  (@services ||= {})[name.to_sym] = options
  Pebblebed::Connector.class_eval <<-END
    def #{name}
      self["#{name}"]
    end
  END
end

.root_url_for(service, url_opts = {}) ⇒ Object



54
55
56
# File 'lib/pebblebed/config.rb', line 54

def self.root_url_for(service, url_opts={})
  URI("http://#{url_opts[:host] || self.host}/api/#{service}/v#{version_of(service)}/")
end

.servicesObject



45
46
47
# File 'lib/pebblebed/config.rb', line 45

def self.services
  @services.keys
end

.version_of(service) ⇒ Object



49
50
51
52
# File 'lib/pebblebed/config.rb', line 49

def self.version_of(service)
  return 1 unless @services && @services[service.to_sym]
  @services[service.to_sym][:version] || 1
end