Class: Coyodlee::RequestFacade
- Inherits:
-
Object
- Object
- Coyodlee::RequestFacade
- Extended by:
- Forwardable
- Includes:
- Facades
- Defined in:
- lib/coyodlee/connection.rb
Instance Attribute Summary collapse
-
#http ⇒ Object
readonly
Returns the value of attribute http.
-
#request_builder ⇒ Object
readonly
Returns the value of attribute request_builder.
Instance Method Summary collapse
- #cobrand_public_key ⇒ Object
- #execute(req) ⇒ Object
- #extract_events(event_name:, from_date:, to_date:) ⇒ Object
- #holding_summary(params = {}) ⇒ Object
-
#initialize(http:, request_builder:) ⇒ RequestFacade
constructor
A new instance of RequestFacade.
- #login_cobrand ⇒ Object
- #login_user ⇒ Object
- #logout_cobrand ⇒ Object
- #logout_user ⇒ Object
- #networth_summary(params = {}) ⇒ Object
- #provider_details(provider_id:, provider_account_id:) ⇒ Object
- #providers(params = {}) ⇒ Object
- #register_user ⇒ Object
- #statements(params = {}) ⇒ Object
- #transaction_summary(group_by:, params: {}) ⇒ Object
- #unregister_user ⇒ Object
- #update_user_token ⇒ Object
- #user_access_tokens ⇒ Object
- #user_credentials_token ⇒ Object
- #user_data(login_name:, from_date:, to_date:) ⇒ Object
- #user_details ⇒ Object
Constructor Details
#initialize(http:, request_builder:) ⇒ RequestFacade
Returns a new instance of RequestFacade.
80 81 82 83 84 85 86 87 88 89 |
# File 'lib/coyodlee/connection.rb', line 80 def initialize(http:, request_builder:) @http = http @request_builder = request_builder @user_facade = UserFacade.new(self) @cobrand_facade = CobrandFacade.new(self) @accounts_facade = AccountsFacade.new(self) @transactions_facade = TransactionsFacade.new(self) @holdings_facade = HoldingsFacade.new(self) @provider_accounts_facade = ProviderAccountsFacade.new(self) end |
Instance Attribute Details
#http ⇒ Object (readonly)
Returns the value of attribute http.
74 75 76 |
# File 'lib/coyodlee/connection.rb', line 74 def http @http end |
#request_builder ⇒ Object (readonly)
Returns the value of attribute request_builder.
75 76 77 |
# File 'lib/coyodlee/connection.rb', line 75 def request_builder @request_builder end |
Instance Method Details
#cobrand_public_key ⇒ Object
126 |
# File 'lib/coyodlee/connection.rb', line 126 def_delegator :@cobrand_facade, :public_key, :cobrand_public_key |
#execute(req) ⇒ Object
220 221 222 |
# File 'lib/coyodlee/connection.rb', line 220 def execute(req) http.request(req) end |
#extract_events(event_name:, from_date:, to_date:) ⇒ Object
198 199 200 201 202 203 204 205 206 207 |
# File 'lib/coyodlee/connection.rb', line 198 def extract_events(event_name:, from_date:, to_date:) params = { 'eventName' => event_name, 'fromDate' => fromDate, 'toDate' => toDate } headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, 'dataExtracts/events', headers: headers, params: params) execute(req) end |
#holding_summary(params = {}) ⇒ Object
186 187 188 189 190 |
# File 'lib/coyodlee/connection.rb', line 186 def holding_summary(params={}) headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, 'derived/holdingSummary', headers: headers, params: params) execute(req) end |
#login_cobrand ⇒ Object
120 |
# File 'lib/coyodlee/connection.rb', line 120 def_delegator :@cobrand_facade, :login, :login_cobrand |
#login_user ⇒ Object
95 |
# File 'lib/coyodlee/connection.rb', line 95 def_delegator :@user_facade, :login, :login_user |
#logout_cobrand ⇒ Object
123 |
# File 'lib/coyodlee/connection.rb', line 123 def_delegator :@cobrand_facade, :logout, :logout_cobrand |
#logout_user ⇒ Object
98 |
# File 'lib/coyodlee/connection.rb', line 98 def_delegator :@user_facade, :logout, :logout_user |
#networth_summary(params = {}) ⇒ Object
192 193 194 195 196 |
# File 'lib/coyodlee/connection.rb', line 192 def networth_summary(params={}) headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, 'derived/networth', headers: headers, params: params) execute(req) end |
#provider_details(provider_id:, provider_account_id:) ⇒ Object
166 167 168 169 170 171 |
# File 'lib/coyodlee/connection.rb', line 166 def provider_details(provider_id:, provider_account_id:) headers = { 'Accept' => 'application/json' } params = { 'providerAccountId' => provider_account_id } req = @request_builder.build(:get, "providers/#{provider_id}", headers: headers, params: params) execute(req) end |
#providers(params = {}) ⇒ Object
160 161 162 163 164 |
# File 'lib/coyodlee/connection.rb', line 160 def providers(params={}) headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, "providers", headers: headers, params: params) execute(req) end |
#register_user ⇒ Object
104 |
# File 'lib/coyodlee/connection.rb', line 104 def_delegator :@user_facade, :register, :register_user |
#statements(params = {}) ⇒ Object
173 174 175 176 177 |
# File 'lib/coyodlee/connection.rb', line 173 def statements(params={}) headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, 'statements', headers: headers, params: params) execute(req) end |
#transaction_summary(group_by:, params: {}) ⇒ Object
179 180 181 182 183 184 |
# File 'lib/coyodlee/connection.rb', line 179 def transaction_summary(group_by:, params: {}) params['groupBy'] = group_by headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, 'derived/transactionSummary', headers: headers, params: params) execute(req) end |
#unregister_user ⇒ Object
107 |
# File 'lib/coyodlee/connection.rb', line 107 def_delegator :@user_facade, :unregister, :unregister_user |
#update_user_token ⇒ Object
116 |
# File 'lib/coyodlee/connection.rb', line 116 def_delegator :@user_facade, :update_password, :update_user_password |
#user_access_tokens ⇒ Object
101 |
# File 'lib/coyodlee/connection.rb', line 101 def_delegator :@user_facade, :access_tokens, :user_access_tokens |
#user_credentials_token ⇒ Object
113 |
# File 'lib/coyodlee/connection.rb', line 113 def_delegator :@user_facade, :credentials_token, :user_credentials_token |
#user_data(login_name:, from_date:, to_date:) ⇒ Object
209 210 211 212 213 214 215 216 217 218 |
# File 'lib/coyodlee/connection.rb', line 209 def user_data(login_name:, from_date:, to_date:) params = { 'loginName' => login_name, 'fromDate' => fromDate, 'toDate' => toDate } headers = { 'Accept' => 'application/json' } req = @request_builder.build(:get, 'dataExtracts/userData', headers: headers, params: params) execute(req) end |
#user_details ⇒ Object
110 |
# File 'lib/coyodlee/connection.rb', line 110 def_delegator :@user_facade, :details, :user_details |