Module: Twitter
- Defined in:
- lib/twitter/api.rb,
lib/twitter/store.rb,
lib/twitter/session.rb,
lib/twitter/twitter.rb,
lib/twitter/connection.rb,
lib/core_ext/delegation.rb
Defined Under Namespace
Modules: API, Delegation Classes: Connection, Session, Store
Class Method Summary collapse
-
.authenticate(username, password) ⇒ Object
Create new session from passed credentials.
-
.authenticated?(loaded = false) ⇒ Boolean
Check for presence of session or try to load saved session.
- .load(filename = nil) ⇒ Object
-
.load_session ⇒ Object
Load saved session from a .twitter file.
-
.method_missing(sym, *args, &blk) ⇒ Object
Delegate method missing calls to session.
-
.reset! ⇒ Object
Reset session.
- .save(filename = nil) ⇒ Object
- .use(username) ⇒ Object
Class Method Details
.authenticate(username, password) ⇒ Object
Create new session from passed credentials
47 48 49 50 51 52 |
# File 'lib/twitter/twitter.rb', line 47 def authenticate(username, password) session = Session.new(username, password) session.connect! sessions[username] = session @username = username end |
.authenticated?(loaded = false) ⇒ Boolean
Check for presence of session or try to load saved session
38 39 40 41 42 43 44 |
# File 'lib/twitter/twitter.rb', line 38 def authenticated?(loaded=false) return true if current_session and current_session.connected? if not loaded load authenticated?(true) end end |
.load(filename = nil) ⇒ Object
19 20 21 22 23 24 25 26 |
# File 'lib/twitter/twitter.rb', line 19 def load(filename=nil) store = Store.new store.filename = filename if filename if store.load @sessions = store.sessions @username = @sessions.keys.first end end |
.load_session ⇒ Object
Load saved session from a .twitter file
55 56 57 58 59 60 |
# File 'lib/twitter/twitter.rb', line 55 def load_session session = Session.new(nil, nil) if session.load @session = session ; true end end |
.method_missing(sym, *args, &blk) ⇒ Object
Delegate method missing calls to session
29 30 31 32 33 34 35 |
# File 'lib/twitter/twitter.rb', line 29 def method_missing(sym, *args, &blk) if authenticated? and delegating?(sym) current_session.send(sym, *args, &blk) else super end end |
.reset! ⇒ Object
Reset session
4 5 6 7 |
# File 'lib/twitter/twitter.rb', line 4 def reset! sessions.clear @username = nil end |
.save(filename = nil) ⇒ Object
13 14 15 16 17 |
# File 'lib/twitter/twitter.rb', line 13 def save(filename=nil) store = Store.new(:sessions => sessions.values) store.filename = filename if filename store.save end |
.use(username) ⇒ Object
9 10 11 |
# File 'lib/twitter/twitter.rb', line 9 def use(username) @username = username end |