Class: Proximus::Proxy

Inherits:
Object
  • Object
show all
Defined in:
lib/proximus/proxy.rb

Instance Method Summary collapse

Constructor Details

#initialize(config_file = 'config/proximus.yml', env = 'development') ⇒ Proxy

Returns a new instance of Proxy.



3
4
5
6
7
8
9
10
11
12
# File 'lib/proximus/proxy.rb', line 3

def initialize(config_file = 'config/proximus.yml', env='development')
  @config   = load_config(config_file, env)

  @base_url = @config[:base_url]
  @username = @config[:username]
  @password = @config[:password]
  @auth_url = @config[:auth_url]

  @api = RestClient::Resource.new(@base_url)
end

Instance Method Details

#authenticateObject



14
15
16
17
# File 'lib/proximus/proxy.rb', line 14

def authenticate
  resp = @api[@auth_url].post(:username => @username, :password => @password)
  @sessionid = resp.cookies["sessionid"] # AB: this needs to be genericized
end

#execute(method, path) ⇒ Object



19
20
21
# File 'lib/proximus/proxy.rb', line 19

def execute(method, path)
  @api[path].send method.downcase.to_sym, :cookies => {:sessionid => @sessionid}
end

#load_config(file, env) ⇒ Object



23
24
25
# File 'lib/proximus/proxy.rb', line 23

def load_config(file, env)
  YAML.load_file(file)[env].symbolize_keys
end

#proximus_maximus_configuratusObject

AB: For history. And fun.

Proximus::Proxy started out as proximus_maximus_configuratus


29
# File 'lib/proximus/proxy.rb', line 29

def proximus_maximus_configuratus; end