class EzproxyProviders::Oxford
Public Class Methods
parse(path, params)
click to toggle source
# File lib/logstash/filters/ezproxy_providers/oxford.rb, line 4 def self.parse (path, params) data = { "provider" => "oxford" } if (match = /\/view\/([0-9\.]+\/[a-z0-9\.\/\:]+)\/(.+?)(-([a-z][\-a-z0-9]+))?$/i.match(path)) data['doi'] = match[1] data['title_id'] = match[2] data['unit_id'] = match[2] if (match[4]) match4 = match[4].downcase.split("-") case match4[0] when "chapter" data['rtype'] = "BOOK_CHAPTER" when "bibliography" data['rtype'] = "BIBLIOGRAPHY" when "indexlist" data['rtype'] = 'TOC' end else data['rtype'] = 'BOOK' end if params.key?('print') && !params['print'][0].nil? data['mime'] = params['print'][0].upcase end elsif (match = /\/doc\/([0-9\.]+\/[a-z0-9\.\/\:]+)\/.+/i.match(path)) data['doi'] = match[1] end return data end