finapps 0.3.6.pre → 0.5.0.pre

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ceea8a3333d8e705700d79a6de9a3eae862fdcf2
4
- data.tar.gz: a2f666b1b30d0faf35ce55c5276ea7a9cc2267e7
3
+ metadata.gz: f5bd908a13377be582f60b68db7602501cc43f30
4
+ data.tar.gz: 424168e5f112fa63bb917884751c8a1583c28049
5
5
  SHA512:
6
- metadata.gz: 7c62a3af92c89fcb965598732633144cc288c9d1b66e38d1d59e7fb9af0677b82f08abdce6f31dcffe26ec8f11486ffd4807dd7548ace7e88513632889109f44
7
- data.tar.gz: f35b02cdb781280045af9e52500342f54b4b0ec16139e2d164302e5ceadd82fdfc606d869e58e8e61c8654ae78d49d805d311c690777d1c6bf35eca9ee4531a6
6
+ metadata.gz: 4fba1683ac434febb6533577132c4fdef578427009f359f3504e0795bef753819b22d10a03cb9539fcce5fa1227ee723ce3a528f8e5d4e10d71cbf3139aacc9c
7
+ data.tar.gz: 81403ff882d9d8c085565a889129361bbc570b84c7136c47eb5f1938dc42e19ec79b4cbecfc45671087f8b2dba151464ff9b94cf395baab4a4ca1b970318b724
data/lib/finapps.rb CHANGED
@@ -7,14 +7,15 @@ require 'faraday_middleware'
7
7
  require 'typhoeus'
8
8
  require 'typhoeus/adapters/faraday'
9
9
 
10
- require 'finapps/rest/defaults'
11
- require 'finapps/rest/errors'
12
10
  require 'finapps/utils/logging'
13
11
  require 'finapps/utils/utils'
14
12
  require 'finapps/middleware/api_token'
15
13
  require 'finapps/middleware/raise_http_exceptions'
16
14
  require 'finapps/middleware/response_logger'
17
15
 
16
+ require 'finapps/rest/defaults'
17
+ require 'finapps/rest/errors'
18
+
18
19
  require 'finapps/rest/resource'
19
20
  require 'finapps/rest/resources'
20
21
  require 'finapps/rest/users'
@@ -22,6 +23,10 @@ require 'finapps/rest/institutions'
22
23
  require 'finapps/rest/user_institutions'
23
24
  require 'finapps/rest/transactions'
24
25
  require 'finapps/rest/categories'
26
+ require 'finapps/rest/geo'
27
+ require 'finapps/rest/inventory/feed_categories'
28
+ require 'finapps/rest/inventory/feeds'
29
+ require 'finapps/rest/relevance/rulesets'
25
30
 
26
31
  require 'finapps/rest/connection'
27
32
  require 'finapps/rest/client'
@@ -24,10 +24,11 @@ module FinApps
24
24
 
25
25
  END_POINTS = {
26
26
  :users_create => 'users/new',
27
- :users_login => 'users/login',
28
27
  :users_delete => 'users/:public_id/delete',
28
+ :users_login => 'users/login',
29
29
 
30
- :institutions_search => 'institutions/:search_term/search',
30
+
31
+ :institutions_list => 'institutions/:search_term/search',
31
32
  :institutions_form => 'institutions/:site_id/form',
32
33
 
33
34
  :user_institutions_list => 'institutions/user',
@@ -36,11 +37,26 @@ module FinApps
36
37
  :user_institutions_status => 'institutions/user/:user_institution_id/status',
37
38
  :user_institutions_refresh => 'institutions/user/refresh',
38
39
 
39
- :accounts_show => 'accounts/:account_id/show',
40
+ :transactions_list => 'transactions/search',
41
+
42
+ :categories_list => 'categories',
43
+
44
+ :geo_record_by_ip_address => 'geo/maxmind/record/:ip_address',
45
+ :geo_record_by_region => 'geo/maxmind/record/:region/:city',
46
+ :geo_postal_record_by_region => 'geo/maxmind/postal/:region/:city',
47
+ :geo_postal_record_by_postal_code => 'geo/maxmind/postal/:postal',
48
+ :geo_us_record_by_region => 'geo/us/region/:region/:city',
49
+
50
+ :relevance_rulesets_list => 'relevance/ruleset/names',
51
+ :relevance_rulesets_show => 'relevance/ruleset/:ruleset_name',
52
+ :relevance_rulesets_run => 'relevance/run',
53
+
54
+ :inventory_feeds_list => 'inventory/feed/names',
55
+ :inventory_feed_show => 'inventory/feed/:feed_name',
40
56
 
41
- :transactions_search => 'transactions/search',
57
+ :inventory_feed_categories_list => 'inventory/feed/categories/unique/:feed_name',
58
+ :inventory_feed_categories_list_by_region => 'inventory/feed/categories/unique/:feed_name/:region/:city'
42
59
 
43
- :categories_list => 'categories'
44
60
 
45
61
  }.freeze
