heremaps 0.1.0 → 0.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 513297b00624a565758af0a14a3e7621fc478e9a579035dd2fee2beec9288e2d
4
- data.tar.gz: 332da80fa8c3b3905e2becf224d4c9ea873222f846eb020a4dc01fb97c62dc49
3
+ metadata.gz: 1a8d47cb556d071e120a577256508549cf8d8eb3832eace8d3bb720568d03080
4
+ data.tar.gz: 9c627122af453922886bee09cdbf2f0415f93417905984041d889e6e2356ccc4
5
5
  SHA512:
6
- metadata.gz: 9cc9f57a1a4415a5986d153954665d1d8d1e5a26425b7507eb2669430707c00f267758b20028ca061c4f2e639eafce976e19f35226bdf20fbf51f24e004887c0
7
- data.tar.gz: 150f6c5c7a2e9c735fb7e7a1b6b59cca45a6b94cc580b30e038e8e096a7606011874ad09a5054ee2ee0730762029e4aeefc425e8c9671b9bf15873e9057f4d1b
6
+ metadata.gz: 1254781eeded79b909cc319afc43e88a53f5f91f6845bd94abdf8b2d486d22d02537742526fce09721fa7e7e5fbe4a1c1a77249d911dcfb131658a0b9371e777
7
+ data.tar.gz: d512d26140fe1090d4251191b9b8ec79ed57f3b1cbadeed77c02169da7ade0259965d6a003d3ff6cecd8b2f93f5394f06cd1b3800eca3d6dd83daac2d719031c
data/.gitignore CHANGED
@@ -11,3 +11,4 @@
11
11
  .rspec_status
12
12
  .idea
13
13
  .vscode
14
+ heremaps
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- heremaps (0.1.0)
4
+ heremaps (0.2.0)
5
5
  rest-client
6
6
 
7
7
  GEM
@@ -11,7 +11,7 @@ GEM
11
11
  backport (1.1.2)
12
12
  debase (0.2.4.1)
13
13
  debase-ruby_core_source (>= 0.10.2)
14
- debase-ruby_core_source (0.10.5)
14
+ debase-ruby_core_source (0.10.9)
15
15
  diff-lcs (1.3)
16
16
  domain_name (0.5.20190701)
17
17
  unf (>= 0.0.5, < 1.0.0)
@@ -19,16 +19,16 @@ GEM
19
19
  http-accept (1.7.0)
20
20
  http-cookie (1.0.3)
21
21
  domain_name (~> 0.5)
22
- jaro_winkler (1.5.3)
23
- mime-types (3.3)
22
+ jaro_winkler (1.5.4)
23
+ mime-types (3.3.1)
24
24
  mime-types-data (~> 3.2015)
25
- mime-types-data (3.2019.0904)
25
+ mime-types-data (3.2019.1009)
26
26
  mini_portile2 (2.4.0)
27
27
  netrc (0.11.0)
28
- nokogiri (1.10.4)
28
+ nokogiri (1.10.7)
29
29
  mini_portile2 (~> 2.4.0)
30
- parallel (1.17.0)
31
- parser (2.6.4.1)
30
+ parallel (1.19.1)
31
+ parser (2.7.0.2)
32
32
  ast (~> 2.4.0)
33
33
  rainbow (3.0.0)
34
34
  rake (10.5.0)
@@ -37,7 +37,7 @@ GEM
37
37
  http-cookie (>= 1.0.2, < 2.0)
38
38
  mime-types (>= 1.16, < 4.0)
39
39
  netrc (~> 0.8)
40
- reverse_markdown (1.3.0)
40
+ reverse_markdown (1.4.0)
41
41
  nokogiri
42
42
  rspec (3.8.0)
43
43
  rspec-core (~> 3.8.0)
@@ -45,17 +45,17 @@ GEM
45
45
  rspec-mocks (~> 3.8.0)
46
46
  rspec-core (3.8.2)
47
47
  rspec-support (~> 3.8.0)
48
- rspec-expectations (3.8.4)
48
+ rspec-expectations (3.8.6)
49
49
  diff-lcs (>= 1.2.0, < 2.0)
50
50
  rspec-support (~> 3.8.0)
51
- rspec-mocks (3.8.1)
51
+ rspec-mocks (3.8.2)
52
52
  diff-lcs (>= 1.2.0, < 2.0)
