grape_ape_rails 0.9.9 → 0.9.10

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
  SHA1:
3
- metadata.gz: 868316e8c7b278e149b09a6adb90539a8c0c2f12
4
- data.tar.gz: 147de2a040e11cac51644fda13acb0ee0e3c31af
3
+ metadata.gz: b1240d678239c0a950d300e1156f6016e37c87ad
4
+ data.tar.gz: 883a54b7f9f0898db02a7143a4c032a72470e08d
5
5
  SHA512:
6
- metadata.gz: 3a4cad0bd62881931a0a59f6d4b9794d0aae97a55da63e44c9e9e83466652dbc26b14a95ac7cedcea01d65bd9caf8f3cb0bf258ac4367e6bc4a9a61f304bf2b9
7
- data.tar.gz: 700796b4f701fba6be78483dbac7161632082a35887532e850ab0b4ed9549a04d57e8182bb7c366693211d8a8138189d4bbfc161f27ab44dcbfa8d93ee76ff88
6
+ metadata.gz: 5861891416f4090aaccc2eb37d4862d7f62ed5042eecdcb8ac4147be31ed93901bb0ad333152ff1790a8063ab9722c975c7b761fe33831fc74665a4336e002b3
7
+ data.tar.gz: 633a04ae35c65fdc5d00612444bc5d82c691acaae03971bce2afdd3a9ae0975c9bbaf3e4ad3bbda6ca601609cbfdf04b40789507e5339ff5c4c153c2f9a55641
@@ -6,6 +6,7 @@ require 'hashie-forbidden_attributes' if defined?(::Rails)
6
6
  require 'http_accept_language'
7
7
  require 'grape_ape_rails/base'
8
8
  require 'grape_ape_rails/handlers/header_versioning'
9
+ require 'grape_ape_rails/handlers/path_versioning'
9
10
  require 'grape_ape_rails/handlers/rails_logging'
10
11
 
11
12
 
@@ -0,0 +1,27 @@
1
+ module GrapeApeRails
2
+ module Handlers
3
+ module PathVersioning
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ gar_resource = self.name.split('::').last.underscore
8
+ gar_version = self.name.split('::')[-2].underscore.gsub('_','.')
9
+ cascades = GrapeApeRails::API.api_version_cascades_map
10
+ gar_version = cascades[gar_version] if cascades[gar_version].present?
11
+ # gar_appname = GrapeApeRails.configuration.app_name
12
+ # gar_organization = GrapeApeRails.configuration.organization_name
13
+ version gar_version, using: :path
14
+
15
+ before do
16
+ req = Rack::Request.new(env)
17
+ api_key = version ? GrapeApeRails::API.api_keys_map[version] : nil
18
+ if api_key.nil?
19
+ msg = "Cannot determine API version from header info."
20
+ error!({ code: "UNAUTHORIZED", message: msg}, 401)
21
+ end
22
+ end
23
+ end
24
+
25
+ end
26
+ end
27
+ end
@@ -1,3 +1,3 @@
1
1
  module GrapeApeRails
2
- VERSION = "0.9.9"
2
+ VERSION = "0.9.10"
3
3
  end
@@ -6,7 +6,8 @@ namespace :api do
6
6
  API::Base.routes.each do |api|
7
7
  method = api.route_method.ljust(10)
8
8
  version = (api.route_version || '').ljust(15)
9
- path = api.route_path.gsub(":version", '')
9
+ path = api.route_path
10
+ path = path.gsub("/:version", "/#{version.rstrip}") if version
10
11
  puts " #{method} #{version} #{path}"
11
12
  end
12
13
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grape_ape_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.9
4
+ version: 0.9.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt E. Patterson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-22 00:00:00.000000000 Z
11
+ date: 2015-05-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -385,6 +385,7 @@ files:
385
385
  - lib/grape_ape_rails/handlers/formatters.rb
386
386
  - lib/grape_ape_rails/handlers/header_versioning.rb
387
387
  - lib/grape_ape_rails/handlers/locale.rb
388
+ - lib/grape_ape_rails/handlers/path_versioning.rb
388
389
  - lib/grape_ape_rails/handlers/rails_logging.rb
389
390
  - lib/grape_ape_rails/handlers/responses.rb
390
391
  - lib/grape_ape_rails/railtie.rb