Class: Session

Inherits:
Object
  • Object
show all
Extended by:
RightScale::Api::GatewayExtend
Includes:
RightScale::Api::Gateway
Defined in:
lib/rest_connection/rightscale/session.rb

Overview

API 1.5

Instance Attribute Summary

Attributes included from RightScale::Api::Base

#params

Class Method Summary collapse

Methods included from RightScale::Api::GatewayExtend

create, filters, find, find_all, find_by, find_with_filter, load, load_all, parse_args, resource_post_name

Methods included from RightScale::Api::GatewayConnection

#connection

Methods included from RightScale::Api::BaseExtend

#[], #create, #deny_methods, #filters, #find, #find_all, #find_by, #find_by_cloud_id, #find_by_id, #find_by_nickname, #find_by_nickname_speed, #find_with_filter, #resource_plural_name, #resource_singular_name

Methods included from RightScale::Api::BaseConnection

#connection

Methods included from RightScale::Api::Gateway

#[], #[]=, #actions, #hash_of_links, #href, #initialize, #load, #method_missing, #nickname, #parse_params, #rediscover, #save

Methods included from RightScale::Api::Base

#[], #[]=, #destroy, #initialize, #method_missing, #reload, #resource_plural_name, #resource_singular_name, #rs_id, #save

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class RightScale::Api::Gateway

Class Method Details

.accounts(opts = {}) ⇒ Object



49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/rest_connection/rightscale/session.rb', line 49

def self.accounts(opts={})
  settings = connection.settings
  params = {
    "email" => settings[:user],
    "password" => settings[:pass],
  }.merge(opts)
  a = Array.new
  connection.get(resource_singular_name + "/accounts").each do |object|
    a << Account.new(object)
  end
  return a
end

.create(opts = {}) ⇒ Object



37
38
39
40
41
42
43
44
45
46
47
# File 'lib/rest_connection/rightscale/session.rb', line 37

def self.create(opts={})
  settings = connection.settings
  ignored,  = settings[:api_url].split(/\/acct\//) if settings[:api_url].include?("acct")
  params = {
    "email" => settings[:user],
    "password" => settings[:pass],
    "account_href" => "/api/accounts/#{}"
  }.merge(opts)
  resp = connection.post(resource_singular_name, params)
  connection.cookie = resp.response['set-cookie']
end

.create_instance_sessionObject



62
63
64
# File 'lib/rest_connection/rightscale/session.rb', line 62

def self.create_instance_session
  # TODO
end

.indexObject



33
34
35
# File 'lib/rest_connection/rightscale/session.rb', line 33

def self.index
  self.new(connection.get(resource_singular_name))
end

.index_instance_sessionObject



66
67
68
# File 'lib/rest_connection/rightscale/session.rb', line 66

def self.index_instance_session
  # TODO
end