Class: Firebased::Account
- Inherits:
-
Object
- Object
- Firebased::Account
- Defined in:
- lib/firebased/account.rb
Instance Attribute Summary collapse
-
#bases ⇒ Object
readonly
Returns the value of attribute bases.
-
#email ⇒ Object
readonly
Returns the value of attribute email.
-
#pass ⇒ Object
readonly
Returns the value of attribute pass.
-
#token ⇒ Object
readonly
Returns the value of attribute token.
Instance Method Summary collapse
-
#create_firebase(name, app_name = nil) ⇒ Firebased::Firebase
Create a new firebase.
-
#delete_firebase(name) ⇒ Firebased::Firebase
Delete an existing firebase.
-
#get_firebase(name) ⇒ Firebased::Firebase
Fetch an existing firebase.
-
#initialize(email, pass, token = nil) ⇒ Account
constructor
A new instance of Account.
-
#login! ⇒ Object
Fetches admin token if not passed on initialize.
Constructor Details
#initialize(email, pass, token = nil) ⇒ Account
Returns a new instance of Account.
11 12 13 14 15 16 17 |
# File 'lib/firebased/account.rb', line 11 def initialize(email, pass, token = nil) @email = email @pass = pass @token = token @bases = {} login! unless token end |
Instance Attribute Details
#bases ⇒ Object (readonly)
Returns the value of attribute bases.
9 10 11 |
# File 'lib/firebased/account.rb', line 9 def bases @bases end |
#email ⇒ Object (readonly)
Returns the value of attribute email.
9 10 11 |
# File 'lib/firebased/account.rb', line 9 def email @email end |
#pass ⇒ Object (readonly)
Returns the value of attribute pass.
9 10 11 |
# File 'lib/firebased/account.rb', line 9 def pass @pass end |
#token ⇒ Object (readonly)
Returns the value of attribute token.
9 10 11 |
# File 'lib/firebased/account.rb', line 9 def token @token end |
Instance Method Details
#create_firebase(name, app_name = nil) ⇒ Firebased::Firebase
Create a new firebase
35 36 37 38 39 40 41 42 |
# File 'lib/firebased/account.rb', line 35 def create_firebase(name, app_name = nil) params = { token: @token, appName: app_name || name } response = Faraday.post("#{FIRE_BASE}/#{name}", params) response = JSON.parse(response.body) firebase = Firebased::Firebase.new(name, @token) if response["success"] @bases[name] = firebase return firebase end |
#delete_firebase(name) ⇒ Firebased::Firebase
Delete an existing firebase
60 61 62 63 64 65 66 |
# File 'lib/firebased/account.rb', line 60 def delete_firebase(name) params = { "_method" => "DELETE", namespace: name, token: @token } response = Faraday.post("#{FIRE_BASE}/#{name}", params) response = JSON.parse(response.body) p response["error"] @bases.delete(name) unless response["error"] end |
#get_firebase(name) ⇒ Firebased::Firebase
Fetch an existing firebase
50 51 52 |
# File 'lib/firebased/account.rb', line 50 def get_firebase(name) @bases[name] || Firebased::Firebase.new(name, @token) end |
#login! ⇒ Object
Fetches admin token if not passed on initialize
21 22 23 24 25 26 |
# File 'lib/firebased/account.rb', line 21 def login! params = { email: email, password: pass } response = Faraday.get("#{ACCOUNT_BASE}/login", params) attributes = JSON.parse(response.body) @token = attributes["adminToken"] end |