twirp 0.0.2 → 0.0.2.1

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: 2de989bef622a106065d7cad486cd575cc10d783
4
- data.tar.gz: 5e01d8fae314ab0f4c53e64f9ede154aef54eafb
3
+ metadata.gz: 0beb3999bd9e3f24928e3177696919e1e48003c3
4
+ data.tar.gz: 0173e308fa7df470db82f6a5129972ab2c368679
5
5
  SHA512:
6
- metadata.gz: 609f958dec7ba47552c36bd54a96aa7404e602f56ed669e22401deccf9e4568852beac96d09fe40cf81bf42bc601c811d6165fc1a2b1d67c6b92fa1412c26307
7
- data.tar.gz: a7414cf878277e142d4b52a1492f03f8e37bfe71fe82ff1046c29199cd9405a5e8e59f4be13b26ecb69ed0d9d689eef98d5378da93ea6fbfa6e365ada542709f
6
+ metadata.gz: ea168c51643ae809dd9998fb932bee65f4ee8b21472aff74107b5beef1afc0a34a8af4b6d2591c65a80aa64ce503b3094dc5fee6a2d9b3a0dcf24dfdbfa3ec23
7
+ data.tar.gz: cc0310f0f12b57c3fdfe938573769ba88c752d91ec8c220e261dda410105a61e89d1ca8204fae6f82fac16956a50ee6033122f2c7dc7a720c010bbaf3b269670
data/README.md CHANGED
@@ -3,6 +3,11 @@
3
3
  Twirp services and clients in Ruby.
4
4
 
5
5
  ### Installation
6
+ Install the `twirp` gem:
7
+ ```
8
+ ➜ gem install twirp
9
+ ```
10
+
6
11
  Use `go get` to install the ruby_twirp protoc plugin:
7
12
  ```
8
13
  ➜ go get github.com/cyrusaf/ruby-twirp/protoc-gen-twirp_ruby
@@ -42,7 +47,7 @@ Run the `protoc` binary to generate `gen/haberdasher_pb.rb` and `gen/haberdasher
42
47
 
43
48
  Write an implementation of our haberdasher service and attach to a rack server:
44
49
  ```
45
- # config.ru
50
+ # main.rb
46
51
  require 'rack'
47
52
  require_relative 'gen/haberdasher_pb.rb'
48
53
  require_relative 'gen/haberdasher_twirp.rb'
@@ -54,7 +59,8 @@ class HaberdasherImplementation
54
59
  end
55
60
 
56
61
  svc = HaberdasherImplementation.new()
57
- run Rack::URLMap.new HaberdasherService::PATH_PREFIX => HaberdasherService.new(svc).handler
62
+ url_map = Rack::URLMap.new HaberdasherService::PATH_PREFIX => HaberdasherService.new(svc).handler
63
+ Rack::Handler::WEBrick.run url_map
58
64
  ```
59
65
 
60
66
  You can also mount onto a rails service:
@@ -65,9 +71,9 @@ App::Application.routes.draw do
65
71
  end
66
72
  ```
67
73
 
68
- Run `config.ru` to start the server on port 8080:
74
+ Run `ruby main.rb` to start the server on port 8080:
69
75
  ```
70
- rackup
76
+ ruby main.rb
71
77
  ```
72
78
 
73
79
  `curl` your server to get a response:
@@ -9,4 +9,4 @@ class HaberdasherImplementation
9
9
  end
10
10
 
11
11
  svc = HaberdasherImplementation.new()
12
- run Rack::URLMap.new HaberdasherService::PATH_PREFIX => HaberdasherService.new(svc).handler
12
+ Rack::Handler::WEBrick.run HaberdasherService.new(svc).handler
data/lib/twirp/service.rb CHANGED
@@ -15,7 +15,7 @@ module Twirp
15
15
 
16
16
  def route_request(req)
17
17
  # Parse url to get method names
18
- method_name = req.path_info[1..-1]
18
+ method_name = req.fullpath[self.class::PATH_PREFIX.length+1..-1]
19
19
 
20
20
  # Get req/res types from @@rpcs
21
21
  rpc = @@rpcs[method_name.to_sym]
data/lib/twirp/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Twirp
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.2.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twirp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cyrus A. Forbes
@@ -54,10 +54,10 @@ files:
54
54
  - README.md
55
55
  - examples/Gemfile
56
56
  - examples/Gemfile.lock
57
- - examples/config.ru
58
57
  - examples/gen/haberdasher_pb.rb
59
58
  - examples/gen/haberdasher_twirp.rb
60
59
  - examples/haberdasher.proto
60
+ - examples/main.rb
61
61
  - lib/twirp.rb
62
62
  - lib/twirp/error.rb
63
63
  - lib/twirp/service.rb