arii 1.2.1 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 46bd94c23d38c60e86cb59d895a3a055f5156542
4
- data.tar.gz: f0ee9fc3475dc2a63bbcd6f2389302650936c2d0
3
+ metadata.gz: 29034e712942cd799e3b863e318227bbe8705bfb
4
+ data.tar.gz: d0497fc1f4a3273a4d15d70f1b928a26449a7d3a
5
5
  SHA512:
6
- metadata.gz: 7ad68f3de32c472f75c6e69404e738c1c90a83891bb5d5665dfdb08fa5b3153a41e8e586eda1a15088733f573f3ef9b26b1b9e437fbe5421d0a52fae29f08c6a
7
- data.tar.gz: b50c8411dc3f10c15833a846a7cbb0aae3ec1f4a568ab61c2fcbe33b92a1afc9ab099e19978d78279e6027b8c75d10977843a6fd63419fbfb12b0b86d9d650e3
6
+ metadata.gz: 38b0c85405e47d5d87baccc6183bc2044d9fcc4f1369fd098e60bb3719750f45556ddb11b1f74faf67b2463e447c3328ce1b932a00e20f1d43796ed867e24b84
7
+ data.tar.gz: de273e5aa0777e7980be1603ba7abb14f2d9d11ae4f619d10617b2c3b3ed7ec1acc3b54251bf41c8bfa1ab70f3e7e1706cf7cc0419321f88ca9cdb5c26dcaad7
data/Gemfile.lock CHANGED
@@ -1,17 +1,36 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- arii (0.0.3)
4
+ arii (1.2.2)
5
+ jsonpath (~> 0)
6
+ nokogiri
7
+ rest-client (~> 0)
8
+ rubyXL
9
+ spreadsheet
5
10
 
6
11
  GEM
7
12
  remote: https://rubygems.org/
8
13
  specs:
9
- rake (10.1.1)
14
+ jsonpath (0.5.6)
15
+ multi_json
16
+ mini_portile (0.6.2)
17
+ multi_json (1.11.0)
18
+ nokogiri (1.6.6.2)
19
+ mini_portile (~> 0.6.0)
20
+ rake (0.9.6)
21
+ rest-client (0.9.2)
22
+ ruby-ole (1.2.11.8)
23
+ rubyXL (3.3.7)
24
+ nokogiri (>= 1.4.4)
25
+ rubyzip (>= 1.1.6)
26
+ rubyzip (1.1.7)
27
+ spreadsheet (1.0.3)
28
+ ruby-ole (>= 1.0)
10
29
 
11
30
  PLATFORMS
12
31
  ruby
13
32
 
14
33
  DEPENDENCIES
15
- bundler (~> 1.5)
16
34
  arii!
17
- rake
35
+ bundler (~> 1.5)
36
+ rake (~> 0)
data/arii.gemspec CHANGED
@@ -4,17 +4,17 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'arii/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
- spec.name = "arii"
8
- spec.version = ARII::VERSION
9
- spec.authors = ["Pedro Lopes"]
10
- spec.email = ["hello@pedrolopes.net"]
11
- spec.summary = %q{arii client library for distributed agents.}
12
- spec.description = %q{ARiiP: integrate everything. Automated real-time integration & interoperability platform.}
13
- spec.homepage = "http://ariip.com/"
14
- spec.license = "MIT"
15
- spec.files = `git ls-files`.split($/)
16
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
7
+ spec.name = "arii"
8
+ spec.version = ARII::VERSION
9
+ spec.authors = ["Pedro Lopes"]
10
+ spec.email = ["hello@pedrolopes.net"]
11
+ spec.summary = %q{arii client library for distributed agents.}
12
+ spec.description = %q{ARiiP: integrate everything. Automated real-time integration & interoperability platform.}
13
+ spec.homepage = "http://ariip.com/"
14
+ spec.license = "MIT"
15
+ spec.files = `git ls-files`.split($/)
16
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ["lib"]
19
19
 
20
20
  spec.add_development_dependency "bundler", "~> 1.5"
@@ -23,6 +23,6 @@ Gem::Specification.new do |spec|
23
23
  spec.add_runtime_dependency 'rest-client', '~> 0'
24
24
  spec.add_runtime_dependency 'nokogiri'
25
25
  spec.add_runtime_dependency 'rubyXL'
26
- spec.add_runtime_dependency 'spreadsheet'
26
+ spec.add_runtime_dependency 'spreadsheet', '~> 0'
27
27
  spec.add_runtime_dependency 'jsonpath', '~> 0'
