hdo-storting-importer 0.2.9 → 0.3.0

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.
@@ -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: