ea-area_lookup 0.1.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.
- checksums.yaml +7 -0
- data/.codeclimate.yml +22 -0
- data/.gitignore +23 -0
- data/.rspec +1 -0
- data/.simplecov +8 -0
- data/.travis.yml +25 -0
- data/Gemfile +8 -0
- data/LICENSE +8 -0
- data/README.md +73 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/ea-area_lookup.gemspec +34 -0
- data/lib/ea/area_lookup.rb +12 -0
- data/lib/ea/area_lookup/configuration.rb +19 -0
- data/lib/ea/area_lookup/coordinates.rb +18 -0
- data/lib/ea/area_lookup/errors.rb +7 -0
- data/lib/ea/area_lookup/finders.rb +71 -0
- data/lib/ea/area_lookup/logger.rb +21 -0
- data/lib/ea/area_lookup/version.rb +5 -0
- metadata +190 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 548a57db3114a3cc09e50835c6aee5db409a7502
|
4
|
+
data.tar.gz: 65e4bf7c47eb3e67437bcf1561233a004358468d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 94d7677a81b2fc5528a460b07c110bf61a56acd7184fec2771a9e93b402ae66a0514491ed8c9da9f2788e607f05a250597151928325d4d74ef3947cdcd1d1ec2
|
7
|
+
data.tar.gz: 2b8ac1b2bb67326f6dff100ba092841add29a9582323ae77a816eaa3aaefb65ae70b34d2c0ab7eb568d2ce79a407c0b84d182d1ceddb3dbf41b1ab621c3a0043
|
data/.codeclimate.yml
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
---
|
2
|
+
engines:
|
3
|
+
duplication:
|
4
|
+
enabled: true
|
5
|
+
config:
|
6
|
+
languages:
|
7
|
+
- ruby
|
8
|
+
- javascript
|
9
|
+
fixme:
|
10
|
+
enabled: true
|
11
|
+
rubocop:
|
12
|
+
enabled: true
|
13
|
+
brakeman:
|
14
|
+
enabled: false
|
15
|
+
rubymotion:
|
16
|
+
enabled: true
|
17
|
+
ratings:
|
18
|
+
paths:
|
19
|
+
- "**.module"
|
20
|
+
- "**.rb"
|
21
|
+
exclude_paths:
|
22
|
+
- spec/
|
data/.gitignore
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
/.git-hooks/pre_commit/il8n_missing.rb
|
2
|
+
/.git-hooks/pre_commit/il8n_unused.rb
|
3
|
+
/.git-hooks/pre_commit/rspec_focus_check.rb
|
4
|
+
/.overcommit.yml
|
5
|
+
/.overcommit_gems.rb
|
6
|
+
/.overcommit_gems.rb.lock
|
7
|
+
/.rubocop.yml
|
8
|
+
/rubocop/gds-ruby-styleguide.yml
|
9
|
+
/rubocop/other-lint.yml
|
10
|
+
/rubocop/other-rails.yml
|
11
|
+
/rubocop/other-style.yml
|
12
|
+
/.bundle/
|
13
|
+
/.yardoc
|
14
|
+
/Gemfile.lock
|
15
|
+
/_yardoc/
|
16
|
+
/coverage/
|
17
|
+
/doc/
|
18
|
+
/pkg/
|
19
|
+
/spec/reports/
|
20
|
+
/tmp/
|
21
|
+
.DS_Store
|
22
|
+
.byebug_history
|
23
|
+
.rspec-local
|
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--color
|
data/.simplecov
ADDED
@@ -0,0 +1,8 @@
|
|
1
|
+
SimpleCov.start "rails" do
|
2
|
+
# any custom configs like groups and filters can be here at a central place
|
3
|
+
|
4
|
+
# The enrollment builder controller is just used to create dummy records when
|
5
|
+
# working in development as a time saver. We are happy there is no test coverage
|
6
|
+
# for it.
|
7
|
+
add_filter "lib/ea/area_lookup/version.rb"
|
8
|
+
end
|
data/.travis.yml
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
language: ruby
|
2
|
+
cache: bundler
|
3
|
+
|
4
|
+
rvm:
|
5
|
+
- 2.2.3
|
6
|
+
|
7
|
+
before_install: gem install bundler -v 1.11.2
|
8
|
+
|
9
|
+
# Have this option to stop travis-ci building twice. Currently we have travis set to build both
|
10
|
+
# PR's and pushes. However this means when we push to a PR we have to wait for Travis to finish
|
11
|
+
# 2 builds. If we unticked 'pushes' when the PR was finally merged that would not be built. The
|
12
|
+
# brute force approach would be to untick build PR's and just build all pushes. We instead have
|
13
|
+
# gone with the approach outlined here http://stackoverflow.com/a/31882307
|
14
|
+
branches:
|
15
|
+
only:
|
16
|
+
- master
|
17
|
+
|
18
|
+
# This section was added as per https://docs.travis-ci.com/user/code-climate/
|
19
|
+
# To protect our codeclimate stats rather than adding the Codeclimate API key for ea-area_lookup
|
20
|
+
# in the open we used this guide https://docs.travis-ci.com/user/encryption-keys/ to encryt the
|
21
|
+
# value. Essentially install travis gem, then run `travis encrypt <my_code_climate_api_key>`
|
22
|
+
addons:
|
23
|
+
code_climate:
|
24
|
+
repo_token:
|
25
|
+
secure: "DsWI1kzx5RIfB/QQysErQTW94FF6v512q3vqFChSXaAViJA6LgU9coBRiLtZ3RyE0YcvPzu0B1q/fqR4sDq4xG1L6VMY2PlF4ZI57AaPa1WFmzT9mCAhYCbpYKXuMySCoS4YvoHrHgwd30M0RYmiRtZY75Olmbd1PsbbZGfnIGwcEchujHb6oQ6WKgEAqq6zvHHf5QM18oSm4ZCFSYijGU7BvxMsLTToFuPnndGomWHCfMDSyBkC2wt5pmfdsjbirrsPPnFbYxCOCxGk77WWw9G+swUZclgUiUn1q2tSFgri27zufbFuGknDWf9HMiMqzgfCO8kut/78CqRjt5BtUm2otJLEhlpmL4t9rqDUKl/hmc+asxfoj04qP1cNRmjZf0QYbT4rFlsFlcNgYNcZcLf66ry9c8WXcpV6qvKukaT9Xyj1/KAVXDqO1EUd1oEBIoKnILW7H4Zhbjhu6lq2ga47Wux0IrMdtHE2RwjdtCxwfhkuUcblfnPpjW8tXeDND0nE/Se45rXZ/YwojZSeqyZCvZbcXMOvggzRQeAgi02sruw33oZU6W/f8VOjC5VrB1KEHm4j0n21dI6ENu0D+tbjBIW0TvI47hAuV/R1v7kHJVbSIcAedtxWt87mSdyQkOukCVSYHMOKJHY6T1EtZlK5V9RHDrHD8KIMeJV/Dx0="
|
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,8 @@
|
|
1
|
+
The Open Government Licence (OGL) Version 3
|
2
|
+
|
3
|
+
Copyright (c) 2014 Environment Agency
|
4
|
+
|
5
|
+
This source code is licensed under the Open Government Licence v3.0. To view this
|
6
|
+
licence, visit www.nationalarchives.gov.uk/doc/open-government-licence/version/3
|
7
|
+
or write to the Information Policy Team, The National Archives, Kew, Richmond,
|
8
|
+
Surrey, TW9 4DU.
|
data/README.md
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
# EA::AreaLookup
|
2
|
+
|
3
|
+
[](https://travis-ci.org/EnvironmentAgency/ea-area_lookup)
|
4
|
+
[](https://codeclimate.com/github/EnvironmentAgency/ea-area_lookup)
|
5
|
+
[](https://codeclimate.com/github/EnvironmentAgency/ea-area_lookup/coverage)
|
6
|
+
|
7
|
+
This ruby gem provides a means of looking up the Environment Agency Administrative Area (e.g. 'Wessex')
|
8
|
+
for a given easting and northing. It wraps an API designed for this purpose.
|
9
|
+
|
10
|
+
## Installation
|
11
|
+
|
12
|
+
Add this line to your application's Gemfile
|
13
|
+
|
14
|
+
```ruby
|
15
|
+
gem 'ea-area_lookup'
|
16
|
+
```
|
17
|
+
|
18
|
+
And then update your dependencies by calling
|
19
|
+
|
20
|
+
```bash
|
21
|
+
bundle install
|
22
|
+
```
|
23
|
+
|
24
|
+
## Usage
|
25
|
+
|
26
|
+
### Rails
|
27
|
+
|
28
|
+
Create an intializer e.g. `config/initializers/area_lookup.rb`
|
29
|
+
|
30
|
+
```ruby
|
31
|
+
EA::AreaLookup.configure do |config|
|
32
|
+
config.administrative_area_api_url = "http://admin-area-api-base-url"
|
33
|
+
end
|
34
|
+
```
|
35
|
+
|
36
|
+
Now you can do the following
|
37
|
+
|
38
|
+
```ruby
|
39
|
+
coords = EA::AreaLookup::Coordinates.new(easting: 123, northing: 456)
|
40
|
+
(or EA::AreaLookup::Coordinates.new(x: 123, y: 456))
|
41
|
+
result = EA::AreaLookup.find_by_coordinates(coords)
|
42
|
+
p result
|
43
|
+
=> {:area_id=>"XX", :code=>"WESSEX", :area_name=>"Wessex", :short_name=>"Wessex", :long_name=>"Wessex"}
|
44
|
+
```
|
45
|
+
|
46
|
+
Note that the `Coordinates` class accepts x and y synonymously with easting and northing.
|
47
|
+
|
48
|
+
## Development
|
49
|
+
|
50
|
+
After checking out the repo, run `bin/setup` to install dependencies.
|
51
|
+
Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
52
|
+
|
53
|
+
## Contributing to this project
|
54
|
+
|
55
|
+
If you have an idea you'd like to contribute please log an issue.
|
56
|
+
|
57
|
+
All contributions should be submitted via a pull request.
|
58
|
+
|
59
|
+
## License
|
60
|
+
|
61
|
+
THIS INFORMATION IS LICENSED UNDER THE CONDITIONS OF THE OPEN GOVERNMENT LICENCE found at:
|
62
|
+
|
63
|
+
http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3
|
64
|
+
|
65
|
+
The following attribution statement MUST be cited in your products and applications when using this information.
|
66
|
+
|
67
|
+
>Contains public sector information licensed under the Open Government license v3
|
68
|
+
|
69
|
+
### About the license
|
70
|
+
|
71
|
+
The Open Government Licence (OGL) was developed by the Controller of Her Majesty's Stationery Office (HMSO) to enable information providers in the public sector to license the use and re-use of their information under a common open licence.
|
72
|
+
|
73
|
+
It is designed to encourage use and re-use of information freely and flexibly, with only a few conditions.
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "ea/area_lookup"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path("../lib", __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require "ea/area_lookup/version"
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "ea-area_lookup"
|
8
|
+
spec.version = EA::AreaLookup::VERSION
|
9
|
+
spec.authors = ["Digital Services Team, EnvironmentAgency"]
|
10
|
+
spec.email = ["dst@environment-agency.gov.uk"]
|
11
|
+
|
12
|
+
spec.summary = "Provides a means of looking-up Environment Agency administrative areas."
|
13
|
+
spec.description = "Provides a means of looking-up an Environment Agency administrative area "\
|
14
|
+
"using the co-ordinates of any point in England."
|
15
|
+
spec.homepage = "https://github.com/EnvironmentAgency"
|
16
|
+
spec.license = "The Open Government Licence (OGL) Version 3"
|
17
|
+
|
18
|
+
spec.required_ruby_version = '>= 2.2'
|
19
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
20
|
+
spec.bindir = "exe"
|
21
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
|
+
spec.require_paths = ["lib"]
|
23
|
+
|
24
|
+
spec.add_dependency "nokogiri", "~> 1.3"
|
25
|
+
|
26
|
+
spec.add_development_dependency "bundler", "~> 1.11"
|
27
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
28
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
29
|
+
spec.add_development_dependency "byebug"
|
30
|
+
spec.add_development_dependency "vcr", "~> 3.0"
|
31
|
+
spec.add_development_dependency "webmock", "~> 1.24"
|
32
|
+
spec.add_development_dependency "shoulda-matchers", "~> 3.1"
|
33
|
+
spec.add_development_dependency "simplecov"
|
34
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require "ea/area_lookup/version"
|
2
|
+
require "ea/area_lookup/configuration"
|
3
|
+
require "ea/area_lookup/errors"
|
4
|
+
require "ea/area_lookup/logger"
|
5
|
+
require "ea/area_lookup/coordinates"
|
6
|
+
require "ea/area_lookup/finders"
|
7
|
+
|
8
|
+
module EA
|
9
|
+
module AreaLookup
|
10
|
+
extend Finders
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module EA
|
2
|
+
module AreaLookup
|
3
|
+
class Configuration
|
4
|
+
attr_accessor :administrative_area_api_url
|
5
|
+
end
|
6
|
+
|
7
|
+
def self.config
|
8
|
+
@config ||= Configuration.new
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.configure
|
12
|
+
yield config
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.reset
|
16
|
+
@config = Configuration.new
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module EA
|
2
|
+
module AreaLookup
|
3
|
+
class Coordinates
|
4
|
+
attr_accessor :easting, :northing
|
5
|
+
alias x easting
|
6
|
+
alias y northing
|
7
|
+
|
8
|
+
def initialize(easting:, northing:)
|
9
|
+
@easting = easting
|
10
|
+
@northing = northing
|
11
|
+
end
|
12
|
+
|
13
|
+
def valid?
|
14
|
+
easting && northing
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require "nokogiri"
|
2
|
+
require "open-uri"
|
3
|
+
|
4
|
+
module EA
|
5
|
+
module AreaLookup
|
6
|
+
module Finders
|
7
|
+
def find_by_coordinates(coords)
|
8
|
+
validate_config!
|
9
|
+
return nil unless coords && coords.valid?
|
10
|
+
xml = fetch_admin_area_from_api(coords)
|
11
|
+
parse_xml(xml)
|
12
|
+
end
|
13
|
+
|
14
|
+
private
|
15
|
+
|
16
|
+
DEFAULT_API_PARAMS = {
|
17
|
+
SERVICE: "WFS",
|
18
|
+
INTERFACE: "ENVIRONMENTWFS",
|
19
|
+
VERSION: "1.1.0",
|
20
|
+
REQUEST: "GetFeature",
|
21
|
+
MSVER: 6,
|
22
|
+
SRS: "EPSG:27700",
|
23
|
+
TYPENAME: "ea-wfs-area_public_face_inspire",
|
24
|
+
propertyName: "long_name,short_name,code,area_id,area_name",
|
25
|
+
Filter: ""
|
26
|
+
}.freeze
|
27
|
+
|
28
|
+
def api_url
|
29
|
+
EA::AreaLookup.config.administrative_area_api_url
|
30
|
+
end
|
31
|
+
|
32
|
+
def validate_config!
|
33
|
+
return if api_url
|
34
|
+
raise EA::AreaLookup::InvalidConfigError, "Missing administrative_area_api_url"
|
35
|
+
end
|
36
|
+
|
37
|
+
def fetch_admin_area_from_api(coords)
|
38
|
+
params = DEFAULT_API_PARAMS.merge(Filter: "(#{filter_xml(coords)})")
|
39
|
+
full_url = %(#{api_url}?#{params.map { |k, v| "#{k}=#{v}" }.join('&')})
|
40
|
+
open full_url, proxy: ENV["http_proxy"]
|
41
|
+
rescue => e
|
42
|
+
raise EA::AreaLookup::ApiConnectionError,
|
43
|
+
"Failed with error #{e.inspect} trying to GET #{full_url}"
|
44
|
+
end
|
45
|
+
|
46
|
+
def filter_xml(coords)
|
47
|
+
"<Filter><Intersects>" \
|
48
|
+
"<PropertyName>Geometry</PropertyName>" \
|
49
|
+
"<gml:Point><gml:coordinates>#{coords.easting},#{coords.northing}</gml:coordinates></gml:Point>" \
|
50
|
+
"</Intersects></Filter>"
|
51
|
+
end
|
52
|
+
|
53
|
+
def parse_xml(response)
|
54
|
+
xml = Nokogiri::XML response
|
55
|
+
validate_xml(xml)
|
56
|
+
|
57
|
+
result = %i(area_id code area_name short_name long_name).each_with_object({}) do |path, hash|
|
58
|
+
hash[path] = xml.xpath("//gml:featureMember/ms:ea-wfs-area_public_face_inspire/ms:#{path}").text
|
59
|
+
end
|
60
|
+
result.tap { |h| EA::AreaLookup.logger.debug(h) }
|
61
|
+
end
|
62
|
+
|
63
|
+
def validate_xml(xml)
|
64
|
+
if xml.namespaces["xmlns:ows"] && xml.xpath("//ows:Exception").count > 0
|
65
|
+
raise EA::AreaLookup::ApiInvalidRequestError,
|
66
|
+
"API returned an exception: #{xml.text && xml.text.strip}"
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# A consumer can hook into logging like so:
|
2
|
+
# EA::AreaLookup.logger = Rails.logger
|
3
|
+
# or to silence logging unless there are errors for example:
|
4
|
+
# EA::AreaLookup.logger.level = Logger::ERROR
|
5
|
+
#
|
6
|
+
require "logger"
|
7
|
+
|
8
|
+
module EA
|
9
|
+
module AreaLookup
|
10
|
+
class << self
|
11
|
+
attr_writer :logger
|
12
|
+
|
13
|
+
def logger
|
14
|
+
@logger ||= Logger.new($stdout).tap do |log|
|
15
|
+
log.progname = name
|
16
|
+
log.level = Logger::DEBUG
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
metadata
ADDED
@@ -0,0 +1,190 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ea-area_lookup
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Digital Services Team, EnvironmentAgency
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-05-29 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: nokogiri
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.11'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.11'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '10.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '10.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '3.0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: byebug
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: vcr
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '3.0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '3.0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: webmock
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '1.24'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '1.24'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: shoulda-matchers
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '3.1'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '3.1'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: simplecov
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
description: Provides a means of looking-up an Environment Agency administrative area
|
140
|
+
using the co-ordinates of any point in England.
|
141
|
+
email:
|
142
|
+
- dst@environment-agency.gov.uk
|
143
|
+
executables: []
|
144
|
+
extensions: []
|
145
|
+
extra_rdoc_files: []
|
146
|
+
files:
|
147
|
+
- ".codeclimate.yml"
|
148
|
+
- ".gitignore"
|
149
|
+
- ".rspec"
|
150
|
+
- ".simplecov"
|
151
|
+
- ".travis.yml"
|
152
|
+
- Gemfile
|
153
|
+
- LICENSE
|
154
|
+
- README.md
|
155
|
+
- Rakefile
|
156
|
+
- bin/console
|
157
|
+
- bin/setup
|
158
|
+
- ea-area_lookup.gemspec
|
159
|
+
- lib/ea/area_lookup.rb
|
160
|
+
- lib/ea/area_lookup/configuration.rb
|
161
|
+
- lib/ea/area_lookup/coordinates.rb
|
162
|
+
- lib/ea/area_lookup/errors.rb
|
163
|
+
- lib/ea/area_lookup/finders.rb
|
164
|
+
- lib/ea/area_lookup/logger.rb
|
165
|
+
- lib/ea/area_lookup/version.rb
|
166
|
+
homepage: https://github.com/EnvironmentAgency
|
167
|
+
licenses:
|
168
|
+
- The Open Government Licence (OGL) Version 3
|
169
|
+
metadata: {}
|
170
|
+
post_install_message:
|
171
|
+
rdoc_options: []
|
172
|
+
require_paths:
|
173
|
+
- lib
|
174
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
175
|
+
requirements:
|
176
|
+
- - ">="
|
177
|
+
- !ruby/object:Gem::Version
|
178
|
+
version: '2.2'
|
179
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
180
|
+
requirements:
|
181
|
+
- - ">="
|
182
|
+
- !ruby/object:Gem::Version
|
183
|
+
version: '0'
|
184
|
+
requirements: []
|
185
|
+
rubyforge_project:
|
186
|
+
rubygems_version: 2.4.8
|
187
|
+
signing_key:
|
188
|
+
specification_version: 4
|
189
|
+
summary: Provides a means of looking-up Environment Agency administrative areas.
|
190
|
+
test_files: []
|