28
28
  end
data/lib/arii/agent.rb CHANGED
@@ -12,9 +12,9 @@ module ARII
12
12
  @cache = agent[:payload][:cache]
13
13
  @seeds = agent[:seeds]
14
14
  @selectors = agent[:payload][:selectors]
15
- ARII::Config.log.debug(self.class.name) {"Agent #{@identifier} initialized"}
15
+ ARII::Config.log.debug(self.class.name) { "Agent #{@identifier} initialized" }
16
16
  rescue Exception => e
17
- ARII::Config.log.error(self.class.name) {"Unable to initialize agent. #{e}"}
17
+ ARII::Config.log.error(self.class.name) { "Unable to initialize agent. #{e}" }
18
18
  end
19
19
 
20
20
  end
@@ -27,41 +27,41 @@ module ARII
27
27
  @checkup = {}
28
28
 
29
29
  case @publisher
30
- when 'sql'
31
- begin
32
- @d = ARII::SQLDetector.new(self)
33
- rescue Exception => e
34
- @response = {:status => 400, :error => e}
35
- ARII::Config.log.error(self.class.name) {"#{e}"}
36
- end
37
- when 'csv'
38
- begin
39
- @d = ARII::CSVDetector.new(self)
40
- rescue Exception => e
41
- @response = {:status => 400, :error => e}
42
- ARII::Config.log.error(self.class.name) {"#{e}"}
43
- end
44
- when 'excel'
45
- begin
46
- @d = ARII::ExcelDetector.new(self)
47
- rescue Exception => e
48
- @response = {:status => 400, :error => e}
49
- ARII::Config.log.error(self.class.name) {"#{e}"}
50
- end
51
- when 'xml'
52
- begin
53
- @d = ARII::XMLDetector.new(self)
54
- rescue Exception => e
55
- @response = {:status => 400, :error => e}
56
- ARII::Config.log.error(self.class.name) {"#{e}"}
57
- end
58
- when 'json'
59
- begin
60
- @d = ARII::JSONDetector.new(self)
61
- rescue Exception => e
62
- @response = {:status => 400, :error => e}
63
- ARII::Config.log.error(self.class.name) {"#{e}"}
64
- end
30
+ when 'sql'
31
+ begin
32
+ @d = ARII::SQLDetector.new(self)
33
+ rescue Exception => e
34
+ @response = {:status => 400, :error => e}
35
+ ARII::Config.log.error(self.class.name) { "#{e}" }
36
+ end
37
+ when 'csv'
38
+ begin
39
+ @d = ARII::CSVDetector.new(self)
40
+ rescue Exception => e
41
+ @response = {:status => 400, :error => e}
42
+ ARII::Config.log.error(self.class.name) { "#{e}" }
43
+ end
44
+ when 'excel'
45
+ begin
46
+ @d = ARII::ExcelDetector.new(self)
47
+ rescue Exception => e
48
+ @response = {:status => 400, :error => e}
49
+ ARII::Config.log.error(self.class.name) { "#{e}" }
50
+ end
51
+ when 'xml'
52
+ begin
53
+ @d = ARII::XMLDetector.new(self)
54
+ rescue Exception => e
55
+ @response = {:status => 400, :error => e}
56
+ ARII::Config.log.error(self.class.name) { "#{e}" }
57
+ end
58
+ when 'json'
59
+ begin
60
+ @d = ARII::JSONDetector.new(self)
61
+ rescue Exception => e
62
+ @response = {:status => 400, :error => e}
63
+ ARII::Config.log.error(self.class.name) { "#{e}" }
64
+ end
65
65
  end
66
66
 
67
67
 
@@ -72,7 +72,7 @@ module ARII
72
72
  end
73
73
  @checkup = @d.checkup
74
74
  rescue Exception => e
75
- ARII::Config.log.error(self.class.name) {"Checkup error: #{e}"}
75
+ ARII::Config.log.error(self.class.name) { "Checkup error: #{e}" }
76
76
  end
77
77
 
78
78
  # Start detection
@@ -83,7 +83,7 @@ module ARII
83
83
 
84
84
  @checkup[:templates] = @d.templates.uniq
85
85
  rescue Exception => e
86
- ARII::Config.log.error(self.class.name) {"Detection error: #{e}"}
86
+ ARII::Config.log.error(self.class.name) { "Detection error: #{e}" }
87
87
  end
88
88
 
89
89
  begin
@@ -91,33 +91,32 @@ module ARII
91
91
  process @checkup
92
92
  end
93
93
  rescue Exception => e
94
- ARII::Config.log.error(self.class.name) {"Process error: #{e}"}
94
+ ARII::Config.log.error(self.class.name) { "Process error: #{e}" }
95
95
  end
96
96
  response = {:status => @checkup[:status], :message => "[ARII][Checkup][execute] All OK."}
97
97
  end
98
98
 
99
99
 
100
-
101
100
  ##
102
101
  # => Process agent checks.
103
102
  #
104
103
  def process checkup
105
104
  begin
106
105
  checkup[:templates].each do |template|
107
- ARII::Config.log.info(self.class.name) {"Delivering to #{template} template."}
106
+ ARII::Config.log.info(self.class.name) { "Delivering to #{template} template." }
108
107
  checkup[:payload].each do |payload|
109
- ARII::Config.log.debug(self.class.name) {"Processing #{payload}."}
108
+ ARII::Config.log.debug(self.class.name) { "Processing #{payload}." }
110
109
  response = RestClient.post "#{ARII::Config.host}postman/deliver/#{template}.js", payload
111
110
  case response.code
112
- when 200
113
- ARII::Config.log.debug(self.class.name) {"Delivered to #{template}."}
114
- else
115
- ARII::Config.log.warn(self.class.name) {"unable to deliver \"#{payload}\" to \"#{template}\""}
111
+ when 200
112
+ ARII::Config.log.debug(self.class.name) { "Delivered to #{template}." }
113
+ else
114
+ ARII::Config.log.warn(self.class.name) { "unable to deliver \"#{payload}\" to \"#{template}\"" }
116
115
  end
117
116
  end
118
117
  end
119
118
  rescue Exception => e
120
- ARII::Config.log.error(self.class.name) {"Processing error: #{e}"}
119
+ ARII::Config.log.error(self.class.name) { "Processing error: #{e}" }
121
120
  end
122
121
 
123
122
  end
data/lib/arii/cashier.rb CHANGED
@@ -19,7 +19,7 @@ module ARII
19
19
  begin
20
20
  response = RestClient.post "#{ARII::Config.host}fluxcapacitor/verify.json", {:access_token => ARII::Config.access_token, :agent => agent[:identifier], :cache => cache, :payload => payload, :seed => seed}
21
21
  rescue Exception => e
22
- ARII::Config.log.error(self.class.name) {"#{e}"}
22
+ ARII::Config.log.error(self.class.name) { "#{e}" }
23
23
  response = {:status => 400, :error => e}
24
24
  end
25
25
  response
data/lib/arii/client.rb CHANGED
@@ -1,53 +1,53 @@
1
1
  require 'rest_client'
2
2
 
3
3
  module ARII
4
- class Client
4
+ class Client
5
5
 
6
- ##
7
- # => Load configuration properties from client/script code
8
- #
9
- def initialize config, log
10
- begin
11
- @config = config
12
- ARII::Config.set_access_token config[:server][:api_key]
13
- ARII::Config.set_host config[:server][:host]
14
- ARII::Config.set_log log
6
+ ##
7
+ # => Load configuration properties from client/script code
8
+ #
9
+ def initialize config, log
10
+ begin
11
+ @config = config
12
+ ARII::Config.set_access_token config[:server][:api_key]
13
+ ARII::Config.set_host config[:server][:host]
14
+ ARII::Config.set_log log
15
15
 
16
- ARII::Config.log.info(self.class.name) {'Configuration loaded successfully.'}
17
- rescue Exception => e
18
- ARII::Config.log.error(self.class.name) {"Failed to load configuration: #{e}"}
19
- end
16
+ ARII::Config.log.info(self.class.name) { 'Configuration loaded successfully.' }
17
+ rescue Exception => e
18
+ ARII::Config.log.error(self.class.name) { "Failed to load configuration: #{e}" }
19
+ end
20
20
 
21
- end
21
+ end
22
22
 
23
- ##
24
- # => Validate API key.
25
- #
26
- def validate
27
- begin
28
- ARII::Config.log.info(self.class.name) {'Launching validation.'}
23
+ ##
24
+ # => Validate API key.
25
+ #
26
+ def validate
27
+ begin
28
+ ARII::Config.log.info(self.class.name) { 'Launching validation.' }
29
29
 
