hdo-storting-importer 0.2.9 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -19,7 +19,8 @@ Gem::Specification.new do |gem|
19
19
  gem.add_runtime_dependency "nokogiri"
20
20
  gem.add_runtime_dependency "aruba"
21
21
  gem.add_runtime_dependency "rake"
22
- gem.add_runtime_dependency "rest-client"
22
+ gem.add_runtime_dependency "faraday"
23
+ gem.add_runtime_dependency "net-http-persistent"
23
24
  gem.add_runtime_dependency "unicode_utils"
24
25
  gem.add_runtime_dependency "multi_json"
25
26
  gem.add_runtime_dependency "yajl-ruby"
@@ -7,14 +7,14 @@ module Hdo
7
7
  new "http://data.stortinget.no"
8
8
  end
9
9
 
10
- def initialize(url_or_resource)
11
- @resource = case url_or_resource
12
- when RestClient::Resource
13
- url_or_resource
14
- when URI
15
- RestClient::Resource.new(url_or_resource)
16
- when String
17
- RestClient::Resource.new(URI.parse(url_or_resource))
10
+ def initialize(connection_or_url)
11
+ @connection = case connection_or_url
12
+ when Faraday::Connection
13
+ connection_or_url
14
+ when String, URI
15
+ Faraday.new(:url => connection_or_url.to_s) do |faraday|
16
+ faraday.adapter :net_http_persistent
17
+ end
18
18
  else
19
19
  raise ArgumentError, "invalid argument #{url_or_resource.inspect}"
20
20
  end
@@ -81,10 +81,12 @@ module Hdo
81
81
  private
82
82
 
83
83
  def fetch(path)
84
- sub_resource = @resource[path]
85
- Hdo::StortingImporter.logger.info "parsing #{sub_resource}"
84
+ Hdo::StortingImporter.logger.info "parsing #{path}"
85
+ response = @connection.get(path) do |request|
86
+ request.headers['User-Agent'] = USER_AGENT
87
+ end
86
88
 
87
- parse sub_resource.get(:user_agent => USER_AGENT)
89
+ parse response.body
88
90
  end
89
91
 
90
92
  end
@@ -78,7 +78,10 @@ module Hdo
78
78
  end
79
79
 
80
80
  clean_invalid_unicode = lambda do |str|
81
- str.gsub("\u00c5\u030a", 'Å').gsub("\u00e5\u030a", 'å')
81
+ str.gsub("\u00c5\u030a", 'Å').
82
+ gsub("\u00e5\u030a", 'å').
83
+ gsub("\u0041\u030a", 'Å').
84
+ gsub("\u0061\u030a", 'å')
82
85
  end
83
86
 
84
87
  promise = new external_id,
@@ -1,5 +1,5 @@
1
1
  module Hdo
2
2
  module StortingImporter
3
- VERSION = "0.2.9"
3
+ VERSION = "0.3.0"
4
4
  end
5
5
  end
@@ -1,5 +1,6 @@
1
1
  require 'nokogiri'
2
- require 'restclient'
2
+ require 'faraday'
3
+ require 'net/http/persistent'
3
4
  require 'tempfile'
4
5
  require 'pathname'
5
6
  require 'open-uri'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hdo-storting-importer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.9
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-06 00:00:00.000000000 Z
12
+ date: 2012-10-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: builder
@@ -76,7 +76,23 @@ dependencies:
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  - !ruby/object:Gem::Dependency
79
- name: rest-client
79
+ name: faraday
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: net-http-persistent
80
96
  requirement: !ruby/object:Gem::Requirement
81
97
  none: false
82
98
  requirements: