Class: MageHand::Client
- Inherits:
-
Object
- Object
- MageHand::Client
- Defined in:
- lib/ob_port/client.rb
Instance Attribute Summary collapse
-
#access_token_key ⇒ Object
Returns the value of attribute access_token_key.
-
#access_token_secret ⇒ Object
Returns the value of attribute access_token_secret.
-
#request_token ⇒ Object
Returns the value of attribute request_token.
Class Method Summary collapse
- .get_client(session_request_token = nil, session_access_token_key = nil, session_access_token_secret = nil, callback = nil, params = nil) ⇒ Object
- .set_app_keys(key, secret) ⇒ Object
Instance Method Summary collapse
- #access_token ⇒ Object
- #campaign(id) ⇒ Object
- #consumer ⇒ Object
- #create_wiki_page(options) ⇒ Object
- #current_user ⇒ Object (also: #me)
-
#initialize(session_request_token = nil, session_access_token_key = nil, session_access_token_secret = nil, callback = nil, params = nil) ⇒ Client
constructor
A new instance of Client.
- #logged_in? ⇒ Boolean
Constructor Details
#initialize(session_request_token = nil, session_access_token_key = nil, session_access_token_secret = nil, callback = nil, params = nil) ⇒ Client
Returns a new instance of Client.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/ob_port/client.rb', line 16 def initialize(session_request_token=nil, session_access_token_key=nil, session_access_token_secret=nil, callback=nil, params=nil) @request_token = session_request_token @access_token_key = session_access_token_key @access_token_secret = session_access_token_secret if !logged_in? && params && params[:oauth_verifier] temp_token = @request_token.get_access_token(:oauth_verifier => params[:oauth_verifier]) @access_token_key = temp_token.token @access_token_secret = temp_token.secret elsif !logged_in? @request_token = consumer.get_request_token(:oauth_callback => callback) end end |
Instance Attribute Details
#access_token_key ⇒ Object
Returns the value of attribute access_token_key.
3 4 5 |
# File 'lib/ob_port/client.rb', line 3 def access_token_key @access_token_key end |
#access_token_secret ⇒ Object
Returns the value of attribute access_token_secret.
3 4 5 |
# File 'lib/ob_port/client.rb', line 3 def access_token_secret @access_token_secret end |
#request_token ⇒ Object
Returns the value of attribute request_token.
3 4 5 |
# File 'lib/ob_port/client.rb', line 3 def request_token @request_token end |
Class Method Details
.get_client(session_request_token = nil, session_access_token_key = nil, session_access_token_secret = nil, callback = nil, params = nil) ⇒ Object
10 11 12 13 14 |
# File 'lib/ob_port/client.rb', line 10 def self.get_client(session_request_token=nil, session_access_token_key=nil, session_access_token_secret=nil, callback=nil, params=nil) Client.new(session_request_token, session_access_token_key, session_access_token_secret, callback, params) end |
.set_app_keys(key, secret) ⇒ Object
5 6 7 8 |
# File 'lib/ob_port/client.rb', line 5 def self.set_app_keys(key, secret) @@key = key @@secret = secret end |
Instance Method Details
#access_token ⇒ Object
45 46 47 48 |
# File 'lib/ob_port/client.rb', line 45 def access_token return nil unless logged_in? @access_token ||= OAuth::AccessToken.new(consumer, access_token_key, access_token_secret) end |
#campaign(id) ⇒ Object
55 56 57 |
# File 'lib/ob_port/client.rb', line 55 def campaign(id) MageHand::Campaign.new(self, JSON.parse(access_token.get("/v1/campaigns/#{id}.json").body)) end |
#consumer ⇒ Object
35 36 37 38 39 40 41 42 43 |
# File 'lib/ob_port/client.rb', line 35 def consumer raise(OAuthConfigurationError, "Need to set application key and secret before initializing a consumer.") unless @@key && @@secret @consumer ||= OAuth::Consumer.new( @@key, @@secret, { :site => 'http://api.obsidianportal.com', :request_token_url => 'https://www.obsidianportal.com/oauth/request_token', :authorize_url => 'https://www.obsidianportal.com/oauth/authorize', :access_token_url => 'https://www.obsidianportal.com/oauth/access_token'}) end |
#create_wiki_page(options) ⇒ Object
59 60 61 |
# File 'lib/ob_port/client.rb', line 59 def create_wiki_page() MageHand::WikiPage.new(self, ) end |
#current_user ⇒ Object Also known as: me
50 51 52 |
# File 'lib/ob_port/client.rb', line 50 def current_user @current_user ||= OPUser.new(self, JSON.parse(access_token.get('/v1/users/me.json').body)) end |
#logged_in? ⇒ Boolean
31 32 33 |
# File 'lib/ob_port/client.rb', line 31 def logged_in? !!access_token_secret && !!access_token_key end |