30
- out = RestClient.post "#{ARII::Config.host}fluxcapacitor/validate_key.json", {:access_token => ARII::Config.access_token}
31
- response = {:status => 100, :response => out.to_str}
32
- rescue Exception => e
33
- ARII::Config.log.error(self.class.name) {"Failed validation: #{e}"}
34
- end
35
- response
36
- end
30
+ out = RestClient.post "#{ARII::Config.host}fluxcapacitor/validate_key.json", {:access_token => ARII::Config.access_token}
31
+ response = {:status => 100, :response => out.to_str}
32
+ rescue Exception => e
33
+ ARII::Config.log.error(self.class.name) { "Failed validation: #{e}" }
34
+ end
35
+ response
36
+ end
37
37
 
38
- ##
39
- # => Start processing agents from configuration properties.
40
- #
41
- def process
42
- ARII::Config.log.info(self.class.name) {'Starting agent processing.'}
43
- begin
44
- @config[:agents].each do |agent|
45
- a = ARII::Agent.new agent
46
- a.execute
47
- end
48
- rescue Exception => e
49
- ARII::Config.log.error(self.class.name) {"Failed agent processing: #{e}"}
50
- end
51
- end
52
- end
38
+ ##
39
+ # => Start processing agents from configuration properties.
40
+ #
41
+ def process
42
+ ARII::Config.log.info(self.class.name) { 'Starting agent processing.' }
43
+ begin
44
+ @config[:agents].each do |agent|
45
+ a = ARII::Agent.new agent
46
+ a.execute
47
+ end
48
+ rescue Exception => e
49
+ ARII::Config.log.error(self.class.name) { "Failed agent processing: #{e}" }
50
+ end
51
+ end
52
+ end
53
53
  end
@@ -16,7 +16,7 @@ module ARII
16
16
  #
17
17
  def detect object
18
18
 
19
- ARII::Config.log.debug(self.class.name) {"Monitoring #{object[:uri]}"}
19
+ ARII::Config.log.debug(self.class.name) { "Monitoring #{object[:uri]}" }
20
20
  CSV.new(open(object[:uri]), :headers => :first_row).each do |row|
21
21
  begin
22
22
  unless object[:cache].nil? then
@@ -25,7 +25,7 @@ module ARII
25
25
  @response = Cashier.verify row[0], object, row, object[:seed]
26
26
  end
27
27
  rescue Exception => e
28
- ARII::Config.log.error(self.class.name) {"Loading error: #{e}"}
28
+ ARII::Config.log.error(self.class.name) { "Loading error: #{e}" }
29
29
  end
30
30
 
31
31
  begin
@@ -40,12 +40,12 @@ module ARII
40
40
  # The actual processing
41
41
  #
42
42
  if @cache[:cache][:status] == 100 then
43
- ARII::Config.log.info(self.class.name) {"Not on cache, generating payload"}
43
+ ARII::Config.log.info(self.class.name) { "Not on cache, generating payload" }
44
44
 
45
45
  payload = Hash.new
46
46
 
47
47
  object[:selectors].each do |selector|
48
- selector.each do |k,v|
48
+ selector.each do |k, v|
49
49
  payload[k] = row[v.to_i]
50
50
  end
51
51
  end
@@ -54,7 +54,7 @@ module ARII
54
54
  end
55
55
 
56
56
  rescue Exception => e
57
- ARII::Config.log.error(self.class.name) {"Processing error: #{e}"}
57
+ ARII::Config.log.error(self.class.name) { "Processing error: #{e}" }
58
58
  end
59
59
  @cache[:templates]
60
60
  end
@@ -17,7 +17,7 @@ module ARII
17
17
  CSV.new(open(@seed[:payload][:uri]), :headers => :first_row).each do |row|
18
18
  begin
19
19
  object = @help.deep_copy @agent[:payload]
20
- object.each_pair do |key,value|
20
+ object.each_pair do |key, value|
21
21
  variables = @help.identify_variables(object[key])
22
22
  variables.each do |v|
23
23
  object[key].gsub!("%{#{v}}", row[@seed[:payload][:selectors][v].to_i])
@@ -25,9 +25,9 @@ module ARII
25
25
  end
26
26
 
27
27
  unless @seed[:payload][:cache].nil? then
28
- object[:seed] = row[@seed[:payload][:cache].to_i]
28
+ object[:seed] = row[@seed[:payload][:cache].to_i]
29
29
  else
30
- object[:seed] = row[0]
30
+ object[:seed] = row[0]
31
31
  end
32
32
 
33
33
 
data/lib/arii/detector.rb CHANGED
@@ -21,9 +21,9 @@ module ARII
21
21
  @payloads = Array.new
22
22
  @objects = Array.new
23
23
  @help = ARII::Helper.new
24
- ARII::Config.log.info(self.class.name) {"Started new #{agent.identifier} detector"}
24
+ ARII::Config.log.info(self.class.name) { "Started new #{agent.identifier} detector" }
25
25
  rescue Exception => e
26
- ARII::Config.log.error(self.class.name) {"#{e}"}
26
+ ARII::Config.log.error(self.class.name) { "#{e}" }
27
27
  end
28
28
  end
29
29
 
@@ -42,30 +42,30 @@ module ARII
42
42
  unless @agent.seeds.nil? then
43
43
  @agent.seeds.each do |seed|
44
44
  case seed[:publisher]
45
- when 'csv'
46
- begin
47
- @sr = ARII::CSVSeedReader.new(@agent, seed)
48
- rescue Exception => e
49
- ARII::Config.log.error(self.class.name) {"#{e}"}
50
- end
51
- when 'sql'
52
- begin
53
- @sr = ARII::SQLSeedReader.new(@agent, seed)
54
- rescue Exception => e
55
- ARII::Config.log.error(self.class.name) {"#{e}"}
56
- end
57
- when 'xml'
58
- begin
59
- @sr = ARII::XMLSeedReader.new(@agent, seed)
60
- rescue Exception => e
61
- ARII::Config.log.error(self.class.name) {"#{e}"}
62
- end
63
- when 'json'
64
- begin
65
- @sr = ARII::JSONSeedReader.new(@agent, seed)
66
- rescue Exception => e
67
- ARII::Config.log.error(self.class.name) {"#{e}"}
68
- end
45
+ when 'csv'
46
+ begin
47
+ @sr = ARII::CSVSeedReader.new(@agent, seed)
48
+ rescue Exception => e
49
+ ARII::Config.log.error(self.class.name) { "#{e}" }
50
+ end
51
+ when 'sql'
52
+ begin
53
+ @sr = ARII::SQLSeedReader.new(@agent, seed)
54
+ rescue Exception => e
55
+ ARII::Config.log.error(self.class.name) { "#{e}" }
56
+ end
57
+ when 'xml'
58
+ begin
59
+ @sr = ARII::XMLSeedReader.new(@agent, seed)
60
+ rescue Exception => e
61
+ ARII::Config.log.error(self.class.name) { "#{e}" }
62
+ end
63
+ when 'json'
64
+ begin
65
+ @sr = ARII::JSONSeedReader.new(@agent, seed)
66
+ rescue Exception => e
67
+ ARII::Config.log.error(self.class.name) { "#{e}" }
68
+ end
69
69
  end
70
70
  begin
71
71
  @reads = @sr.read
@@ -73,7 +73,7 @@ module ARII
73
73
  @objects.push read
74
74
  end
75
75
  rescue Exception => e
76
- ARII::Config.log.error(self.class.name) {"#{e}"}
76
+ ARII::Config.log.error(self.class.name) { "#{e}" }
77
77
  end
78
78
  end
79
79
 
@@ -92,7 +92,7 @@ module ARII
92
92
  end
93
93
  rescue Exception => e
94
94
  @response = {:status => 404, :message => "[ARII][Detector] failed to load doc, #{e}"}
95
- ARII::Config.log.error(self.class.name) {"#{e}"}
95
+ ARII::Config.log.error(self.class.name) { "#{e}" }
96
96
  end
97
97
 
98
98
  begin
@@ -100,10 +100,10 @@ module ARII
100
100
 
101
101
 
102
102
  @templates = Array.new
103
- @response = { :payload => @payloads, :templates => @templates, :status => 100}
103
+ @response = {:payload => @payloads, :templates => @templates, :status => 100}
104
104
  rescue Exception => e
105
105
  @response = {:status => 404, :message => "[ARII][Detector] failed to process queries, #{e}"}
106
- ARII::Config.log.error(self.class.name) {"#{e}"}
106
+ ARII::Config.log.error(self.class.name) { "#{e}" }
107
107
  end
108
108
  @response
109
109
  end
data/lib/arii/helper.rb CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  module ARII
3
2
 
4
3
  ##
@@ -11,7 +10,7 @@ module ARII
11
10
 
12
11
  def initialize
13
12
  # load each helper function into a map for replacement in the delivery
14
- @replacements = [ ["%{ARII.date}", self.date], ["%{ARII.datetime}", self.datetime], ["%{ARII.hostname}", self.hostname]]
13
+ @replacements = [["%{ARII.date}", self.date], ["%{ARII.datetime}", self.datetime], ["%{ARII.hostname}", self.hostname]]
15
14
  end
16
15
 
17
16
  public
@@ -55,42 +54,42 @@ module ARII
55
54
  # + *payload* - content for validation
56
55
  #
57
56
  def self.validate_payload publisher, payload
58
- @database_servers = ["mysql","sqlite","postgresql"]
57
+ @database_servers = ["mysql", "sqlite", "postgresql"]
59
58
  valid = true
60
59
 
61
60
  begin
62
61
  case publisher
63
- when 'csv', 'xml', 'json', 'file', 'js'
64
- # file content URI is mandatory
65
- if payload[:uri].nil? then
66
- valid = false
67
- end
68
- when 'sql'
69
-
70
- # check if database server is available
71
- unless database_servers.include? payload[:server] then
72
- valid = false
73
- end
74
-
75
- # database username is mandatory
76
- if payload[:username].nil? then
77
- valid = false
78
- end
79
-
80
- # database user password is mandatory
81
- if payload[:password].nil? then
82
- valid = false
83
- end
84
-
85
- # database name is mandatory
86
- if payload[:database].nil? then
87
- valid = false
88
- end
89
-
90
- # database query is mandatory
91
- if payload[:query].nil? then
92
- valid = false
93
- end
62
+ when 'csv', 'xml', 'json', 'file', 'js'
63
+ # file content URI is mandatory
64
+ if payload[:uri].nil? then
65
+ valid = false
66
+ end
67
+ when 'sql'
68
+
69
+ # check if database server is available
70
+ unless database_servers.include? payload[:server] then
71
+ valid = false
72
+ end
73
+
74
+ # database username is mandatory
75
+ if payload[:username].nil? then
76
+ valid = false
77
+ end
78
+
79
+ # database user password is mandatory
80
+ if payload[:password].nil? then
81
+ valid = false
82
+ end
83
+
84
+ # database name is mandatory
85
+ if payload[:database].nil? then
86
+ valid = false
87
+ end
88
+
89
+ # database query is mandatory
90
+ if payload[:query].nil? then
91
+ valid = false
92
+ end
94
93
  end
95
94
  rescue Exception => e
96
95
 
@@ -17,7 +17,7 @@ module ARII
17
17
  # == Detect the changes
18
18
  #
19
19
  def detect object
20
- ARII::Config.log.info(self.class.name) {"Monitoring #{object[:uri]}"} unless object[:uri].nil?
20
+ ARII::Config.log.info(self.class.name) { "Monitoring #{object[:uri]}" } unless object[:uri].nil?
21
21
 
22
22
  begin
23
23
  if object[:uri] == '' then
@@ -26,14 +26,14 @@ module ARII
26
26
  url = RestClient.get object[:uri]
27
27
  @doc = url.to_str
28
28
  end
29
- JsonPath.on(@doc,object[:query]).each do |element|
29
+ JsonPath.on(@doc, object[:query]).each do |element|
30
30
  JsonPath.on(element, object[:cache]).each do |c|
31
31
  @response = Cashier.verify c, object, c, object[:seed]
32
32
  end
33
33
 
34
- # Process ARII cache response
35
- @cache = JSON.parse(@response, {:symbolize_names => true})
36
- unless @cache[:templates].nil? then
34
+ # Process ARII cache response
35
+ @cache = JSON.parse(@response, {:symbolize_names => true})
36
+ unless @cache[:templates].nil? then
37
37
  @cache[:templates].each do |t|
38
38
  @templates.push t
39
39
  end
@@ -43,11 +43,11 @@ module ARII
43
43
  # If not on cache, add to payload for processing
44
44
  #
45
45
  if @cache[:cache][:status] == 100 then
46
- ARII::Config.log.info(self.class.name) {"Not on cache, generating payload"}
46
+ ARII::Config.log.info(self.class.name) { "Not on cache, generating payload" }
47
47
  # add row data to payload from selectors (key => key, value => column name)
48
48
  payload = Hash.new
49
49
  object[:selectors].each do |selector|
50
- selector.each do |k,v|
50
+ selector.each do |k, v|
51
51
  JsonPath.on(element, v).each do |el|
52
52
  payload[k] = el
53
53
  end
@@ -59,7 +59,7 @@ module ARII
59
59
 
60
60
  end
61
61
  rescue Exception => e
62
- ARII::Config.log.error(self.class.name) {"Loading error: #{e}"}
62
+ ARII::Config.log.error(self.class.name) { "Loading error: #{e}" }
63
63
  end
64
64
  @cache[:templates]
65
65
  end
@@ -16,11 +16,11 @@ module ARII
16
16
  begin
17
17
  url = RestClient.get @seed[:payload][:uri]
18
18
  @doc = url.to_str
19
- JsonPath.on(@doc,@seed[:payload][:query]).each do |element|
19
+ JsonPath.on(@doc, @seed[:payload][:query]).each do |element|
20
20
 
21
21
  begin
22
22
  object = @help.deep_copy @agent[:payload]
23
- object.each_pair do |key,value|
23
+ object.each_pair do |key, value|
24
24
  variables = @help.identify_variables(object[key])
25
25
  variables.each do |v|
26
26
 
@@ -31,7 +31,7 @@ module ARII
31
31
  end
32
32
  end
33
33
 
34
- JsonPath.on(element,@seed[:payload][:cache]).each do |el|
34
+ JsonPath.on(element, @seed[:payload][:cache]).each do |el|
35
35
  object[:seed] = el
36
36
 
37
37
  end
@@ -8,14 +8,14 @@ module ARII
8
8
  # Main seed reading class, passing data for seeds to agent, to be inherited by SQL, File and URL templates
9
9
  #
10
10
  class SeedReader
11
- attr_accessor :seed, :objects, :agent
11
+ attr_accessor :seed, :objects, :agent
12
12
 
13
- def initialize agent, seed
14
- @agent = agent
15
- @help = ARII::Helper.new
16
- @seed = seed
17
- @objects = Array.new
18
- # puts "\t\tSeed: #{@seed[:identifier]}"
19
- end
13
+ def initialize agent, seed
14
+ @agent = agent
15
+ @help = ARII::Helper.new
16
+ @seed = seed
17
+ @objects = Array.new
18
+ # puts "\t\tSeed: #{@seed[:identifier]}"
19
+ end
20
20
  end
21
21
  end
@@ -15,9 +15,9 @@ module ARII
15
15
  # == Detect the changes
16
16
  #
17
17
  def detect object
18
- ARII::Config.log.debug(self.class.name) {"Monitoring #{object[:host]}"}
18
+ ARII::Config.log.debug(self.class.name) { "Monitoring #{object[:host]}" }
19
19
  begin
20
- @client = Mysql2::Client.new(:host => object[:host], :username => object[:username] , :password => object[:password] , :database => object[:database])
20
+ @client = Mysql2::Client.new(:host => object[:host], :username => object[:username], :password => object[:password], :database => object[:database])
21
21
  @client.query(object[:query]).each(:symbolize_keys => false) do |row|
22
22
  unless object[:cache].nil? then
23
23
  @response = Cashier.verify row[object[:cache]], object, row, object[:seed]
@@ -35,11 +35,11 @@ module ARII
35
35
  # The actual processing
36
36
  #
37
37
  if @cache[:cache][:status] == 100 then
38
- ARII::Config.log.info(self.class.name) {"Not on cache, generating payload"}
38
+ ARII::Config.log.info(self.class.name) { "Not on cache, generating payload" }
39
39
  # add row data to payload from selectors (key => key, value => column name)
40
40
  payload = Hash.new
41
41
  object[:selectors].each do |selector|
42
- selector.each do |k,v|
42
+ selector.each do |k, v|
43
43
  payload[k] = row[v]
44
44
  end
45
45
  end
@@ -48,7 +48,7 @@ module ARII
48
48
  end
49
49
  end
50
50
  rescue Exception => e
51
- ARII::Config.log.error(self.class.name) {"Processing error: #{e}"}
51
+ ARII::Config.log.error(self.class.name) { "Processing error: #{e}" }
52
52
  end
53
53
  @cache[:templates]
54
54
  end
@@ -14,17 +14,17 @@ module Services
14
14
  #
15
15
  def read
16
16
  begin
17
- @client = Mysql2::Client.new(:host => @seed[:payload][:host], :username => @seed[:payload][:username] , :password => @seed[:payload][:password] , :database => @seed[:payload][:database])
18
- @client.query(@seed[:payload][:query], :cast => false).each(:symbolize_keys => false) do |row|
17
+ @client = Mysql2::Client.new(:host => @seed[:payload][:host], :username => @seed[:payload][:username], :password => @seed[:payload][:password], :database => @seed[:payload][:database])
18
+ @client.query(@seed[:payload][:query], :cast => false).each(:symbolize_keys => false) do |row|
19
19
  begin