46
62
 
@@ -38,10 +38,10 @@ module FinApps
38
38
 
39
39
  body = response_body
40
40
  if body.present?
41
- if body.has_key?(:error_messages)
41
+ if body.key?(:error_messages)
42
42
  message_array = body[:error_messages]
43
43
  else
44
- message_array = body[:messages] if body.has_key?(:messages)
44
+ message_array = body[:messages] if body.key?(:messages)
45
45
  end
46
46
  end
47
47
 
@@ -52,7 +52,7 @@ module FinApps
52
52
  def response_body
53
53
  body = nil
54
54
  if @response.present?
55
- @response.has_key?(:body) ? body = @response[:body] : body = @response
55
+ @response.key?(:body) ? body = @response[:body] : body = @response
56
56
  end
57
57
 
58
58
  body
@@ -0,0 +1,110 @@
1
+ module FinApps
2
+ module REST
3
+
4
+ require 'erb'
5
+
6
+ class Geo < FinApps::REST::Resources
7
+
8
+ def record_by_ip_address(ip_address)
9
+ logger.debug "##{__method__.to_s} => Started"
10
+
11
+ raise MissingArgumentsError.new 'Missing argument: ip_address.' if ip_address.blank?
12
+ logger.debug "##{__method__.to_s} => ip_address: #{ip_address}"
13
+
14
+ end_point = Defaults::END_POINTS[:geo_record_by_ip_address]
15
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
16
+
17
+ path = end_point.sub ':ip_address', ERB::Util.url_encode(ip_address)
18
+ logger.debug "##{__method__.to_s} => path: #{path}"
19
+
20
+ results, error_messages = @client.send(path, :get)
21
+
22
+ logger.debug "##{__method__.to_s} => Completed"
23
+ return results, error_messages
24
+ end
25
+
26
+ def record_by_region(region, city)
27
+ logger.debug "##{__method__.to_s} => Started"
28
+
29
+ raise MissingArgumentsError.new 'Missing argument: region.' if region.blank?
30
+ logger.debug "##{__method__.to_s} => region: #{region}"
31
+ raise MissingArgumentsError.new 'Missing argument: city.' if city.blank?
32
+ logger.debug "##{__method__.to_s} => city: #{city}"
33
+
34
+ end_point = Defaults::END_POINTS[:geo_record_by_region]
35
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
36
+
37
+ path = end_point.sub ':region', ERB::Util.url_encode(region)
38
+ path = path.sub ':city', ERB::Util.url_encode(city)
39
+ logger.debug "##{__method__.to_s} => path: #{path}"
40
+
41
+ results, error_messages = @client.send(path, :get)
42
+
43
+ logger.debug "##{__method__.to_s} => Completed"
44
+ return results, error_messages
45
+ end
46
+
47
+ def postal_record_by_region(region, city)
48
+ logger.debug "##{__method__.to_s} => Started"
49
+
50
+ raise MissingArgumentsError.new 'Missing argument: region.' if region.blank?
51
+ logger.debug "##{__method__.to_s} => region: #{region}"
52
+ raise MissingArgumentsError.new 'Missing argument: city.' if city.blank?
53
+ logger.debug "##{__method__.to_s} => city: #{city}"
54
+
55
+ end_point = Defaults::END_POINTS[:geo_postal_record_by_region]
56
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
57
+
58
+ path = end_point.sub ':region', ERB::Util.url_encode(region)
59
+ path = path.sub ':city', ERB::Util.url_encode(city)
60
+ logger.debug "##{__method__.to_s} => path: #{path}"
61
+
62
+ results, error_messages = @client.send(path, :get)
63
+
64
+ logger.debug "##{__method__.to_s} => Completed"
65
+ return results, error_messages
66
+ end
67
+
68
+ def postal_record_by_postal_code(postal)
69
+ logger.debug "##{__method__.to_s} => Started"
70
+
71
+ raise MissingArgumentsError.new 'Missing argument: postal.' if postal.blank?
72
+ logger.debug "##{__method__.to_s} => postal: #{postal}"
73
+
74
+ end_point = Defaults::END_POINTS[:geo_postal_record_by_postal_code]
75
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
76
+
77
+ path = end_point.sub ':postal', ERB::Util.url_encode(postal)
78
+ logger.debug "##{__method__.to_s} => path: #{path}"
79
+
80
+ results, error_messages = @client.send(path, :get)
81
+
82
+ logger.debug "##{__method__.to_s} => Completed"
83
+ return results, error_messages
84
+ end
85
+
86
+ def us_record_by_region(region, city)
87
+ logger.debug "##{__method__.to_s} => Started"
88
+
89
+ raise MissingArgumentsError.new 'Missing argument: region.' if region.blank?
90
+ logger.debug "##{__method__.to_s} => region: #{region}"
91
+ raise MissingArgumentsError.new 'Missing argument: city.' if city.blank?
92
+ logger.debug "##{__method__.to_s} => city: #{city}"
93
+
94
+ end_point = Defaults::END_POINTS[:geo_us_record_by_region]
95
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
96
+
97
+ path = end_point.sub ':region', ERB::Util.url_encode(region)
98
+ path = path.sub ':city', ERB::Util.url_encode(city)
99
+ logger.debug "##{__method__.to_s} => path: #{path}"
100
+
101
+ results, error_messages = @client.send(path, :get)
102
+
103
+ logger.debug "##{__method__.to_s} => Completed"
104
+ return results, error_messages
105
+ end
106
+
107
+ end
108
+
109
+ end
110
+ end
@@ -14,7 +14,7 @@ module FinApps
14
14
  raise MissingArgumentsError.new 'Missing argument: term.' if term.blank?