53
53
  rspec-support (~> 3.8.0)
54
- rspec-support (3.8.2)
55
- rubocop (0.74.0)
54
+ rspec-support (3.8.3)
55
+ rubocop (0.79.0)
56
56
  jaro_winkler (~> 1.5.1)
57
57
  parallel (~> 1.10)
58
- parser (>= 2.6)
58
+ parser (>= 2.7.0.1)
59
59
  rainbow (>= 2.2.2, < 4.0)
60
60
  ruby-progressbar (~> 1.7)
61
61
  unicode-display_width (>= 1.4.0, < 1.7)
@@ -75,18 +75,18 @@ GEM
75
75
  tilt (~> 2.0)
76
76
  yard (~> 0.9)
77
77
  thor (0.20.3)
78
- tilt (2.0.9)
78
+ tilt (2.0.10)
79
79
  unf (0.1.4)
80
80
  unf_ext
81
81
  unf_ext (0.0.7.6)
82
- unicode-display_width (1.6.0)
83
- yard (0.9.20)
82
+ unicode-display_width (1.6.1)
83
+ yard (0.9.24)
84
84
 
85
85
  PLATFORMS
86
86
  ruby
87
87
 
88
88
  DEPENDENCIES
89
- bundler (~> 1.17)
89
+ bundler (~> 2.1.4)
90
90
  debase (~> 0.2.4.1)
91
91
  heremaps!
92
92
  rake (~> 10.0)
@@ -95,4 +95,4 @@ DEPENDENCIES
95
95
  solargraph (~> 0.37.2)
96
96
 
97
97
  BUNDLED WITH
98
- 1.17.2
98
+ 2.1.4
data/README.md CHANGED
@@ -4,8 +4,9 @@ This `ruby gem` provide the functionality to integrate with HERE Maps API, as de
4
4
 
5
5
  APIs Currently Integrated
6
6
 
7
- - SEARCH (PLACES) AND GEOCODING APIs
8
- - ROUTING APIs
7
+ - Places REST API
8
+ - GEOCODING REST APIs
9
+ - ROUTING REST APIs
9
10
 
10
11
  ## Installation
11
12
 
@@ -27,12 +28,12 @@ cmd> gem install heremaps
27
28
  ```
28
29
  ## Usage
29
30
 
30
- To initialize the Heremaps library, you must generate the Heremaps APP ID and APP CODE. And set it as shown below
31
+ To initialize the Heremaps library, you must generate the Heremaps Api Key and domain (for prod and test). And set it as shown below
31
32
  ```ruby
32
33
  require "heremaps"
33
34
  ...