20
- object = @help.deep_copy @agent[:payload]
21
- object.each_pair do |key,value|
20
+ object = @help.deep_copy @agent[:payload]
21
+ object.each_pair do |key, value|
22
22
  variables = @help.identify_variables(object[key])
23
23
  variables.each do |v|
24
24
  object[key].gsub!("%{#{v}}", row[@seed[:payload][:selectors][v]].to_str)
25
25
  end
26
26
  end
27
-
27
+
28
28
  unless @seed[:payload][:cache].nil? then
29
29
  object[:seed] = row[@seed[:payload][:cache]]
30
30
  else
@@ -37,9 +37,9 @@ module Services
37
37
  end
38
38
  end
39
39
  rescue Exception => e
40
-
40
+
41
41
  end
42
-
42
+
43
43
  @objects
44
44
  end
45
45
  end
data/lib/arii/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module ARII
2
- VERSION = "1.2.1"
2
+ VERSION = "1.2.2"
3
3
  end
@@ -13,7 +13,7 @@ module ARII
13
13
  # == Detect the changes
14
14
  #
15
15
  def detect object
16
- ARII::Config.log.info(self.class.name) {"Monitoring #{object[:uri]}"} unless object[:uri].nil?
16
+ ARII::Config.log.info(self.class.name) { "Monitoring #{object[:uri]}" } unless object[:uri].nil?
17
17
  begin
18
18
  if object[:uri] == '' then
19
19
  @doc = Nokogiri::XML(object[:content])
@@ -38,12 +38,12 @@ module ARII
38
38
  # If not on cache, add to payload for processing
39
39
  #
40
40
  if @cache[:cache][:status] == 100 then
41
- ARII::Config.log.info(self.class.name) {"Not on cache, generating payload"}
41
+ ARII::Config.log.info(self.class.name) { "Not on cache, generating payload" }
42
42
  # add row data to payload from selectors (key => key, value => column name)
43
43
  payload = Hash.new
44
44
  object[:selectors].each do |selector|
45
45
 
46
- selector.each do |k,v|
46
+ selector.each do |k, v|
47
47
  element.xpath(v).each do |el|
48
48
  payload[k] = el.content
49
49
  end
@@ -56,7 +56,7 @@ module ARII
56
56
  end
57
57
  end
58
58
  rescue Exception => e
59
- ARII::Config.log.error(self.class.name) {"Processing error: #{e}"}
59
+ ARII::Config.log.error(self.class.name) { "Processing error: #{e}" }
60
60
  end
61
61
  end
62
62
  end
@@ -17,7 +17,7 @@ module ARII
17
17
  @doc.xpath(@seed[:payload][:query]).each do |element|
18
18
  begin
19
19
  object = @help.deep_copy @agent[:payload]
20
- object.each_pair do |key,value|
20
+ object.each_pair do |key, value|
21
21
  variables = @help.identify_variables(object[key])
22
22
  variables.each do |v|
23
23
  element.xpath(@seed[:payload][:selectors][v]).each do |el|
data/lib/arii.rb CHANGED
@@ -11,33 +11,32 @@ require 'arii/version'
11
11
  require 'arii/client'
12
12
 
13
13
  module ARII
14
- class Config
14
+ class Config
15
15
 
16
16
 
17
+ def self.set_log log
18
+ @@log = log
19
+ end
17
20
 
18
- def self.set_log log
19
- @@log = log
20
- end
21
+ def self.set_host host
22
+ host << '/' unless host.end_with?('/')
23
+ @@host = host
24
+ end
21
25
 
22
- def self.set_host host
23
- host << '/' unless host.end_with?('/')
24
- @@host = host
25
- end
26
+ def self.set_access_token api_key
27
+ @@access_token = api_key
28
+ end
26
29
 
27
- def self.set_access_token api_key
28
- @@access_token = api_key
29
- end
30
+ def self.log
31
+ @@log
32
+ end
30
33
 
31
- def self.log
32
- @@log
33
- end
34
+ def self.host
35
+ @@host
36
+ end
34
37
 
35
- def self.host
36
- @@host
37
- end
38
-
39
- def self.access_token
40
- @@access_token
41
- end
42
- end
38
+ def self.access_token
39
+ @@access_token
40
+ end
41
+ end
43
42
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arii
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pedro Lopes
@@ -84,14 +84,14 @@ dependencies:
84
84
  name: spreadsheet
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency