twirp 0.0.2 → 0.0.2.1

Sign up to get free protection for your applications and to get access to all the features.
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