logstash-filter-ezproxy 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/lib/logstash/filters/cambridge.rb +123 -0
  4. data/lib/logstash/filters/dawsonera.rb +0 -5
  5. data/lib/logstash/filters/ebscohost.rb +26 -0
  6. data/lib/logstash/filters/emerald.rb +2 -6
  7. data/lib/logstash/filters/ezproxy.rb +79 -40
  8. data/lib/logstash/filters/gale.rb +21 -10
  9. data/lib/logstash/filters/heinonline.rb +44 -0
  10. data/lib/logstash/filters/lexis_webanalytics.rb +81 -0
  11. data/lib/logstash/filters/myilibrary.rb +29 -0
  12. data/lib/logstash/filters/oxford.rb +38 -0
  13. data/lib/logstash/filters/proquest.rb +42 -0
  14. data/lib/logstash/filters/sciencedirect.rb +1 -3
  15. data/lib/logstash/filters/scopus.rb +57 -0
  16. data/lib/logstash/filters/springer.rb +1 -1
  17. data/lib/logstash/filters/webofknowledge.rb +85 -0
  18. data/lib/logstash/filters/wiley.rb +154 -116
  19. data/lib/logstash/helpers/mime_helper.rb +38 -0
  20. data/lib/logstash/helpers/param_helper.rb +32 -0
  21. data/lib/logstash/helpers/url_parser.rb +2 -2
  22. data/logstash-filter-ezproxy.gemspec +2 -2
  23. data/spec/filters/cambridge/cambridge.2013-10-28.csv +13 -0
  24. data/spec/filters/cambridge/cambridge_spec.rb +27 -0
  25. data/spec/filters/ebscohost/ebscohost.2014-08-21.csv +5 -0
  26. data/spec/filters/ezproxy_spec.rb +1 -1
  27. data/spec/filters/gale/gale_spec.rb +0 -2
  28. data/spec/filters/heinonline/heinonline.2015-05-18.csv +12 -0
  29. data/spec/filters/heinonline/heinonline_spec.rb +20 -0
  30. data/spec/filters/lexis_webanalytics/lexis360.2017-04-28.csv +9 -0
  31. data/spec/filters/lexis_webanalytics/lexis_webanalytics_spec.rb +21 -0
  32. data/spec/filters/myilibrary/myilibrary.2018-02-09.csv +6 -0
  33. data/spec/filters/myilibrary/myilibrary_spec.rb +20 -0
  34. data/spec/filters/oxford/oxford.2018-02-15.csv +5 -0
  35. data/spec/filters/oxford/oxford_spec.rb +21 -0
  36. data/spec/filters/proquest/proquest.2018-02-09.csv +6 -0
  37. data/spec/filters/proquest/proquest_spec.rb +21 -0
  38. data/spec/filters/scopus/scopus.2016-07-18.csv +7 -0
  39. data/spec/filters/scopus/scopus_spec.rb +19 -0
  40. data/spec/filters/webofknowledge/webofknowledge_spec.rb +21 -0
  41. data/spec/filters/webofknowledge/wos.2017-01-13.csv +11 -0
  42. data/spec/filters/wiley/wiley.2018-02-07.csv +9 -0
  43. data/spec/filters/wiley/wiley_spec.rb +19 -0
  44. metadata +50 -6
@@ -0,0 +1,38 @@
1
+ module Mime
2
+ def Mime.parse (path)
3
+ data = {}
4
+ if (match = /(\/?.*)\/(.*)\.js/i.match(path))
5
+ data['mime'] = 'JS'
6
+ data['res_name'] = match[2]
7
+ elsif (match = /(\/?.*)\/(.*)\.css/i.match(path))
8
+ data['mime'] = 'CSS'
9
+ data['res_name'] = match[2]
10
+ elsif (match = /(\/?.*)\/(.*)\.gif/i.match(path))
11
+ data['mime'] = 'GIF'
12
+ data['res_name'] = match[2]
13
+ elsif (match = /(\/?.*)\/(.*)\.png/i.match(path))
14
+ data['mime'] = 'PNG'
15
+ data['res_name'] = match[2]
16
+ elsif (match = /(\/?.*)\/(.*)\.jpg/i.match(path))
17
+ data['mime'] = 'JPG'
18
+ data['res_name'] = match[2]
19
+ elsif (match = /(\/?.*)\/(.*)\.ico/i.match(path))
20
+ data['mime'] = 'ICO'
21
+ data['res_name'] = match[2]
22
+ elsif (match = /(\/?.*)\/(.*)\.svg/i.match(path))
23
+ data['mime'] = 'SVG'
24
+ data['res_name'] = match[2]
25
+ elsif (match = /(\/?.*)\/(.*)\.ttf/i.match(path))
26
+ data['mime'] = 'TTF'
27
+ data['res_name'] = match[2]
28
+ elsif (match = /(\/?.*)\/(.*)\.txt/i.match(path))
29
+ data['mime'] = 'TXT'
30
+ data['res_name'] = match[2]
31
+ elsif (match = /(\/?.*)\/(.*)\.woff/i.match(path))
32
+ data['mime'] = 'WOFF'
33
+ data['res_name'] = match[2]
34
+ end
35
+
36
+ return data
37
+ end
38
+ end
@@ -0,0 +1,32 @@
1
+ # encoding: utf-8
2
+ require 'json'
3
+ Encoding.default_external = 'UTF-8'
4
+ Encoding.default_internal = 'UTF-8'
5
+
6
+ module ParamHelper
7
+ def ParamHelper.parse (params)
8
+ data = {
9
+ }
10
+
11
+ params_hash = {}
12
+
13
+ doc_params = %w(docid docId docID documentId documentID)
14
+
15
+ doc_params.each do |p|
16
+ if params.key?(p)
17
+ data['title_id'] = params[p]
18
+ data['unit_id'] = params[p]
19
+ end
20
+ end
21
+
22
+ # params.each do |key, value|
23
+ # params_hash[key] = value
24
+ # end
25
+
26
+ # unless params.empty?
27
+ # data['params'] = JSON::generate(params)
28
+ # end
29
+
30
+ return data
31
+ end
32
+ end
@@ -8,7 +8,7 @@ module URLParser
8
8
  path = URI::unescape(uri.path)
9
9
  params = {}
10
10
  if (uri.query)
11
- params = CGI::parse(URI::unescape(uri.query))
11
+ params = CGI::parse(uri.query)
12
12
  end
13
13
  return {
14
14
  "uri" => uri,
@@ -16,7 +16,7 @@ module URLParser
16
16
  "params" => params
17
17
  }
18
18
  rescue
19
- puts input
19
+ # puts input
20
20
  return {}
21
21
  end
22
22
  end
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-filter-ezproxy'
3
- s.version = '0.1.1'
3
+ s.version = '0.2.0'
4
4
  s.licenses = ['Apache-2.0']
5
5
  s.summary = 'Write a short summary, because Rubygems requires one.'
6
6
  s.authors = ['Dom Belcher']
@@ -17,6 +17,6 @@ Gem::Specification.new do |s|
17
17
 
18
18
  # Gem dependencies
19
19
  #s.add_dependency "logstash-core", "~> 6.1.0"
20
- s.add_runtime_dependency "logstash-core-plugin-api", ">= 1.60", "<= 2.99"
20
+ s.add_runtime_dependency "logstash-core-plugin-api", ">= 1.6.0", "<= 3.0.0"
21
21
  s.add_development_dependency 'logstash-devutils'
22
22
  end
@@ -0,0 +1,13 @@
1
+ out-online_identifier;out-print_identifier;out-volume;out-issue;out-doi;out-pii;out-title_id;out-unitid;out-rtype;out-mime;in-url
2
+ ;;;;;;VNS;VNS;TOC;MISC;http://journals.cambridge.org.gate1.inist.fr/action/displayJournal?jid=VNS&bVolume=y
3
+ ;;27;3-4;;;VNS;7880012;TOC;MISC;http://journals.cambridge.org.gate1.inist.fr/action/displayIssue?decade=2010&jid=VNS&volumeId=27&issueId=3-4&iid=7880012
4
+ ;0952-5238;;;10.1017/S0952523813000345;;;S0952523813000345;ABS;HTML;http://journals.cambridge.org.gate1.inist.fr/action/displayAbstract?fromPage=online&aid=9010487&fulltextType=RV&fileId=S0952523813000345
5
+ ;0952-5238;27;3-4;10.1017/S0952523810000179;;VNS;S0952523810000179;ARTICLE;HTML;http://journals.cambridge.org.gate1.inist.fr/action/displayFulltext?type=6&fid=7880026&jid=VNS&volumeId=27&issueId=3-4&aid=7880025&fulltextType=RA&fileId=S0952523810000179
6
+ ;;27;3-4;;;VNS;7880025;ARTICLE;PDF;http://journals.cambridge.org.gate1.inist.fr/action/displayFulltext?type=1&pdftype=1&fid=7880027&jid=VNS&volumeId=27&issueId=3-4&aid=7880025
7
+ ;;27;1-2;;;VNS;7808056;ARTICLE;HTML;http://journals.cambridge.org:80/action/displayFulltext?type=1&fid=7808058&jid=VNS&volumeId=27&issueId=1-2&aid=7808056&bodyId=&membershipNumber=&societyETOCSession=
8
+ ;;;;;;journal-of-the-history-of-economic-thought;journal-of-the-history-of-economic-thought/issue/;TOC;MISC;https://www-cambridge-org/core/journals/journal-of-the-history-of-economic-thought/issue/CF230263144D4DAD96060DA26DA4260A
9
+ ;;;;;;journal-of-the-history-of-economic-thought;old-generation-of-economists-and-the-new-an-intellectual-historians-approach-to-a-significant-transition;ARTICLE;HTML;https://www-cambridge-org/core/journals/journal-of-the-history-of-economic-thought/article/old-generation-of-economists-and-the-new-an-intellectual-historians-approach-to-a-significant-transition/A95C410BA1767D60C3DA96901466AABD/core-reader
10
+ ;;;;;S1053837209990411;;S1053837209990411a;ARTICLE;PDF;https://www-cambridge-org/core/services/aop-cambridge-core/content/view/A95C410BA1767D60C3DA96901466AABD/S1053837209990411a.pdf/old_generation_of_economists_and_the_new_an_intellectual_historians_approach_to_a_significant_transition.pdf
11
+ ;;;;;;cambridge-companion-to-american-gothic;cambridge-companion-to-american-gothic/queer-american-gothic;BOOK_SECTION;HTML;https://www.cambridge.org/core/books/cambridge-companion-to-american-gothic/queer-american-gothic/F0D934DEF58963D498415A3FA90957FA/core-reader
12
+ 9781316337998;;;;;;;9781316337998c8_p115-127_CBO;BOOK_SECTION;PDF;https://www.cambridge.org/core/services/aop-cambridge-core/content/view/F0D934DEF58963D498415A3FA90957FA/9781316337998c8_p115-127_CBO.pdf/queer_american_gothic.pdf
13
+ ;;;;;;cambridge-companion-to-american-gothic;cambridge-companion-to-american-gothic;TOC;MISC;https://www.cambridge.org/core/books/cambridge-companion-to-american-gothic/1DB7BB56096D72ED4FBA5FEE294CBFBA
@@ -0,0 +1,27 @@
1
+ require 'logstash/filters/cambridge'
2
+ require 'csv'
3
+ require 'logstash/helpers/url_parser'
4
+
5
+ RSpec.describe Cambridge do
6
+ CSV.foreach('spec/filters/cambridge/cambridge.2013-10-28.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[10])
8
+ uri = parsed_url['uri']
9
+ path = parsed_url['path']
10
+ params = parsed_url['params']
11
+
12
+ name = "tests a URL " + row[10]
13
+ it name do
14
+ data = Cambridge.parse(path, params, uri)
15
+ expect(data["online_identifier"]).to eq(row[0])
16
+ expect(data["print_identifier"]).to eq(row[1])
17
+ expect(data["volume"]).to eq(row[2])
18
+ expect(data["issue"]).to eq(row[3])
19
+ expect(data["doi"]).to eq(row[4])
20
+ expect(data["pii"]).to eq(row[5])
21
+ expect(data["title_id"]).to eq(row[6])
22
+ expect(data["unit_id"]).to eq(row[7])
23
+ expect(data["rtype"]).to eq(row[8])
24
+ expect(data["mime"]).to eq(row[9])
25
+ end
26
+ end
27
+ end
@@ -11,3 +11,8 @@ out-unitid;out-rtype;out-mime;out-doi;out-print_identifier;out-num;out-vol;out-f
11
11
  118470727;REF;HTML;;;;;;;;;http://web.a.ebscohost.com/ehost/detail/detail?vid=4&sid=1f85c7ec-9906-4b8e-917f-fb4c7171ffe4%40sessionmgr4007&hid=4201&bdata=Jmxhbmc9ZnImc2l0ZT1laG9zdC1saXZl#AN=118470727&db=a9h
12
12
  10.1016/j.medmal.2016.06.002;OPENURL;HTML;10.1016/j.medmal.2016.06.002;0399077X;7;46;372;379;Medecine Maladies Infectieuses;;http://resolver.ebscohost.com/openurl?sid=EBSCO:a9h&genre=article&issn=0399077X&ISBN=&volume=46&issue=7&date=20161001&spage=372&pages=372-379&title=Medecine%20Maladies%20Infectieuses&atitle=Community-acquired%20Clostridium%20difficile%20infections%20in%20emergency%20departments.&aulast=Lefevre-Tantet-Etchebarne%2C%20D.&id=DOI:10.1016/j.medmal.2016.06.002
13
13
  ;TOC;MISC;;;;;;;;EBSCO Discovery Service;http://eds.a.ebscohost.com:80/eds/results?sid=2ff3e174-b478-4663-b25e-8dc8ccd9c1c4%40sessionmgr4003&vid=1&hid=4113&bquery=(Generations%2c+AND+Discourse%2c)+AND+(Social+AND+Change.+AND+By+AND+Karen+AND+Foster)&bdata=Jmxhbmc9ZnImdHlwZT0wJnNpdGU9ZWRzLWxpdmU%3d
14
+ 56308;EBOOK;PDF;;;;;;;;;http://pdc-evs.ebscohost.com:80/ebscoviewerservice/api/EbookArtifact?format=EB&db=nlebk&an=56308&language=en&artifactId=NL$56308$PDF/4450/66ad837f/8aa6b29a_COVER.pdf&pageNumber=0
15
+ 119231;EBOOK;PDF;;;;;;;;;http://pdc-evs.ebscohost.com:80/EbscoViewerService/ebook/artifactframe?path2EpImages=//if.ebsco-content.com/interfacefiles/evs/1.1.4.7003/src/client/legacy/&artifactRef=%2Febscoviewerservice%2Fapi%2FEbookArtifact%3Fformat%3DEB%26db%3Dnlebk%26an%3D119231%26language%3Den%26artifactId%3DNL%24119231%24PDF%2F4456%2F9b759a34%2Fb18be96a_32.pdf%26pageNumber%3D46&initialScale=2.2848&cFTA=false&reportTextLayerRendered=false&isIpad=false&artifactId=NL$119231$PDF/4456/9b759a34/b18be96a_32.pdf
16
+ 100139;EBOOK;PDF;;;;;;;;;http://pdc-evs.ebscohost.com:80/ebscoviewerservice/api/ebookpageturn?an=100139&db=nlebk&retrievalFormat=PDF&pageNum=0&pageLabel=Cover&language=en&_=1511342760030
17
+ 1513241;EBOOK;PDF;;;;;;;;;http://pdc-evs.ebscohost.com:80/EbscoViewerService/api/EBookAccessibleContent?theDoid=NL$1513241$PDF&thePage=pp_Cover
18
+ 1522948;EBOOK;PDF;;;;;;;;;http://pdc-evs.ebscohost.com:80/EbscoViewerService/api/ebookdigitalobject?db=nlebk&an=1522948&doid=NL$1522948$PDF&format=EB&language=en&bookSessionKey=Sr%2FVV1zWTASIk9tcgtAZV8W4l191Ex5BygUm5RlpOvg%3D
@@ -38,7 +38,7 @@ describe LogStash::Filters::Ezproxy do
38
38
  insist { subject.get('request_metadata' )}.include?(f)
39
39
  end
40
40
  end
41
-
41
+
42
42
  # sample("input_url" => "http://ezproxy.lancs.ac.uk:80/login?url=http://www.jstor.org/px/xhr/api/v1/collector") do
43
43
  # insist { subject }.include?("request_metadata")
44
44
  # # expected_fields = %w(unit_id doi title_id rtype mime)
@@ -8,8 +8,6 @@ RSpec.describe Gale do
8
8
  path = parsed_url['path']
9
9
  params = parsed_url['params']
10
10
 
11
- puts params
12
-
13
11
  name = "tests a URL " + row[4]
14
12
  it name do
15
13
  data = Gale::parse(path, params)
@@ -0,0 +1,12 @@
1
+ out-title_id;out-unitid;out-rtype;out-mime;in-url
2
+ antil77;hein.journals/antil77/53;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/Page?handle=hein.journals/antil77&id=53
3
+ antil77;hein.journals/antil77/53/1;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=1&handle=hein.journals/antil77&id=53
4
+ antil77;hein.journals/antil77/53/2;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=2&handle=hein.journals/antil77&id=53
5
+ antil77;hein.journals/antil77/53/3;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=3&handle=hein.journals/antil77&id=53
6
+ antil77;hein.journals/antil77/53/4;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=4&handle=hein.journals/antil77&id=53
7
+ antil77;hein.journals/antil77/53/5;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=5&handle=hein.journals/antil77&id=53
8
+ antil77;hein.journals/antil77/53/6;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=6&handle=hein.journals/antil77&id=53
9
+ antil77;hein.journals/antil77/53/7;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/PageMulti?collection=journals&number_of_pages=7&handle=hein.journals/antil77&id=53
10
+ antil77;hein.journals/antil77/53;ARTICLE;PDF;http://heinonline.org.faraway.u-paris10.fr/HOL/Print?collection=journals&handle=hein.journals/antil77&id=53
11
+ antil77;hein.journals/antil77/1;TOC;HTML;http://heinonline.org.faraway.u-paris10.fr/HOL/Contents?handle=hein.journals/antil77&id=1&size=2&index=&collection=journals
12
+ antil;journals/antil;TOC;HTML;http://heinonline.org.faraway.u-paris10.fr/HOL/Index?index=journals/antil&collection=usjournals
@@ -0,0 +1,20 @@
1
+ require 'logstash/filters/heinonline'
2
+ require 'csv'
3
+ require 'logstash/helpers/url_parser'
4
+
5
+ RSpec.describe HeinOnline do
6
+ CSV.foreach('spec/filters/heinonline/heinonline.2015-05-18.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[4])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+
11
+ name = "tests a URL " + row[4]
12
+ it name do
13
+ data = HeinOnline.parse(path, params)
14
+ expect(data["title_id"]).to eq(row[0])
15
+ expect(data["unit_id"]).to eq(row[1])
16
+ expect(data["rtype"]).to eq(row[2])
17
+ expect(data["mime"]).to eq(row[3])
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,9 @@
1
+ out-title_id;out-unitid;out-rtype;out-mime;in-url
2
+ droit_fiscal;869697884;TOC;HTML;http://www.lexis360.fr/Document/droit_fiscal_29_septembre_2016_n_39/EQoofIo2izxXAW-NWTzsDkSV01q3G5HXt9qLfVgetxD6vmamzHEa7qFKMR2TVPp30?data=c0luZGV4PTEmckNvdW50PTE3NjIm&rndNum=869697884&tsid=search7_
3
+ RDF;PS_RDF_201639SOMMAIREPS_2_0KTG;ARTICLE;HTML;http://www.lexis360.fr/Docview.aspx?&tsid=docview1_&citationData=%7B%22citationId%22:%22PS_RDF_201639SOMMAIREPS_2_0KTGS3%22%2C%22title%22:%22545%22%2C%22docId%22:%22PS_RDF_201639SOMMAIREPS_2_0KTG%22%7D
4
+ ;FP_FP-617751_0KT0;ENCYCLOPAEDIA_ENTRY;HTML;https://webanalytics.lexisnexis.com:443/wa_k4c.watag?js=1&rf=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2Fsearch.aspx%3Fpid%3D6%26portletId%3D79%26tsid%3Dportalpage42_&lc=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FDocument%2Fn_3217_preparer_ses_examens%2FZsfF73PHuzboctUxOJMYP2nWRYaEUoe_zWzSfAzjON01%3Fdata%3Dc0luZGV4PTImckNvdW50PTEzJg%3D%3D%26rndNum%3D1099977257%26tsid%3Dsearch20_&rs=1920x1080&cd=24&ln=fr&jv=1&tz=GMT%20%2B01%3A00&site=k4c&wa_PageName=Format%20des%20documents%20&wa_ProductId=69&un=THOMAS.JOUNEAUU2447445205&wa_UserType=Subscribed&wa_SessionId=228945b0-0a48-11e7-af02-00000aab0d6b&wa_ClientID=%23%24%25none%25%24%23&wa_transID=05d9824d-8592-4b02-969c-f9a445500bb9&wa_DocId=FP_FP-617751_0KT0&wa_DocSourceType=FicheMethodo&wa_UserAction=ViewDoc&wa_RequestEndTime=Thu%2C%2016%20Mar%202017%2015%3A57%3A55%20GMT&ets=1489679875173.841&ts=1489679875173.713&ck=WA_ANONCOOKIE%3DZFdM2qWagxa5_44212
5
+ ;FP_FP-620713_0KT0;ENCYCLOPAEDIA_ENTRY;HTML;https://webanalytics.lexisnexis.com:443/wa_k4c.watag?js=1&rf=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FContenus&lc=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2Fdocview.aspx%3Ftsid%3Dsearch21_&rs=1920x1080&cd=24&ln=fr&jv=1&tz=GMT%20%2B01%3A00&site=k4c&wa_PageName=Format%20des%20documents%20&wa_ProductId=69&un=THOMAS.JOUNEAUU2447445205&wa_UserType=Subscribed&wa_SessionId=228945b0-0a48-11e7-af02-00000aab0d6b&wa_ClientID=%23%24%25none%25%24%23&wa_transID=0768a48d-b571-435d-b4a9-32ab97a14a85&wa_DocId=FP_FP-620713_0KT0&wa_DocSourceType=FicheRevision&wa_UserAction=ViewDoc&wa_RequestEndTime=Thu%2C%2016%20Mar%202017%2016%3A01%3A52%20GMT&ets=1489680112027.152&ts=1489680112027.958&ck=WA_ANONCOOKIE%3DZFdM2qWagxa5_44212
6
+ SJG;PS_SJG_201711SOMMAIREPS_2_0KTZ;TOC;HTML;https://webanalytics.lexisnexis.com:443/wa_k4c.watag?js=1&rf=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2Fsearch.aspx%3Fpid%3D6%26portletId%3D79%26tsid%3Dportalpage46_&lc=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FDocument%2Fla_semaine_juridique_edition_generale_13_mars_2017_n_11%2FjgNz91a3q5GvXkLsPeRSTMfqt_kvpP8gvZWBiMgZbsGQ9opYGlPQ6y-cXHzVuBUr0%3Fdata%3Dc0luZGV4PTEmckNvdW50PTEzOTcm%26rndNum%3D399877540%26tsid%3Dsearch22_&rs=1920x1080&cd=24&ln=fr&jv=1&tz=GMT%20%2B01%3A00&site=k4c&wa_PageName=Format%20des%20documents%20&wa_ProductId=69&un=THOMAS.JOUNEAUU2447445205&wa_UserType=Subscribed&wa_SessionId=228945b0-0a48-11e7-af02-00000aab0d6b&wa_ClientID=%23%24%25none%25%24%23&wa_transID=b84342fe-ddb2-4691-b04c-7b4e99adf47a&wa_DocId=PS_SJG_201711SOMMAIREPS_2_0KTZ&wa_DocSourceType=PresseSommaire&wa_UserAction=ViewDoc&wa_RequestEndTime=Thu%2C%2016%20Mar%202017%2016%3A06%3A51%20GMT&ets=1489680411324.827&ts=1489680411324.144&ck=WA_ANONCOOKIE%3DZFdM2qWagxa5_44212
7
+ KPRE;PS_KPRE-524352_0KTZ;ARTICLE;HTML;https://webanalytics.lexisnexis.com:443/wa_k4c.watag?js=1&rf=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FDocument%2Fla_semaine_juridique_edition_generale_13_mars_2017_n_11%2FjgNz91a3q5GvXkLsPeRSTMfqt_kvpP8gvZWBiMgZbsGQ9opYGlPQ6y-cXHzVuBUr0%3Fdata%3Dc0luZGV4PTEmckNvdW50PTEzOTcm%26rndNum%3D399877540%26tsid%3Dsearch22_&lc=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FDocview.aspx%3F%26tsid%3Ddocview57_%26citationData%3D%7B%2522citationId%2522%3A%2522PS_SJG_201711SOMMAIREPS_2_0KTZS2%2522%2C%2522title%2522%3A%2522264%2522%2C%2522docId%2522%3A%2522PS_SJG_201711SOMMAIREPS_2_0KTZ%2522%7D&rs=1920x1080&cd=24&ln=fr&jv=1&tz=GMT%20%2B01%3A00&site=k4c&wa_PageName=Format%20des%20documents%20&wa_ProductId=69&un=THOMAS.JOUNEAUU2447445205&wa_UserType=Subscribed&wa_SessionId=228945b0-0a48-11e7-af02-00000aab0d6b&wa_ClientID=%23%24%25none%25%24%23&wa_transID=120cba0f-8302-460e-a706-c431040ca609&wa_DocId=PS_KPRE-524352_0KTZ&wa_DocSourceType=Presse&wa_UserAction=ViewDoc&wa_RequestEndTime=Thu%2C%2016%20Mar%202017%2016%3A09%3A38%20GMT&ets=1489680578029.53&ts=1489680578029.348&ck=WA_ANONCOOKIE%3DZFdM2qWagxa5_44212
8
+ ;EF_SY-530479_0KRE;ENCYCLOPAEDIA_ENTRY;HTML;https://webanalytics.lexisnexis.com:443/wa_k4c.watag?js=1&rf=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2Fsearch.aspx%3Fpid%3D6%26portletId%3D79%26tsid%3Dportalpage48_&lc=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FDocument%2Fsynthese_usufruit_usage_et_habitation%2Fz_c9FBKd5kl7VpKKRZNDhNwFCkZWbBo-bvLUlkeo8cs1%3Fdata%3Dc0luZGV4PTImckNvdW50PTI4Jg%3D%3D%26rndNum%3D281308775%26tsid%3Dsearch23_&rs=1920x1080&cd=24&ln=fr&jv=1&tz=GMT%20%2B01%3A00&site=k4c&wa_PageName=Format%20des%20documents%20&wa_ProductId=69&un=THOMAS.JOUNEAUU2447445205&wa_UserType=Subscribed&wa_SessionId=228945b0-0a48-11e7-af02-00000aab0d6b&wa_ClientID=%23%24%25none%25%24%23&wa_transID=aa210ac9-6d55-419e-b44b-64a8bd8132e6&wa_DocId=EF_SY-530479_0KRE&wa_DocSourceType=En_eFascicule&wa_UserAction=ViewDoc&wa_RequestEndTime=Thu%2C%2016%20Mar%202017%2016%3A12%3A19%20GMT&ets=1489680739981.161&ts=1489680739981.790&ck=WA_ANONCOOKIE%3DZFdM2qWagxa5_44212
9
+ ;LG_SLD-LEGISCTA000032227360_0WJN;CODES;HTML;https://webanalytics.lexisnexis.com:443/wa_k4c.watag?js=1&rf=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2FContenus&lc=https%3A%2F%2Fwww-lexis360-fr.bases-doc.univ-lorraine.fr%2Fdocview.aspx%3Ftsid%3Dsearch25_&rs=1920x1080&cd=24&ln=fr&jv=1&tz=GMT%20%2B01%3A00&site=k4c&wa_PageName=Format%20des%20documents%20&wa_ProductId=69&un=THOMAS.JOUNEAUU2447445205&wa_UserType=Subscribed&wa_SessionId=228945b0-0a48-11e7-af02-00000aab0d6b&wa_ClientID=%23%24%25none%25%24%23&wa_transID=bd42b88b-50c4-4672-a9e5-646773b61dd2&wa_DocId=LG_SLD-LEGISCTA000032227360_0WJN&wa_DocSourceType=L%C3%A9gislationconsolid%C3%A9e&wa_UserAction=ViewDoc&wa_RequestEndTime=Thu%2C%2016%20Mar%202017%2016%3A22%3A21%20GMT&ets=1489681341375.843&ts=1489681341375.264&ck=WA_ANONCOOKIE%3DZFdM2qWagxa5_44212
@@ -0,0 +1,21 @@
1
+ require 'logstash/filters/lexis_webanalytics'
2
+ require 'csv'
3
+ require 'logstash/helpers/url_parser'
4
+
5
+ RSpec.describe LexisWebAnalytics do
6
+ CSV.foreach('spec/filters/lexis_webanalytics/lexis360.2017-04-28.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[4])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+ uri = parsed_url['uri']
11
+
12
+ name = "tests a URL " + row[4]
13
+ it name do
14
+ data = LexisWebAnalytics.parse(path, params, uri)
15
+ expect(data["title_id"]).to eq(row[0])
16
+ expect(data["unit_id"]).to eq(row[1])
17
+ expect(data["rtype"]).to eq(row[2])
18
+ expect(data["mime"]).to eq(row[3])
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,6 @@
1
+ out-unitid;out-title_id;out-rtype;out-mime;in-url
2
+ 273893;273893;BOOK;MISC;http://lib.myilibrary.com/Open.aspx?id=273893
3
+ 128348;128348;BOOK;MISC;http://lib.myilibrary.com/Open.aspx?id=128348
4
+ ;;BOOK_PAGE;JPG;http://lib.myilibrary.com/Viewer/getImage_Servlet.aspx?page=35&lpage=50&width=750&height=1120&searchphrase=&quality=82&codec=jpg&sid=9c40333be2c4e5ac
5
+ 645694;645694;BOOK;MISC;http://lib.myilibrary.com/browse/open.asp?id=645694
6
+ ;;BOOK_PAGE;PDF;http://lib.myilibrary.com/Viewer/getDMP_Servlet.aspx?k=yestzajesrcydlue&p=571,572,573,574,575&l=595,596,597,598,599&t=PDF
@@ -0,0 +1,20 @@
1
+ require 'logstash/filters/myilibrary'
2
+ require 'logstash/helpers/url_parser'
3
+ require 'csv'
4
+
5
+ RSpec.describe MyILibrary do
6
+ CSV.foreach('spec/filters/myilibrary/myilibrary.2018-02-09.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[4])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+
11
+ name = "tests a URL " + row[4]
12
+ it name do
13
+ data = MyILibrary.parse(path, params)
14
+ expect(data["unit_id"]).to eq(row[0])
15
+ expect(data["title_id"]).to eq(row[1])
16
+ expect(data["rtype"]).to eq(row[2])
17
+ expect(data["mime"]).to eq(row[3])
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,5 @@
1
+ out-title_id;out-unitid;out-doi;out-rtype;out-mime;in-url
2
+ acprof-9780198755753;acprof-9780198755753;10.1093/acprof:oso/9780198755753.001.0001;BOOK;;http://www.oxfordscholarship.com:80/view/10.1093/acprof:oso/9780198755753.001.0001/acprof-9780198755753
3
+ acprof-9780198755753;acprof-9780198755753;10.1093/acprof:oso/9780198755753.001.0001;BOOK_CHAPTER;;http://www.oxfordscholarship.com:80/view/10.1093/acprof:oso/9780198755753.001.0001/acprof-9780198755753-chapter-7
4
+ acprof-9780198755753;acprof-9780198755753;10.1093/acprof:oso/9780198755753.001.0001;BOOK_CHAPTER;PDF;http://www.oxfordscholarship.com:80/view/10.1093/acprof:oso/9780198755753.001.0001/acprof-9780198755753-chapter-7?print=pdf
5
+ ;;10.1093/acprof:oso/9780198755753.001.0001;;;http://www.oxfordscholarship.com:80/doc/10.1093/acprof:oso/9780198755753.001.0001/acprof-9780198755753-graphic-051.gif
@@ -0,0 +1,21 @@
1
+ require 'logstash/filters/oxford'
2
+ require 'csv'
3
+ require 'logstash/helpers/url_parser'
4
+
5
+ RSpec.describe Oxford do
6
+ CSV.foreach('spec/filters/oxford/oxford.2018-02-15.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[5])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+
11
+ name = "tests a URL " + row[5]
12
+ it name do
13
+ data = Oxford.parse(path, params)
14
+ expect(data["title_id"]).to eq(row[0])
15
+ expect(data["unit_id"]).to eq(row[1])
16
+ expect(data["doi"]).to eq(row[2])
17
+ expect(data["rtype"]).to eq(row[3])
18
+ expect(data["mime"]).to eq(row[4])
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,6 @@
1
+ out-unitid;out-title_id;out-rtype;out-mime;out-remote_id;page;out-page;in-url
2
+ ;;BOOK_PAGE;MISC;04b0b12477384ce3a24bd5bc1477b9ad;636;https://ebookcentral.proquest.com:443/lib/lancaster/remoteDocServer.api?remote_id=04b0b12477384ce3a24bd5bc1477b9ad&encrypted=419c8801671b8091ff31fa858dc3188bccc021fdec5add1a31f57471ee5ebc631e60802cb16d1f690c138d404b810d773ed91cd92b72d19edb0af014817d15e144a8db31158069a0017ef723ee10612b6e216268eab01356fd1ae1ef91a1c41eef0550a1f70d567c1c747d0c3174c951bc133ea6a441a19fd09a1eb96604a12e7dd0181029cd34b1fa6413e&nq=1&search=&tm=1/636&cid=636&_id=636&pageNum=636&tmpOpt=0
3
+ 967751;967751;TOC;HTML;;;https://ebookcentral.proquest.com:443/lib/lancaster/detail.action?docID=967751
4
+ 1120299;1120299;BOOK;MISC;;;https://ebookcentral.proquest.com:443/lib/lancaster/reader.action?docID=1120299
5
+ 1039332;1039332;TOC;JSON;bc0bd9360b1346e399a5b7dd25492840;;https://ebookcentral.proquest.com:443/lib/lancaster/docAccess.api?rpgr=eb&docid=1039332&remote_id=bc0bd9360b1346e399a5b7dd25492840
6
+ 1076012;1076012;TOC;JSON;58cfab03943e4415bc5c9d76ecd27d4f;;https://ebookcentral.proquest.com:443/lib/lancaster/docSearch.api?remote_id=58cfab03943e4415bc5c9d76ecd27d4f&docid=1076012&p00=%22Brandt%20at%20the%20Bundestag%20on%20Ostpolitik%22
@@ -0,0 +1,21 @@
1
+ require 'logstash/filters/proquest'
2
+ require 'logstash/helpers/url_parser'
3
+ require 'csv'
4
+
5
+ RSpec.describe Proquest do
6
+ CSV.foreach('spec/filters/proquest/proquest.2018-02-09.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[6])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+
11
+ name = "tests a URL " + row[6]
12
+ it name do
13
+ data = Proquest.parse(path, params)
14
+ expect(data["unit_id"]).to eq(row[0])
15
+ expect(data["title_id"]).to eq(row[1])
16
+ expect(data["rtype"]).to eq(row[2])
17
+ expect(data["mime"]).to eq(row[3])
18
+ expect(data["remote_id"]).to eq(row[4])
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,7 @@
1
+ out-unitid;out-rtype;out-mime;in-url
2
+ 2-s2.0-84863856522;REF;HTML;http://www.scopus.com/results/citedbyresults.url?sort=plf-f&cite=2-s2.0-84863856522&src=s&imp=t&sid=38BDE00A99BBFE87E2CE4B3BBB4A00E8.aqHV0EoE4xlIF3hgVWgA%3a170&sot=cite&sdt=a&sl=0&origin=resultslist&editSaveSearch=&txGid=38BDE00A99BBFE87E2CE4B3BBB4A00E8.aqHV0EoE4xlIF3hgVWgA%3a17
3
+ 2-s2.0-33644857527;ABS;HTML;http://www.scopus.com/record/display.url?eid=2-s2.0-33644857527&origin=reflist&sort=plf-f&src=s&st1=bim&st2=crowd&sid=32F992A81208A3DEC0703EA645402F89.f594dyPDCy4K3aQHRor6A%3a40&sot=b&sdt=b&sl=45&s=%28TITLE-ABS-KEY%28bim%29+AND+TITLE-ABS-KEY%28crowd%29%29
4
+ 2-s2.0-84880617481;REF;HTML;http://www.scopus.com/record/references.url?origin=recordpage&currentRecordPageEID=2-s2.0-84880617481
5
+ 35190313500;BIO;HTML;http://www.scopus.com/authid/detail.url?authorId=35190313500
6
+ 2-s2.0-84952777090;REF;PDF;https://www.scopus.com/record/pdfdownload.uri?origin=recordpage&sid=&src=s&stateKey=OFD_804446236&eid=2-s2.0-84952777090&sort=&listId=&clickedLink=&_selectedCitationInformationItemsAll=on&selectedCitationInformationItems=Author%28s%29
7
+ 2-s2.0-84952777090;REF;PRINT;https://www.scopus.com/citation/print.uri?origin=recordpage&sid=&src=s&stateKey=OFD_804446236&eid=2-s2.0-84952777090&sort=&clickedLink=&view=FullDocument&_selectedCitationInformationItemsAll=on&selectedCitationInformationItems=Author%28s%29
@@ -0,0 +1,19 @@
1
+ require 'logstash/filters/scopus'
2
+ require 'csv'
3
+ require 'logstash/helpers/url_parser'
4
+
5
+ RSpec.describe Scopus do
6
+ CSV.foreach('spec/filters/scopus/scopus.2016-07-18.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[3])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+
11
+ name = "tests a URL " + row[3]
12
+ it name do
13
+ data = Scopus.parse(path, params)
14
+ expect(data["unit_id"]).to eq(row[0])
15
+ expect(data["rtype"]).to eq(row[1])
16
+ expect(data["mime"]).to eq(row[2])
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,21 @@
1
+ require 'logstash/filters/webofknowledge'
2
+ require 'csv'
3
+ require 'logstash/helpers/url_parser'
4
+
5
+ RSpec.describe WebOfKnowledge do
6
+ CSV.foreach('spec/filters/webofknowledge/wos.2017-01-13.csv', { :col_sep => ';', headers: true }) do |row|
7
+ parsed_url = URLParser::parse(row[5])
8
+ path = parsed_url['path']
9
+ params = parsed_url['params']
10
+
11
+ name = "tests a URL " + row[5]
12
+ it name do
13
+ data = WebOfKnowledge.parse(path, params)
14
+ expect(data["publication_title"]).to eq(row[0])
15
+ expect(data["title_id"]).to eq(row[1])
16
+ expect(data["unit_id"]).to eq(row[2])
17
+ expect(data["rtype"]).to eq(row[3])
18
+ expect(data["mime"]).to eq(row[4])
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,11 @@
1
+ out-publication_title;out-title_id;out-unitid;out-rtype;out-mime;in-url
2
+ ;UA;;SEARCH;HTML;http://apps.webofknowledge.com/UA_GeneralSearch_input.do?product=UA&SID=Z2E5UA9l6Q6BRAvS44U&search_mode=GeneralSearch
3
+ ;UA;;TOC;HTML;http://apps.webofknowledge.com/Search.do?product=UA&SID=Z2E5UA9l6Q6BRAvS44U&search_mode=GeneralSearch&prID=dcfade3d-550a-4076-92a6-bd6708e2c64c
4
+ ;UA;;REF;HTML;http://apps.webofknowledge.com/full_record.do?product=UA&search_mode=GeneralSearch&qid=14&SID=Z2E5UA9l6Q6BRAvS44U&page=1&doc=2
5
+ ;WOS;;TOC;HTML;http://apps.webofknowledge.com/InterService.do?product=WOS&toPID=WOS&action=AllCitationService&isLinks=yes&highlighted_tab=WOS&last_prod=WOS&fromPID=UA&;returnLink=http%3a%2f%2fapps.webofknowledge.com%2ffull_record.do%3fhighlighted_tab%3dUA%26page%3d1%26qid%3d14%26log_event%3dyes%26viewType%3dfullRecord%26SID%3dZ2E5UA9l6Q6BRAvS44U%26product%3dUA%26doc%3d2%26search_mode%3dGeneralSearch&srcDesc=RET2UA&srcAlt=Back+to+All+Databases&;UT=WOS:000390849600006&search_mode=CitedRefList&SID=Z2E5UA9l6Q6BRAvS44U&parentProduct=UA&parentQid=14&parentDoc=2&recid=WOS:000390849600006&PREC_REFCOUNT=12&fromRightPanel=true
6
+ ;;;TOC;HTML;https://jcr-incites-thomsonreuters-com/JCRJournalHomeAction.action?SID=A2-PrkrJv74tBj5ko9eDVx2FpCXtAd4MjBJRW-18x2dJxx17XG5YmNwa4tn0JGiq6Ax3Dx3DlUL1U2XQfq5HIHtc4qxxE1wx3Dx3D-9vvmzcndpRgQCGPd1c2qPQx3Dx3D-wx2BJQh9GKVmtdJw3700KssQx3Dx3D&refineString=null&SrcApp=IC2LS&timeSpan=null&Init=Yes&;wsid=Z2E5UA9l6Q6BRAvS44U
7
+ CA-A CANCER JOURNAL FOR CLINICIANS;CA-CANCER J CLIN;impact/CA-CANCER J CLIN/2015;TABLE;HTML;https://jcr-incites-thomsonreuters-com/JCRJournalProfileAction.action?pg=JRNLPROF&journalImpactFactor=137.578&year=2015&journalTitle=CA-A%20CANCER%20JOURNAL%20FOR%20CLINICIANS&edition=SCIE&journal=CA-CANCER%20J%20CLIN
8
+ ;;;MAP;MISC;https://esi-incites-thomsonreuters-com/IndicatorsAction.action?SID=B2-jx2FDXmiF0SKhxx0ig0x2BAhKZYxxBanb6AxxZ9-18x2ddx2B4ruM3jsN3soix2BefrHXeAx3Dx3DUVx2FlduvZ8VjUUtFgmiBlyQx3Dx3D-iyiHxxh55B2RtQWBj2LEuawx3Dx3D-1iOubBm4x2FSwJjjKtx2F7lAaQx3Dx3D&refineString=null&SrcApp=IC2LS&timeSpan=null&;Init=Yes&wsid=Z2E5UA9l6Q6BRAvS44U
9
+ ;;;GRAPH;MISC;https://esi-incites-thomsonreuters-com/DocumentsAction.action
10
+ ;;;ANALYSIS;MISC;http://wcs.webofknowledge.com.insis.bib.cnrs.fr/RA/analyze.do
11
+ ;WOS;;ANALYSIS;MISC;http://apps.webofknowledge.com.insis.bib.cnrs.fr/CitationReport.do?product=WOS&search_mode=CitationReport&SID=3B7nnGH8MSgIpEdYq5j&page=1&cr_pqid=3&viewType=summary&colName=WOS
@@ -0,0 +1,9 @@
1
+ out-online_identifier;out-doi;out-issue;out-vol;out-title_id;out-unitid;out-rtype;out-mime;in-url
2
+ ;;;;21579032;;TOC;MISC;http://onlinelibrary.wiley.com/journal/21579032
3
+ ;;1;7;21579032;21579032/7/1;TOC;MISC;http://onlinelibrary.wiley.com/toc/toc/21579032/7/1
4
+ ;10.1002/brb3.590;;;;brb3.590;ARTICLE;HTML;http://onlinelibrary.wiley.com/doi/10.1002/brb3.590
5
+ ;10.1002/brb3.590;;;;brb3.590;ABS;HTML;http://onlinelibrary.wiley.com/doi/abs/10.1002/brb3.590
6
+ ;10.1002/brb3.590;;;;brb3.590;ARTICLE;HTML;http://onlinelibrary.wiley.com/doi/full/10.1002/brb3.590
7
+ ;10.1002/brb3.590;;;;brb3.590;ARTICLE;PDF;http://onlinelibrary.wiley.com/doi/pdf/10.1002/brb3.590
8
+ ;10.1002/brb3.590;;;;brb3.590;ARTICLE;PDF;http://onlinelibrary.wiley.com/doi/epdf/10.1002/brb3.590
9
+ 9781118638323;10.1002/9781118638323;;;;9781118638323.ch3;BOOK_SECTION;PDF;http://onlinelibrary.wiley.com/pdf/10.1002/9781118638323.ch3
@@ -21,4 +21,23 @@ RSpec.describe Wiley do
21
21
  expect(data["mime"]).to eq(row[7])
22
22
  end
23
23
  end
24
+
25
+ CSV.foreach('spec/filters/wiley/wiley.2018-02-07.csv', { :col_sep => ';', headers: true }) do |row|
26
+ parsed_url = URLParser::parse(row[8])
27
+ path = parsed_url['path']
28
+ params = parsed_url['params']
29
+
30
+ name = "tests a URL " + row[8]
31
+ it name do
32
+ data = Wiley.parse(path, params)
33
+ expect(data["online_identifier"]).to eq(row[0])
34
+ expect(data["doi"]).to eq(row[1])
35
+ expect(data["issue"]).to eq(row[2])
36
+ expect(data["vol"]).to eq(row[3])
37
+ expect(data["title_id"]).to eq(row[4])
38
+ expect(data["unit_id"]).to eq(row[5])
39
+ expect(data["rtype"]).to eq(row[6])
40
+ expect(data["mime"]).to eq(row[7])
41
+ end
42
+ end
24
43
  end
metadata CHANGED
@@ -1,24 +1,24 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-filter-ezproxy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dom Belcher
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-07 00:00:00.000000000 Z
11
+ date: 2018-02-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '1.60'
18
+ version: 1.6.0
19
19
  - - "<="
20
20
  - !ruby/object:Gem::Version
21
- version: '2.99'
21
+ version: 3.0.0
22
22
  name: logstash-core-plugin-api
23
23
  prerelease: false
24
24
  type: :runtime
@@ -26,10 +26,10 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '1.60'
29
+ version: 1.6.0
30
30
  - - "<="
31
31
  - !ruby/object:Gem::Version
32
- version: '2.99'
32
+ version: 3.0.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  requirement: !ruby/object:Gem::Requirement
35
35
  requirements:
@@ -56,22 +56,34 @@ files:
56
56
  - Gemfile
57
57
  - LICENSE
58
58
  - README.md
59
+ - lib/logstash/filters/cambridge.rb
59
60
  - lib/logstash/filters/dawsonera.rb
60
61
  - lib/logstash/filters/ebscohost.rb
61
62
  - lib/logstash/filters/emerald.rb
62
63
  - lib/logstash/filters/ezproxy.rb
63
64
  - lib/logstash/filters/ft.rb
64
65
  - lib/logstash/filters/gale.rb
66
+ - lib/logstash/filters/heinonline.rb
65
67
  - lib/logstash/filters/ieee.rb
66
68
  - lib/logstash/filters/jstor.rb
69
+ - lib/logstash/filters/lexis_webanalytics.rb
67
70
  - lib/logstash/filters/lexisnexis.rb
71
+ - lib/logstash/filters/myilibrary.rb
72
+ - lib/logstash/filters/oxford.rb
73
+ - lib/logstash/filters/proquest.rb
68
74
  - lib/logstash/filters/sage.rb
69
75
  - lib/logstash/filters/sciencedirect.rb
76
+ - lib/logstash/filters/scopus.rb
70
77
  - lib/logstash/filters/springer.rb
71
78
  - lib/logstash/filters/tandf.rb
79
+ - lib/logstash/filters/webofknowledge.rb
72
80
  - lib/logstash/filters/wiley.rb
81
+ - lib/logstash/helpers/mime_helper.rb
82
+ - lib/logstash/helpers/param_helper.rb
73
83
  - lib/logstash/helpers/url_parser.rb
74
84
  - logstash-filter-ezproxy.gemspec
85
+ - spec/filters/cambridge/cambridge.2013-10-28.csv
86
+ - spec/filters/cambridge/cambridge_spec.rb
75
87
  - spec/filters/dawsonera/dawsonera.2014-09-03.csv
76
88
  - spec/filters/dawsonera/dawsonera_spec.rb
77
89
  - spec/filters/ebscohost/ebscohost.2014-08-21.csv
@@ -83,21 +95,36 @@ files:
83
95
  - spec/filters/ft/ft_spec.rb
84
96
  - spec/filters/gale/gale.2016-05-11.csv
85
97
  - spec/filters/gale/gale_spec.rb
98
+ - spec/filters/heinonline/heinonline.2015-05-18.csv
99
+ - spec/filters/heinonline/heinonline_spec.rb
86
100
  - spec/filters/ieee/ieee.2015-04-15.csv
87
101
  - spec/filters/ieee/ieee_spec.rb
88
102
  - spec/filters/jstor/jstor.2013-10-03.csv
89
103
  - spec/filters/jstor/jstor_spec.rb
104
+ - spec/filters/lexis_webanalytics/lexis360.2017-04-28.csv
105
+ - spec/filters/lexis_webanalytics/lexis_webanalytics_spec.rb
90
106
  - spec/filters/lexisnexis/lexisnexis.2013-05-17.csv
91
107
  - spec/filters/lexisnexis/lexisnexis_spec.rb
108
+ - spec/filters/myilibrary/myilibrary.2018-02-09.csv
109
+ - spec/filters/myilibrary/myilibrary_spec.rb
110
+ - spec/filters/oxford/oxford.2018-02-15.csv
111
+ - spec/filters/oxford/oxford_spec.rb
112
+ - spec/filters/proquest/proquest.2018-02-09.csv
113
+ - spec/filters/proquest/proquest_spec.rb
92
114
  - spec/filters/sage/sage_spec.rb
93
115
  - spec/filters/sage/sagej.2016-12-05.csv
94
116
  - spec/filters/sciencedirect/sciencedirect_spec.rb
95
117
  - spec/filters/sciencedirect/sd.2013-01-09.csv
118
+ - spec/filters/scopus/scopus.2016-07-18.csv
119
+ - spec/filters/scopus/scopus_spec.rb
96
120
  - spec/filters/springer/springer.2013-01-31.csv
97
121
  - spec/filters/springer/springer_spec.rb
98
122
  - spec/filters/tandf/tandf.2015-03-25.csv
99
123
  - spec/filters/tandf/tandf_spec.rb
124
+ - spec/filters/webofknowledge/webofknowledge_spec.rb
125
+ - spec/filters/webofknowledge/wos.2017-01-13.csv
100
126
  - spec/filters/wiley/wiley.2013-04-15.csv
127
+ - spec/filters/wiley/wiley.2018-02-07.csv
101
128
  - spec/filters/wiley/wiley_spec.rb
102
129
  - spec/spec_helper.rb
103
130
  homepage:
@@ -127,6 +154,8 @@ signing_key:
127
154
  specification_version: 4
128
155
  summary: Write a short summary, because Rubygems requires one.
129
156
  test_files:
157
+ - spec/filters/cambridge/cambridge.2013-10-28.csv
158
+ - spec/filters/cambridge/cambridge_spec.rb
130
159
  - spec/filters/dawsonera/dawsonera.2014-09-03.csv
131
160
  - spec/filters/dawsonera/dawsonera_spec.rb
132
161
  - spec/filters/ebscohost/ebscohost.2014-08-21.csv
@@ -138,20 +167,35 @@ test_files:
138
167
  - spec/filters/ft/ft_spec.rb
139
168
  - spec/filters/gale/gale.2016-05-11.csv
140
169
  - spec/filters/gale/gale_spec.rb
170
+ - spec/filters/heinonline/heinonline.2015-05-18.csv
171
+ - spec/filters/heinonline/heinonline_spec.rb
141
172
  - spec/filters/ieee/ieee.2015-04-15.csv
142
173
  - spec/filters/ieee/ieee_spec.rb
143
174
  - spec/filters/jstor/jstor.2013-10-03.csv
144
175
  - spec/filters/jstor/jstor_spec.rb
176
+ - spec/filters/lexis_webanalytics/lexis360.2017-04-28.csv
177
+ - spec/filters/lexis_webanalytics/lexis_webanalytics_spec.rb
145
178
  - spec/filters/lexisnexis/lexisnexis.2013-05-17.csv
146
179
  - spec/filters/lexisnexis/lexisnexis_spec.rb
180
+ - spec/filters/myilibrary/myilibrary.2018-02-09.csv
181
+ - spec/filters/myilibrary/myilibrary_spec.rb
182
+ - spec/filters/oxford/oxford.2018-02-15.csv
183
+ - spec/filters/oxford/oxford_spec.rb
184
+ - spec/filters/proquest/proquest.2018-02-09.csv
185
+ - spec/filters/proquest/proquest_spec.rb
147
186
  - spec/filters/sage/sage_spec.rb
148
187
  - spec/filters/sage/sagej.2016-12-05.csv
149
188
  - spec/filters/sciencedirect/sciencedirect_spec.rb
150
189
  - spec/filters/sciencedirect/sd.2013-01-09.csv
190
+ - spec/filters/scopus/scopus.2016-07-18.csv
191
+ - spec/filters/scopus/scopus_spec.rb
151
192
  - spec/filters/springer/springer.2013-01-31.csv
152
193
  - spec/filters/springer/springer_spec.rb
153
194
  - spec/filters/tandf/tandf.2015-03-25.csv
154
195
  - spec/filters/tandf/tandf_spec.rb
196
+ - spec/filters/webofknowledge/webofknowledge_spec.rb
197
+ - spec/filters/webofknowledge/wos.2017-01-13.csv
155
198
  - spec/filters/wiley/wiley.2013-04-15.csv
199
+ - spec/filters/wiley/wiley.2018-02-07.csv
156
200
  - spec/filters/wiley/wiley_spec.rb
157
201
  - spec/spec_helper.rb