34
- Heremaps.app_id = "<app_id>"
35
- Heremaps.app_code = "<app_code>"
35
+ Heremaps.apiKey = "<apiKey>"
36
+ Heremaps.url_domain = "ls.hereapi.com"
36
37
  ```
37
38
  ### Calling Heremap API
38
39
 
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.require_paths = ["lib"]
31
31
 
32
32
  spec.add_runtime_dependency "rest-client"
33
- spec.add_development_dependency "bundler", "~> 1.17"
33
+ spec.add_development_dependency "bundler", "~> 2.1.4"
34
34
  spec.add_development_dependency "debase", "~> 0.2.4.1"
35
35
  spec.add_development_dependency "rake", "~> 10.0"
36
36
  spec.add_development_dependency "rspec", "~> 3.8.0"
@@ -28,8 +28,4 @@ module Heremaps
28
28
  require "heremaps/resources/routing/calculate_matrix"
29
29
  require "heremaps/resources/routing/get_route"
30
30
  require "heremaps/resources/routing/get_routing_zones"
31
-
32
- class << self
33
- attr_accessor :app_id, :app_code, :env
34
- end
35
31
  end
@@ -1,11 +1,10 @@
1
1
  module Heremaps
2
2
  class Base
3
- attr_accessor :method_name, :base_url, :test_url, :path
3
+ attr_accessor :method_name, :service, :path
4
4
 
5
5
  def request_url(format: "json")
6
6
  format ||= "json"
7
- url = (Heremaps.env == "test") ? test_url : base_url
8
- url = File.join(url, path, "#{method_name}.#{format}")
7
+ url = File.join("https://", service + "." + Heremaps::DOMAIN, path, "#{method_name}.#{format}")
9
8
  url
10
9
  end
11
10
 
@@ -15,7 +14,7 @@ module Heremaps
15
14
  end
16
15
 
17
16
  def prepare_the_request(options = {})
18
- options = options.merge(:app_id => Heremaps.app_id, :app_code => Heremaps.app_code)
17
+ options = options.merge(:apiKey => Heremaps::API_KEY)
19
18
  options
20
19
  end
21
20
 
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Geocoder
3
3
  class Geocode < Heremaps::Base
4
- BASE_URL = "https://geocoder.api.here.com".freeze
5
- TEST_URL = "https://geocoder.cit.api.here.com".freeze
4
+ SERVICE = "geocoder".freeze
6
5
  PATH = "/6.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "geocode".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Geocoder
3
3
  class Landmark < Heremaps::Base
4
- BASE_URL = "https://geocoder.api.here.com".freeze
5
- TEST_URL = "http://geocoder.cit.api.here.com".freeze
4
+ SERVICE = "geocoder".freeze
6
5
  PATH = "/6.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "search".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Geocoder
3
3
  class MultiReverse < Heremaps::Base
4
- BASE_URL = "https://reverse.geocoder.api.here.com".freeze
5
- TEST_URL = "http://reverse.geocoder.cit.api.here.com".freeze
4
+ SERVICE = "reverse.geocoder".freeze
6
5
  PATH = "/6.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "multi-reversegeocode".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Geocoder
3
3
  class Reverse < Heremaps::Base
4
- BASE_URL = "https://reverse.geocoder.api.here.com".freeze
5
- TEST_URL = "http://reverse.geocoder.cit.api.here.com".freeze
4
+ SERVICE = "reverse.geocoder".freeze
6
5
  PATH = "/6.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "reversegeocode".freeze # getroute as default method.
13
11
  end
@@ -2,8 +2,7 @@ module Heremaps
2
2
  module Places
3
3
  class Base < Heremaps::Base
4
4
  def request_url
5
- url = (Heremaps.env == "test") ? test_url : base_url
6
- url = File.join(url, path, method_name.to_s)
5
+ url = File.join("https://", service + "." + Heremaps::DOMAIN, path, method_name.to_s)
7
6
  url
8
7
  end
9
8
 
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Places
3
3
  class Categories < Base
4
- BASE_URL = "https://places.api.here.com/places".freeze
5
- TEST_URL = "https://places.cit.api.here.com".freeze
6
- PATH = "/v1/".freeze
4
+ SERVICE = "places".freeze
5
+ PATH = "/places/v1/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "categories/places".freeze # getroute as default method.
13
11
  end
@@ -2,13 +2,11 @@ module Heremaps
2
2
  module Places
3
3
  module Discover
4
4
  class Explore < Base
5
- BASE_URL = "https://places.api.here.com/places".freeze
6
- TEST_URL = "https://places.cit.api.here.com".freeze
7
- PATH = "/v1/".freeze
5
+ SERVICE = "places".freeze
6
+ PATH = "/places/v1/".freeze
8
7
 
9
8
  def initialize
10
- @base_url = BASE_URL
11
- @test_url = TEST_URL
9
+ @service = SERVICE
12
10
  @path = PATH
13
11
  @method_name = "discover/explore".freeze # getroute as default method.
14
12
  end
@@ -2,13 +2,11 @@ module Heremaps
2
2
  module Places
3
3
  module Discover
4
4
  class Here < Base
5
- BASE_URL = "https://places.api.here.com/places".freeze
6
- TEST_URL = "https://places.cit.api.here.com".freeze
7
- PATH = "/v1/".freeze
5
+ SERVICE = "places".freeze
6
+ PATH = "/places/v1/".freeze
8
7
 
9
8
  def initialize
10
- @base_url = BASE_URL
11
- @test_url = TEST_URL
9
+ @service = SERVICE
12
10
  @path = PATH
13
11
  @method_name = "discover/here".freeze # getroute as default method.
14
12
  end
@@ -2,13 +2,11 @@ module Heremaps
2
2
  module Places
3
3
  module Discover
4
4
  class Search < Base
5
- BASE_URL = "https://places.api.here.com/places".freeze
6
- TEST_URL = "https://places.cit.api.here.com".freeze
7
- PATH = "/v1/".freeze
5
+ SERVICE = "places".freeze
6
+ PATH = "/places/v1/".freeze
8
7
 
9
8
  def initialize
10
- @base_url = BASE_URL
11
- @test_url = TEST_URL
9
+ @service = SERVICE
12
10
  @path = PATH
13
11
  @method_name = "discover/search".freeze # getroute as default method.
14
12
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Places
3
3
  class Suggest < Base
4
- BASE_URL = "https://places.api.here.com/places".freeze
5
- TEST_URL = "https://places.cit.api.here.com".freeze
6
- PATH = "/v1/".freeze
4
+ SERVICE = "places".freeze
5
+ PATH = "/places/v1/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "suggest".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,12 @@
1
1
  module Heremaps
2
2
  module Routing
3
3
  class Calculate < Heremaps::Base
4
- BASE_URL = "https://route.api.here.com/routing".freeze
5
- TEST_URL = "https://route.cit.api.here.com/routing".freeze
6
- PATH = "/7.2/".freeze
4
+ # route.ls.hereapi.com/routing/7.2/calculateroute.json
5
+ SERVICE = "route".freeze
6
+ PATH = "/routing/7.2/".freeze
7
7
 
8
8
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
9
+ @service = SERVICE
11
10
  @path = PATH
12
11
  @method_name = "calculateroute".freeze # getroute as default method.
13
12
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Routing
3
3
  class CalculateIsoline < Heremaps::Base
4
- BASE_URL = "https://isoline.route.api.here.com/routing".freeze
5
- TEST_URL = "https://isoline.cit.route.api.here.com/routing".freeze
6
- PATH = "/7.2/".freeze
4
+ SERVICE = "isoline.route".freeze
5
+ PATH = "/routing/7.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "calculateisoline".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Routing
3
3
  class CalculateMatrix < Heremaps::Base
4
- BASE_URL = "https://matrix.route.api.here.com/routing".freeze
5
- TEST_URL = "https://matrix.cit.route.api.here.com/routing".freeze
6
- PATH = "/7.2/".freeze
4
+ SERVICE = "matrix.route".freeze
5
+ PATH = "/routing/7.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "calculatematrix".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Routing
3
3
  class GetRoute < Heremaps::Base
4
- BASE_URL = "https://route.api.here.com/routing".freeze
5
- TEST_URL = "https://route.cit.api.here.com/routing".freeze
6
- PATH = "/7.2/".freeze
4
+ SERVICE = "route".freeze
5
+ PATH = "/routing/7.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "getroute".freeze # getroute as default method.
13
11
  end
@@ -1,13 +1,11 @@
1
1
  module Heremaps
2
2
  module Routing
3
3
  class GetRouteZones < Heremaps::Base
4
- BASE_URL = "https://route.api.here.com/routing".freeze
5
- TEST_URL = "https://route.cit.api.here.com/routing".freeze
6
- PATH = "/7.2/".freeze
4
+ SERVICE = "route".freeze
5
+ PATH = "/routing/7.2/".freeze
7
6
 
8
7
  def initialize
9
- @base_url = BASE_URL
10
- @test_url = TEST_URL
8
+ @service = SERVICE
11
9
  @path = PATH
12
10
  @method_name = "getroutingzones".freeze # getroute as default method.
13
11
  end
@@ -1,3 +1,5 @@
1
1
  module Heremaps
2
- VERSION = "0.1.0".freeze
2
+ VERSION = "0.2.0".freeze
3
+ API_KEY = ENV["HEREMAPS_API_KEY"] || "NOT_PROVIDED"
4
+ DOMAIN = ENV["HEREMAPS_DOMAIN"] || "ls.hereapi.com"
3
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heremaps
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dheeraj (DJ) Agrawal
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-24 00:00:00.000000000 Z
11
+ date: 2020-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.17'
33
+ version: 2.1.4
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.17'
40
+ version: 2.1.4
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: debase
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -126,8 +126,6 @@ files:
126
126
  - LICENSE.txt
127
127
  - README.md
128
128
  - Rakefile
129
- - bin/console
130
- - bin/setup
131
129
  - heremaps.gemspec
132
130
  - lib/heremaps.rb
133
131
  - lib/heremaps/resources/base.rb
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "bundler/setup"
4
- require "heremaps"
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(__FILE__)
data/bin/setup DELETED
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
4
- set -vx
5
-
6
- bundle install
7
-
8
- # Do any other automated setup that you need to do here