15
15
  logger.debug "##{__method__.to_s} => term: #{term}"
16
16
 
17
- end_point = Defaults::END_POINTS[:institutions_search]
17
+ end_point = Defaults::END_POINTS[:institutions_list]
18
18
  logger.debug "##{__method__.to_s} => end_point: #{end_point}"
19
19
 
20
20
  path = end_point.sub ':search_term', ERB::Util.url_encode(term)
@@ -0,0 +1,43 @@
1
+ module FinApps
2
+ module REST
3
+ module Inventory
4
+
5
+ require 'erb'
6
+
7
+ class FeedCategories < FinApps::REST::Resources
8
+
9
+ def list(feed_name, region = nil, city = nil)
10
+ logger.debug "##{__method__.to_s} => Started"
11
+
12
+ raise MissingArgumentsError.new 'Missing argument: feed_name.' if feed_name.blank?
13
+ logger.debug "##{__method__.to_s} => feed_name: #{feed_name}"
14
+
15
+ raise MissingArgumentsError.new 'Missing argument: region.' if region.blank? && city.present?
16
+ logger.debug "##{__method__.to_s} => region: #{region}"
17
+
18
+ raise MissingArgumentsError.new 'Missing argument: city.' if region.present? && city.blank?
19
+ logger.debug "##{__method__.to_s} => city: #{city}"
20
+
21
+ if region.present? && city.present?
22
+ end_point = Defaults::END_POINTS[:inventory_feed_categories_list_by_region]
23
+ path = end_point.sub ':feed_name', ERB::Util.url_encode(feed_name)
24
+ path = path.sub ':region', ERB::Util.url_encode(region)
25
+ path = path.sub ':city', ERB::Util.url_encode(city)
26
+ else
27
+ end_point = Defaults::END_POINTS[:inventory_feed_categories_list]
28
+ path = end_point.sub ':feed_name', ERB::Util.url_encode(feed_name)
29
+ end
30
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
31
+ logger.debug "##{__method__.to_s} => path: #{path}"
32
+
33
+ results, error_messages = @client.send(path, :get)
34
+
35
+ logger.debug "##{__method__.to_s} => Completed"
36
+ return results, error_messages
37
+ end
38
+
39
+ end
40
+
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,46 @@
1
+ module FinApps
2
+ module REST
3
+ module Inventory
4
+
5
+ require 'erb'
6
+
7
+ class Feeds < FinApps::REST::Resources
8
+
9
+ def list
10
+ logger.debug "##{__method__.to_s} => Started"
11
+
12
+ end_point = Defaults::END_POINTS[:inventory_feeds_list]
13
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
14
+
15
+ path = end_point
16
+ logger.debug "##{__method__.to_s} => path: #{path}"
17
+
18
+ results, error_messages = @client.send(path, :get)
19
+
20
+ logger.debug "##{__method__.to_s} => Completed"
21
+ return results, error_messages
22
+ end
23
+
24
+ def show(feed_name)
25
+ logger.debug "##{__method__.to_s} => Started"
26
+
27
+ raise MissingArgumentsError.new 'Missing argument: feed_name.' if feed_name.blank?
28
+ logger.debug "##{__method__.to_s} => feed_name: #{feed_name}"
29
+
30
+ end_point = Defaults::END_POINTS[:inventory_feed_show]
31
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
32
+
33
+ path = end_point.sub ':feed_name', ERB::Util.url_encode(feed_name)
34
+ logger.debug "##{__method__.to_s} => path: #{path}"
35
+
36
+ results, error_messages = @client.send(path, :get)
37
+
38
+ logger.debug "##{__method__.to_s} => Completed"
39
+ return results, error_messages
40
+ end
41
+
42
+ end
43
+
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,98 @@
1
+ module FinApps
2
+ module REST
3
+
4
+ require 'erb'
5
+
6
+ class Relevance < FinApps::REST::Resources
7
+
8
+ def rulesets
9
+ logger.debug "##{__method__.to_s} => Started"
10
+
11
+ end_point = Defaults::END_POINTS[:relevance_rulesets]
12
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
13
+
14
+ path = end_point
15
+ logger.debug "##{__method__.to_s} => path: #{path}"
16
+
17
+ results, error_messages = @client.send(path, :get)
18
+
19
+ logger.debug "##{__method__.to_s} => Completed"
20
+ return results, error_messages
21
+ end
22
+
23
+ def ruleset_by_name(ruleset_name)
24
+ logger.debug "##{__method__.to_s} => Started"
25
+
26
+ raise MissingArgumentsError.new 'Missing argument: ruleset_name.' if ruleset_name.blank?
27
+ logger.debug "##{__method__.to_s} => ruleset_name: #{ruleset_name}"
28
+
29
+ end_point = Defaults::END_POINTS[:relevance_ruleset_by_name]
30
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
31
+
32
+ path = end_point.sub ':ruleset_name', ERB::Util.url_encode(ruleset_name)
33
+ logger.debug "##{__method__.to_s} => path: #{path}"
34
+
35
+ results, error_messages = @client.send(path, :get)
36
+
37
+ logger.debug "##{__method__.to_s} => Completed"
38
+ return results, error_messages
39
+ end
40
+
41
+ def update_ruleset(params = {})
42
+ logger.debug "##{__method__.to_s} => Started"
43
+
44
+ raise MissingArgumentsError.new 'Missing argument: params.' if params.blank?
45
+ logger.debug "##{__method__.to_s} => params: #{params.inspect}"
46
+
47
+ end_point = Defaults::END_POINTS[:relevance_update_ruleset]
48
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
49
+
50
+ path = end_point
51
+ logger.debug "##{__method__.to_s} => path: #{path}"
52
+
53
+ results, error_messages = @client.send(path, :post, params)
54
+
55
+ logger.debug "##{__method__.to_s} => Completed"
56
+ return results, error_messages
57
+ end
58
+
59
+ def run_ruleset_by_name(params = {})
60
+ logger.debug "##{__method__.to_s} => Started"
61
+
62
+ raise MissingArgumentsError.new 'Missing argument: params.' if params.blank?
63
+ logger.debug "##{__method__.to_s} => params: #{params.inspect}"
64
+
65
+ end_point = Defaults::END_POINTS[:relevance_run_ruleset_by_name]
66
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
67
+
68
+ path = end_point
69
+ logger.debug "##{__method__.to_s} => path: #{path}"
70
+
71
+ results, error_messages = @client.send(path, :post, params)
72
+
73
+ logger.debug "##{__method__.to_s} => Completed"
74
+ return results, error_messages
75
+ end
76
+
77
+ def run_ruleset_custom(params = {})
78
+ logger.debug "##{__method__.to_s} => Started"
79
+
80
+ raise MissingArgumentsError.new 'Missing argument: params.' if params.blank?
81
+ logger.debug "##{__method__.to_s} => params: #{params.inspect}"
82
+
83
+ end_point = Defaults::END_POINTS[:relevance_run_ruleset_custom]
84
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
85
+
86
+ path = end_point
87
+ logger.debug "##{__method__.to_s} => path: #{path}"
88
+
89
+ results, error_messages = @client.send(path, :post, params)
90
+
91
+ logger.debug "##{__method__.to_s} => Completed"
92
+ return results, error_messages
93
+ end
94
+
95
+ end
96
+
97
+ end
98
+ end
@@ -0,0 +1,69 @@
1
+ module FinApps
2
+ module REST
3
+ module Relevance
4
+
5
+ require 'erb'
6
+
7
+ class Rulesets < FinApps::REST::Resources
8
+
9
+ def list
10
+ logger.debug "##{__method__.to_s} => Started"
11
+
12
+ end_point = Defaults::END_POINTS[:relevance_rulesets_list]
13
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
14
+
15
+ path = end_point
16
+ logger.debug "##{__method__.to_s} => path: #{path}"
17
+
18
+ results, error_messages = @client.send(path, :get)
19
+
20
+ logger.debug "##{__method__.to_s} => Completed"
21
+ return results, error_messages
22
+ end
23
+
24
+ def show(ruleset_name)
25
+ logger.debug "##{__method__.to_s} => Started"
26
+
27
+ raise MissingArgumentsError.new 'Missing argument: ruleset_name.' if ruleset_name.blank?
28
+ logger.debug "##{__method__.to_s} => ruleset_name: #{ruleset_name}"
29
+
30
+ end_point = Defaults::END_POINTS[:relevance_rulesets_show]
31
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
32
+
33
+ path = end_point.sub ':ruleset_name', ERB::Util.url_encode(ruleset_name)
34
+ logger.debug "##{__method__.to_s} => path: #{path}"
35
+
36
+ results, error_messages = @client.send(path, :get)
37
+
38
+ logger.debug "##{__method__.to_s} => Completed"
39
+ return results, error_messages
40
+ end
41
+
42
+ def run(params = {})
43
+ logger.debug "##{__method__.to_s} => Started"
44
+
45
+ raise MissingArgumentsError.new 'Missing argument: params.' if params.blank?
46
+ logger.debug "##{__method__.to_s} => params: #{params.inspect}"
47
+
48
+ end_point = Defaults::END_POINTS[:relevance_rulesets_run]
49
+ logger.debug "##{__method__.to_s} => end_point: #{end_point}"
50
+
51
+ path = end_point
52
+ logger.debug "##{__method__.to_s} => path: #{path}"
53
+
54
+ # ToDo: API is expecting a valid variable_script json value
55
+ unless params.key?(:variable_script)
56
+ params.merge!(:variable_script => "{\"a\": \"a\"}")
57
+ end
58
+
59
+ results, error_messages = @client.send(path, :post, params)
60
+
61
+ logger.debug "##{__method__.to_s} => Completed"
62
+ return results, error_messages
63
+ end
64
+
65
+ end
66
+ end
67
+
68
+ end
69
+ end
@@ -9,7 +9,7 @@ module FinApps
9
9
  def search(params={})
10
10
  logger.debug "##{__method__.to_s} => Started"
11
11
 
12
- path = Defaults::END_POINTS[:transactions_search]
12
+ path = Defaults::END_POINTS[:transactions_list]
13
13
 
14
14
  logger.debug "##{__method__.to_s} => path: #{path}"
15
15
 
@@ -1,3 +1,3 @@
1
1
  module FinApps
2
- VERSION = '0.3.6.pre'
2
+ VERSION = '0.5.0.pre'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: finapps
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6.pre
4
+ version: 0.5.0.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erich Quintero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-08 00:00:00.000000000 Z
11
+ date: 2014-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -202,7 +202,12 @@ files:
202
202
  - lib/finapps/rest/connection.rb
203
203
  - lib/finapps/rest/defaults.rb
204
204
  - lib/finapps/rest/errors.rb
205
+ - lib/finapps/rest/geo.rb
205
206
  - lib/finapps/rest/institutions.rb
207
+ - lib/finapps/rest/inventory/feed_categories.rb
208
+ - lib/finapps/rest/inventory/feeds.rb
209
+ - lib/finapps/rest/relevance.rb
210
+ - lib/finapps/rest/relevance/rulesets.rb
206
211
  - lib/finapps/rest/resource.rb
207
212
  - lib/finapps/rest/resources.rb
208
213
  - lib/finapps/rest/transactions.rb