protobuf 2.8.13 → 3.0.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +84 -5
- data/CONTRIBUTING.md +3 -3
- data/Rakefile +46 -7
- data/lib/protobuf/cli.rb +2 -20
- data/lib/protobuf/decoder.rb +74 -0
- data/lib/protobuf/deprecator.rb +42 -0
- data/lib/protobuf/descriptors/google/protobuf/compiler/plugin.pb.rb +17 -16
- data/lib/protobuf/descriptors/google/protobuf/descriptor.pb.rb +86 -85
- data/lib/protobuf/encoder.rb +62 -0
- data/lib/protobuf/enum.rb +298 -37
- data/lib/protobuf/field/base_field.rb +41 -27
- data/lib/protobuf/field/bool_field.rb +22 -4
- data/lib/protobuf/field/bytes_field.rb +36 -15
- data/lib/protobuf/field/double_field.rb +10 -3
- data/lib/protobuf/field/enum_field.rb +21 -18
- data/lib/protobuf/field/field_array.rb +26 -16
- data/lib/protobuf/field/fixed32_field.rb +10 -4
- data/lib/protobuf/field/fixed64_field.rb +10 -3
- data/lib/protobuf/field/float_field.rb +18 -5
- data/lib/protobuf/field/int32_field.rb +14 -4
- data/lib/protobuf/field/int64_field.rb +14 -4
- data/lib/protobuf/field/integer_field.rb +9 -4
- data/lib/protobuf/field/message_field.rb +16 -7
- data/lib/protobuf/field/sfixed32_field.rb +10 -3
- data/lib/protobuf/field/sfixed64_field.rb +12 -7
- data/lib/protobuf/field/signed_integer_field.rb +7 -0
- data/lib/protobuf/field/sint32_field.rb +14 -4
- data/lib/protobuf/field/sint64_field.rb +14 -4
- data/lib/protobuf/field/string_field.rb +11 -1
- data/lib/protobuf/field/uint32_field.rb +14 -4
- data/lib/protobuf/field/uint64_field.rb +14 -4
- data/lib/protobuf/field/varint_field.rb +11 -9
- data/lib/protobuf/field.rb +42 -25
- data/lib/protobuf/generators/enum_generator.rb +12 -1
- data/lib/protobuf/generators/field_generator.rb +1 -1
- data/lib/protobuf/lifecycle.rb +3 -4
- data/lib/protobuf/message/fields.rb +122 -0
- data/lib/protobuf/message/serialization.rb +84 -0
- data/lib/protobuf/message.rb +21 -221
- data/lib/protobuf/optionable.rb +23 -0
- data/lib/protobuf/rpc/client.rb +2 -4
- data/lib/protobuf/rpc/connector.rb +0 -2
- data/lib/protobuf/rpc/connectors/common.rb +2 -2
- data/lib/protobuf/rpc/dynamic_discovery.pb.rb +14 -16
- data/lib/protobuf/rpc/env.rb +58 -0
- data/lib/protobuf/rpc/error.rb +8 -5
- data/lib/protobuf/rpc/middleware/exception_handler.rb +36 -0
- data/lib/protobuf/rpc/middleware/logger.rb +91 -0
- data/lib/protobuf/rpc/middleware/request_decoder.rb +83 -0
- data/lib/protobuf/rpc/middleware/response_encoder.rb +88 -0
- data/lib/protobuf/rpc/middleware/runner.rb +18 -0
- data/lib/protobuf/rpc/middleware.rb +25 -0
- data/lib/protobuf/rpc/rpc.pb.rb +15 -16
- data/lib/protobuf/rpc/server.rb +14 -64
- data/lib/protobuf/rpc/servers/socket/server.rb +0 -2
- data/lib/protobuf/rpc/servers/socket/worker.rb +11 -15
- data/lib/protobuf/rpc/servers/zmq/util.rb +4 -1
- data/lib/protobuf/rpc/servers/zmq/worker.rb +5 -13
- data/lib/protobuf/rpc/servers/zmq_runner.rb +1 -1
- data/lib/protobuf/rpc/service.rb +38 -72
- data/lib/protobuf/rpc/service_dispatcher.rb +20 -108
- data/lib/protobuf/version.rb +1 -2
- data/lib/protobuf.rb +5 -13
- data/protobuf.gemspec +5 -5
- data/spec/benchmark/tasks.rb +2 -77
- data/spec/functional/zmq_server_spec.rb +13 -21
- data/spec/lib/protobuf/cli_spec.rb +5 -43
- data/spec/lib/protobuf/enum_spec.rb +194 -61
- data/spec/lib/protobuf/field_spec.rb +194 -0
- data/spec/lib/protobuf/generators/enum_generator_spec.rb +24 -1
- data/spec/lib/protobuf/generators/field_generator_spec.rb +6 -6
- data/spec/lib/protobuf/message_spec.rb +52 -70
- data/spec/lib/protobuf/optionable_spec.rb +46 -0
- data/spec/lib/protobuf/rpc/client_spec.rb +1 -93
- data/spec/lib/protobuf/rpc/connector_spec.rb +1 -7
- data/spec/lib/protobuf/rpc/connectors/zmq_spec.rb +8 -0
- data/spec/lib/protobuf/rpc/middleware/exception_handler_spec.rb +62 -0
- data/spec/lib/protobuf/rpc/middleware/logger_spec.rb +49 -0
- data/spec/lib/protobuf/rpc/middleware/request_decoder_spec.rb +115 -0
- data/spec/lib/protobuf/rpc/middleware/response_encoder_spec.rb +75 -0
- data/spec/lib/protobuf/rpc/servers/socket_server_spec.rb +0 -6
- data/spec/lib/protobuf/rpc/servers/zmq/util_spec.rb +10 -0
- data/spec/lib/protobuf/rpc/service_dispatcher_spec.rb +30 -105
- data/spec/lib/protobuf/rpc/service_filters_spec.rb +4 -4
- data/spec/lib/protobuf/rpc/service_spec.rb +20 -24
- data/spec/lib/protobuf_spec.rb +3 -3
- data/spec/spec_helper.rb +5 -4
- data/spec/support/packed_field.rb +15 -14
- data/spec/support/server.rb +4 -21
- data/spec/support/test/defaults.pb.rb +4 -4
- data/spec/support/test/enum.pb.rb +13 -1
- data/spec/support/test/enum.proto +15 -0
- data/spec/support/test/extended.pb.rb +1 -1
- data/spec/support/test/google_unittest.pb.rb +239 -241
- data/spec/support/test/google_unittest_import.pb.rb +2 -2
- data/spec/support/test/multi_field_extensions.pb.rb +2 -2
- data/spec/support/test/resource.pb.rb +19 -18
- data/spec/support/test/resource.proto +1 -0
- data/spec/support/test/resource_service.rb +5 -0
- metadata +78 -57
- data/bin/rprotoc +0 -8
- data/lib/protobuf/enum_value.rb +0 -85
- data/lib/protobuf/evented.rb +0 -37
- data/lib/protobuf/ext/eventmachine.rb +0 -14
- data/lib/protobuf/field/extension_fields.rb +0 -32
- data/lib/protobuf/message/decoder.rb +0 -72
- data/lib/protobuf/message/message.rb +0 -1
- data/lib/protobuf/rpc/connectors/em_client.rb +0 -84
- data/lib/protobuf/rpc/connectors/eventmachine.rb +0 -87
- data/lib/protobuf/rpc/servers/evented/server.rb +0 -36
- data/lib/protobuf/rpc/servers/evented_runner.rb +0 -31
- data/spec/functional/embedded_service_spec.rb +0 -7
- data/spec/functional/evented_server_spec.rb +0 -64
- data/spec/lib/protobuf/enum_value_spec.rb +0 -29
- data/spec/lib/protobuf/rpc/servers/evented_server_spec.rb +0 -19
@@ -26,11 +26,11 @@ module GoogleUnittestImport
|
|
26
26
|
# Message Fields
|
27
27
|
#
|
28
28
|
class PublicImportMessage
|
29
|
-
optional
|
29
|
+
optional :int32, :e, 1
|
30
30
|
end
|
31
31
|
|
32
32
|
class ImportMessage
|
33
|
-
optional
|
33
|
+
optional :int32, :d, 1
|
34
34
|
end
|
35
35
|
|
36
36
|
end
|
@@ -40,14 +40,14 @@ module Test
|
|
40
40
|
|
41
41
|
class PayloadA
|
42
42
|
class Foo
|
43
|
-
optional
|
43
|
+
optional :string, :foo_a, 1
|
44
44
|
end
|
45
45
|
|
46
46
|
end
|
47
47
|
|
48
48
|
class PayloadB
|
49
49
|
class Foo
|
50
|
-
optional
|
50
|
+
optional :string, :foo_b, 1
|
51
51
|
end
|
52
52
|
|
53
53
|
end
|
@@ -47,54 +47,54 @@ module Test
|
|
47
47
|
# Message Fields
|
48
48
|
#
|
49
49
|
class ResourceFindRequest
|
50
|
-
required
|
51
|
-
optional
|
52
|
-
repeated
|
53
|
-
repeated
|
50
|
+
required :string, :name, 1
|
51
|
+
optional :bool, :active, 2
|
52
|
+
repeated :string, :widgets, 3
|
53
|
+
repeated :bytes, :widget_bytes, 4
|
54
54
|
end
|
55
55
|
|
56
56
|
class ResourceSleepRequest
|
57
|
-
optional
|
57
|
+
optional :int32, :sleep, 1
|
58
58
|
end
|
59
59
|
|
60
60
|
class Resource
|
61
|
-
required
|
62
|
-
optional
|
61
|
+
required :string, :name, 1
|
62
|
+
optional :int64, :date_created, 2
|
63
63
|
optional ::Test::StatusType, :status, 3
|
64
64
|
repeated ::Test::StatusType, :repeated_enum, 4
|
65
65
|
# Extension Fields
|
66
66
|
extensions 100...536870912
|
67
|
-
optional
|
68
|
-
optional
|
67
|
+
optional :bool, :ext_is_searchable, 100, :extension => true
|
68
|
+
optional :bool, :ext_is_hidden, 101, :extension => true
|
69
69
|
optional ::Test::Searchable::SearchType, :ext_search_type, 102, :default => ::Test::Searchable::SearchType::FLAT, :extension => true
|
70
|
-
optional
|
71
|
-
optional
|
70
|
+
optional :bool, :ext_nested_in_level_one, 105, :extension => true
|
71
|
+
optional :bool, :ext_dup_field, 106, :extension => true
|
72
72
|
end
|
73
73
|
|
74
74
|
class MessageParent
|
75
75
|
class MessageChild
|
76
|
-
optional
|
76
|
+
optional :string, :child1, 1
|
77
77
|
end
|
78
78
|
|
79
79
|
end
|
80
80
|
|
81
81
|
class Nested
|
82
82
|
class NestedLevelOne
|
83
|
-
optional
|
83
|
+
optional :bool, :level_one, 1, :default => true
|
84
84
|
# Extension Fields
|
85
85
|
extensions 100...102
|
86
|
-
optional
|
87
|
-
optional
|
86
|
+
optional :bool, :ext_nested_level_one_outer, 101, :extension => true
|
87
|
+
optional :bool, :ext_nested_level_one, 100, :extension => true
|
88
88
|
end
|
89
89
|
|
90
|
-
optional
|
90
|
+
optional :string, :name, 1
|
91
91
|
optional ::Test::Resource, :resource, 2
|
92
92
|
repeated ::Test::Resource, :multiple_resources, 3
|
93
93
|
optional ::Test::StatusType, :status, 4
|
94
94
|
# Extension Fields
|
95
95
|
extensions 100...111
|
96
|
-
optional
|
97
|
-
optional
|
96
|
+
optional :string, :foo, 100, :extension => true
|
97
|
+
optional :int64, :bar, 101, :extension => true
|
98
98
|
end
|
99
99
|
|
100
100
|
|
@@ -103,6 +103,7 @@ module Test
|
|
103
103
|
#
|
104
104
|
class ResourceService < ::Protobuf::Rpc::Service
|
105
105
|
rpc :find, ::Test::ResourceFindRequest, ::Test::Resource
|
106
|
+
rpc :find_with_rpc_failed, ::Test::ResourceFindRequest, ::Test::Resource
|
106
107
|
rpc :find_with_sleep, ::Test::ResourceSleepRequest, ::Test::Resource
|
107
108
|
end
|
108
109
|
|
metadata
CHANGED
@@ -1,169 +1,184 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: protobuf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- BJ Neilsen
|
8
8
|
- Brandon Dewitt
|
9
9
|
- Devin Christensen
|
10
|
+
- Adam Hutchison
|
10
11
|
autorequire:
|
11
12
|
bindir: bin
|
12
13
|
cert_chain: []
|
13
|
-
date: 2014-
|
14
|
+
date: 2014-02-19 00:00:00.000000000 Z
|
14
15
|
dependencies:
|
15
16
|
- !ruby/object:Gem::Dependency
|
16
17
|
name: activesupport
|
17
18
|
requirement: !ruby/object:Gem::Requirement
|
18
19
|
requirements:
|
19
|
-
- -
|
20
|
+
- - '>='
|
20
21
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
22
|
+
version: '3.2'
|
22
23
|
type: :runtime
|
23
24
|
prerelease: false
|
24
25
|
version_requirements: !ruby/object:Gem::Requirement
|
25
26
|
requirements:
|
26
|
-
- -
|
27
|
+
- - '>='
|
27
28
|
- !ruby/object:Gem::Version
|
28
|
-
version: '
|
29
|
+
version: '3.2'
|
29
30
|
- !ruby/object:Gem::Dependency
|
30
|
-
name:
|
31
|
+
name: middleware
|
31
32
|
requirement: !ruby/object:Gem::Requirement
|
32
33
|
requirements:
|
33
|
-
- -
|
34
|
+
- - '>='
|
34
35
|
- !ruby/object:Gem::Version
|
35
36
|
version: '0'
|
36
37
|
type: :runtime
|
37
38
|
prerelease: false
|
38
39
|
version_requirements: !ruby/object:Gem::Requirement
|
39
40
|
requirements:
|
40
|
-
- -
|
41
|
+
- - '>='
|
41
42
|
- !ruby/object:Gem::Version
|
42
43
|
version: '0'
|
43
44
|
- !ruby/object:Gem::Dependency
|
44
|
-
name:
|
45
|
+
name: multi_json
|
45
46
|
requirement: !ruby/object:Gem::Requirement
|
46
47
|
requirements:
|
47
|
-
- -
|
48
|
+
- - '>='
|
48
49
|
- !ruby/object:Gem::Version
|
49
50
|
version: '0'
|
50
51
|
type: :runtime
|
51
52
|
prerelease: false
|
52
53
|
version_requirements: !ruby/object:Gem::Requirement
|
53
54
|
requirements:
|
54
|
-
- -
|
55
|
+
- - '>='
|
55
56
|
- !ruby/object:Gem::Version
|
56
57
|
version: '0'
|
57
58
|
- !ruby/object:Gem::Dependency
|
58
|
-
name:
|
59
|
+
name: thor
|
59
60
|
requirement: !ruby/object:Gem::Requirement
|
60
61
|
requirements:
|
61
|
-
- -
|
62
|
+
- - '>='
|
62
63
|
- !ruby/object:Gem::Version
|
63
64
|
version: '0'
|
64
|
-
type: :
|
65
|
+
type: :runtime
|
65
66
|
prerelease: false
|
66
67
|
version_requirements: !ruby/object:Gem::Requirement
|
67
68
|
requirements:
|
68
|
-
- -
|
69
|
+
- - '>='
|
69
70
|
- !ruby/object:Gem::Version
|
70
71
|
version: '0'
|
71
72
|
- !ruby/object:Gem::Dependency
|
72
73
|
name: ffi-rzmq
|
73
74
|
requirement: !ruby/object:Gem::Requirement
|
74
75
|
requirements:
|
75
|
-
- -
|
76
|
+
- - '>='
|
76
77
|
- !ruby/object:Gem::Version
|
77
78
|
version: '0'
|
78
79
|
type: :development
|
79
80
|
prerelease: false
|
80
81
|
version_requirements: !ruby/object:Gem::Requirement
|
81
82
|
requirements:
|
82
|
-
- -
|
83
|
+
- - '>='
|
83
84
|
- !ruby/object:Gem::Version
|
84
85
|
version: '0'
|
85
86
|
- !ruby/object:Gem::Dependency
|
86
87
|
name: pry-nav
|
87
88
|
requirement: !ruby/object:Gem::Requirement
|
88
89
|
requirements:
|
89
|
-
- -
|
90
|
+
- - '>='
|
90
91
|
- !ruby/object:Gem::Version
|
91
92
|
version: '0'
|
92
93
|
type: :development
|
93
94
|
prerelease: false
|
94
95
|
version_requirements: !ruby/object:Gem::Requirement
|
95
96
|
requirements:
|
96
|
-
- -
|
97
|
+
- - '>='
|
97
98
|
- !ruby/object:Gem::Version
|
98
99
|
version: '0'
|
99
100
|
- !ruby/object:Gem::Dependency
|
100
101
|
name: rake
|
101
102
|
requirement: !ruby/object:Gem::Requirement
|
102
103
|
requirements:
|
103
|
-
- -
|
104
|
+
- - '>='
|
104
105
|
- !ruby/object:Gem::Version
|
105
106
|
version: '0'
|
106
107
|
type: :development
|
107
108
|
prerelease: false
|
108
109
|
version_requirements: !ruby/object:Gem::Requirement
|
109
110
|
requirements:
|
110
|
-
- -
|
111
|
+
- - '>='
|
111
112
|
- !ruby/object:Gem::Version
|
112
113
|
version: '0'
|
113
114
|
- !ruby/object:Gem::Dependency
|
114
115
|
name: rspec
|
115
116
|
requirement: !ruby/object:Gem::Requirement
|
116
117
|
requirements:
|
117
|
-
- -
|
118
|
+
- - '>='
|
118
119
|
- !ruby/object:Gem::Version
|
119
120
|
version: '0'
|
120
121
|
type: :development
|
121
122
|
prerelease: false
|
122
123
|
version_requirements: !ruby/object:Gem::Requirement
|
123
124
|
requirements:
|
124
|
-
- -
|
125
|
+
- - '>='
|
125
126
|
- !ruby/object:Gem::Version
|
126
127
|
version: '0'
|
127
128
|
- !ruby/object:Gem::Dependency
|
128
129
|
name: simplecov
|
129
130
|
requirement: !ruby/object:Gem::Requirement
|
130
131
|
requirements:
|
131
|
-
- -
|
132
|
+
- - '>='
|
132
133
|
- !ruby/object:Gem::Version
|
133
134
|
version: '0'
|
134
135
|
type: :development
|
135
136
|
prerelease: false
|
136
137
|
version_requirements: !ruby/object:Gem::Requirement
|
137
138
|
requirements:
|
138
|
-
- -
|
139
|
+
- - '>='
|
139
140
|
- !ruby/object:Gem::Version
|
140
141
|
version: '0'
|
141
142
|
- !ruby/object:Gem::Dependency
|
142
143
|
name: yard
|
143
144
|
requirement: !ruby/object:Gem::Requirement
|
144
145
|
requirements:
|
145
|
-
- -
|
146
|
+
- - '>='
|
146
147
|
- !ruby/object:Gem::Version
|
147
148
|
version: '0'
|
148
149
|
type: :development
|
149
150
|
prerelease: false
|
150
151
|
version_requirements: !ruby/object:Gem::Requirement
|
151
152
|
requirements:
|
152
|
-
- -
|
153
|
+
- - '>='
|
153
154
|
- !ruby/object:Gem::Version
|
154
155
|
version: '0'
|
155
156
|
- !ruby/object:Gem::Dependency
|
156
157
|
name: timecop
|
157
158
|
requirement: !ruby/object:Gem::Requirement
|
158
159
|
requirements:
|
159
|
-
- -
|
160
|
+
- - '>='
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: '0'
|
163
|
+
type: :development
|
164
|
+
prerelease: false
|
165
|
+
version_requirements: !ruby/object:Gem::Requirement
|
166
|
+
requirements:
|
167
|
+
- - '>='
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
version: '0'
|
170
|
+
- !ruby/object:Gem::Dependency
|
171
|
+
name: perftools.rb
|
172
|
+
requirement: !ruby/object:Gem::Requirement
|
173
|
+
requirements:
|
174
|
+
- - '>='
|
160
175
|
- !ruby/object:Gem::Version
|
161
176
|
version: '0'
|
162
177
|
type: :development
|
163
178
|
prerelease: false
|
164
179
|
version_requirements: !ruby/object:Gem::Requirement
|
165
180
|
requirements:
|
166
|
-
- -
|
181
|
+
- - '>='
|
167
182
|
- !ruby/object:Gem::Version
|
168
183
|
version: '0'
|
169
184
|
description: Google Protocol Buffers serialization and RPC implementation for Ruby.
|
@@ -171,16 +186,16 @@ email:
|
|
171
186
|
- bj.neilsen+protobuf@gmail.com
|
172
187
|
- brandonsdewitt+protobuf@gmail.com
|
173
188
|
- quixoten@gmail.com
|
189
|
+
- liveh2o@gmail.com
|
174
190
|
executables:
|
175
191
|
- protoc-gen-ruby
|
176
192
|
- rpc_server
|
177
|
-
- rprotoc
|
178
193
|
extensions: []
|
179
194
|
extra_rdoc_files: []
|
180
195
|
files:
|
181
|
-
-
|
182
|
-
-
|
183
|
-
-
|
196
|
+
- .gitignore
|
197
|
+
- .travis.yml
|
198
|
+
- .yardopts
|
184
199
|
- CHANGES.md
|
185
200
|
- CONTRIBUTING.md
|
186
201
|
- Gemfile
|
@@ -189,25 +204,23 @@ files:
|
|
189
204
|
- Rakefile
|
190
205
|
- bin/protoc-gen-ruby
|
191
206
|
- bin/rpc_server
|
192
|
-
- bin/rprotoc
|
193
207
|
- lib/protobuf.rb
|
194
208
|
- lib/protobuf/cli.rb
|
195
209
|
- lib/protobuf/code_generator.rb
|
210
|
+
- lib/protobuf/decoder.rb
|
211
|
+
- lib/protobuf/deprecator.rb
|
196
212
|
- lib/protobuf/descriptors.rb
|
197
213
|
- lib/protobuf/descriptors/google/protobuf/compiler/plugin.pb.rb
|
198
214
|
- lib/protobuf/descriptors/google/protobuf/descriptor.pb.rb
|
215
|
+
- lib/protobuf/encoder.rb
|
199
216
|
- lib/protobuf/enum.rb
|
200
|
-
- lib/protobuf/enum_value.rb
|
201
|
-
- lib/protobuf/evented.rb
|
202
217
|
- lib/protobuf/exceptions.rb
|
203
|
-
- lib/protobuf/ext/eventmachine.rb
|
204
218
|
- lib/protobuf/field.rb
|
205
219
|
- lib/protobuf/field/base_field.rb
|
206
220
|
- lib/protobuf/field/bool_field.rb
|
207
221
|
- lib/protobuf/field/bytes_field.rb
|
208
222
|
- lib/protobuf/field/double_field.rb
|
209
223
|
- lib/protobuf/field/enum_field.rb
|
210
|
-
- lib/protobuf/field/extension_fields.rb
|
211
224
|
- lib/protobuf/field/field_array.rb
|
212
225
|
- lib/protobuf/field/fixed32_field.rb
|
213
226
|
- lib/protobuf/field/fixed64_field.rb
|
@@ -237,25 +250,29 @@ files:
|
|
237
250
|
- lib/protobuf/lifecycle.rb
|
238
251
|
- lib/protobuf/logger.rb
|
239
252
|
- lib/protobuf/message.rb
|
240
|
-
- lib/protobuf/message/
|
241
|
-
- lib/protobuf/message/
|
253
|
+
- lib/protobuf/message/fields.rb
|
254
|
+
- lib/protobuf/message/serialization.rb
|
255
|
+
- lib/protobuf/optionable.rb
|
242
256
|
- lib/protobuf/rpc/buffer.rb
|
243
257
|
- lib/protobuf/rpc/client.rb
|
244
258
|
- lib/protobuf/rpc/connector.rb
|
245
259
|
- lib/protobuf/rpc/connectors/base.rb
|
246
260
|
- lib/protobuf/rpc/connectors/common.rb
|
247
|
-
- lib/protobuf/rpc/connectors/em_client.rb
|
248
|
-
- lib/protobuf/rpc/connectors/eventmachine.rb
|
249
261
|
- lib/protobuf/rpc/connectors/socket.rb
|
250
262
|
- lib/protobuf/rpc/connectors/zmq.rb
|
251
263
|
- lib/protobuf/rpc/dynamic_discovery.pb.rb
|
264
|
+
- lib/protobuf/rpc/env.rb
|
252
265
|
- lib/protobuf/rpc/error.rb
|
253
266
|
- lib/protobuf/rpc/error/client_error.rb
|
254
267
|
- lib/protobuf/rpc/error/server_error.rb
|
268
|
+
- lib/protobuf/rpc/middleware.rb
|
269
|
+
- lib/protobuf/rpc/middleware/exception_handler.rb
|
270
|
+
- lib/protobuf/rpc/middleware/logger.rb
|
271
|
+
- lib/protobuf/rpc/middleware/request_decoder.rb
|
272
|
+
- lib/protobuf/rpc/middleware/response_encoder.rb
|
273
|
+
- lib/protobuf/rpc/middleware/runner.rb
|
255
274
|
- lib/protobuf/rpc/rpc.pb.rb
|
256
275
|
- lib/protobuf/rpc/server.rb
|
257
|
-
- lib/protobuf/rpc/servers/evented/server.rb
|
258
|
-
- lib/protobuf/rpc/servers/evented_runner.rb
|
259
276
|
- lib/protobuf/rpc/servers/socket/server.rb
|
260
277
|
- lib/protobuf/rpc/servers/socket/worker.rb
|
261
278
|
- lib/protobuf/rpc/servers/socket_runner.rb
|
@@ -286,16 +303,14 @@ files:
|
|
286
303
|
- spec/data/types.bin
|
287
304
|
- spec/encoding/all_types_spec.rb
|
288
305
|
- spec/encoding/extreme_values_spec.rb
|
289
|
-
- spec/functional/embedded_service_spec.rb
|
290
|
-
- spec/functional/evented_server_spec.rb
|
291
306
|
- spec/functional/socket_server_spec.rb
|
292
307
|
- spec/functional/zmq_server_spec.rb
|
293
308
|
- spec/lib/protobuf/cli_spec.rb
|
294
309
|
- spec/lib/protobuf/code_generator_spec.rb
|
295
310
|
- spec/lib/protobuf/enum_spec.rb
|
296
|
-
- spec/lib/protobuf/enum_value_spec.rb
|
297
311
|
- spec/lib/protobuf/field/int32_field_spec.rb
|
298
312
|
- spec/lib/protobuf/field/string_field_spec.rb
|
313
|
+
- spec/lib/protobuf/field_spec.rb
|
299
314
|
- spec/lib/protobuf/generators/base_spec.rb
|
300
315
|
- spec/lib/protobuf/generators/enum_generator_spec.rb
|
301
316
|
- spec/lib/protobuf/generators/extension_generator_spec.rb
|
@@ -306,13 +321,17 @@ files:
|
|
306
321
|
- spec/lib/protobuf/lifecycle_spec.rb
|
307
322
|
- spec/lib/protobuf/logger_spec.rb
|
308
323
|
- spec/lib/protobuf/message_spec.rb
|
324
|
+
- spec/lib/protobuf/optionable_spec.rb
|
309
325
|
- spec/lib/protobuf/rpc/client_spec.rb
|
310
326
|
- spec/lib/protobuf/rpc/connector_spec.rb
|
311
327
|
- spec/lib/protobuf/rpc/connectors/base_spec.rb
|
312
328
|
- spec/lib/protobuf/rpc/connectors/common_spec.rb
|
313
329
|
- spec/lib/protobuf/rpc/connectors/socket_spec.rb
|
314
330
|
- spec/lib/protobuf/rpc/connectors/zmq_spec.rb
|
315
|
-
- spec/lib/protobuf/rpc/
|
331
|
+
- spec/lib/protobuf/rpc/middleware/exception_handler_spec.rb
|
332
|
+
- spec/lib/protobuf/rpc/middleware/logger_spec.rb
|
333
|
+
- spec/lib/protobuf/rpc/middleware/request_decoder_spec.rb
|
334
|
+
- spec/lib/protobuf/rpc/middleware/response_encoder_spec.rb
|
316
335
|
- spec/lib/protobuf/rpc/servers/socket_server_spec.rb
|
317
336
|
- spec/lib/protobuf/rpc/servers/zmq/server_spec.rb
|
318
337
|
- spec/lib/protobuf/rpc/servers/zmq/util_spec.rb
|
@@ -359,17 +378,17 @@ require_paths:
|
|
359
378
|
- lib
|
360
379
|
required_ruby_version: !ruby/object:Gem::Requirement
|
361
380
|
requirements:
|
362
|
-
- -
|
381
|
+
- - '>='
|
363
382
|
- !ruby/object:Gem::Version
|
364
383
|
version: '0'
|
365
384
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
366
385
|
requirements:
|
367
|
-
- -
|
386
|
+
- - '>'
|
368
387
|
- !ruby/object:Gem::Version
|
369
|
-
version:
|
388
|
+
version: 1.3.1
|
370
389
|
requirements: []
|
371
390
|
rubyforge_project:
|
372
|
-
rubygems_version: 2.
|
391
|
+
rubygems_version: 2.1.2
|
373
392
|
signing_key:
|
374
393
|
specification_version: 4
|
375
394
|
summary: Google Protocol Buffers serialization and RPC implementation for Ruby.
|
@@ -380,16 +399,14 @@ test_files:
|
|
380
399
|
- spec/data/types.bin
|
381
400
|
- spec/encoding/all_types_spec.rb
|
382
401
|
- spec/encoding/extreme_values_spec.rb
|
383
|
-
- spec/functional/embedded_service_spec.rb
|
384
|
-
- spec/functional/evented_server_spec.rb
|
385
402
|
- spec/functional/socket_server_spec.rb
|
386
403
|
- spec/functional/zmq_server_spec.rb
|
387
404
|
- spec/lib/protobuf/cli_spec.rb
|
388
405
|
- spec/lib/protobuf/code_generator_spec.rb
|
389
406
|
- spec/lib/protobuf/enum_spec.rb
|
390
|
-
- spec/lib/protobuf/enum_value_spec.rb
|
391
407
|
- spec/lib/protobuf/field/int32_field_spec.rb
|
392
408
|
- spec/lib/protobuf/field/string_field_spec.rb
|
409
|
+
- spec/lib/protobuf/field_spec.rb
|
393
410
|
- spec/lib/protobuf/generators/base_spec.rb
|
394
411
|
- spec/lib/protobuf/generators/enum_generator_spec.rb
|
395
412
|
- spec/lib/protobuf/generators/extension_generator_spec.rb
|
@@ -400,13 +417,17 @@ test_files:
|
|
400
417
|
- spec/lib/protobuf/lifecycle_spec.rb
|
401
418
|
- spec/lib/protobuf/logger_spec.rb
|
402
419
|
- spec/lib/protobuf/message_spec.rb
|
420
|
+
- spec/lib/protobuf/optionable_spec.rb
|
403
421
|
- spec/lib/protobuf/rpc/client_spec.rb
|
404
422
|
- spec/lib/protobuf/rpc/connector_spec.rb
|
405
423
|
- spec/lib/protobuf/rpc/connectors/base_spec.rb
|
406
424
|
- spec/lib/protobuf/rpc/connectors/common_spec.rb
|
407
425
|
- spec/lib/protobuf/rpc/connectors/socket_spec.rb
|
408
426
|
- spec/lib/protobuf/rpc/connectors/zmq_spec.rb
|
409
|
-
- spec/lib/protobuf/rpc/
|
427
|
+
- spec/lib/protobuf/rpc/middleware/exception_handler_spec.rb
|
428
|
+
- spec/lib/protobuf/rpc/middleware/logger_spec.rb
|
429
|
+
- spec/lib/protobuf/rpc/middleware/request_decoder_spec.rb
|
430
|
+
- spec/lib/protobuf/rpc/middleware/response_encoder_spec.rb
|
410
431
|
- spec/lib/protobuf/rpc/servers/socket_server_spec.rb
|
411
432
|
- spec/lib/protobuf/rpc/servers/zmq/server_spec.rb
|
412
433
|
- spec/lib/protobuf/rpc/servers/zmq/util_spec.rb
|
data/bin/rprotoc
DELETED
data/lib/protobuf/enum_value.rb
DELETED
@@ -1,85 +0,0 @@
|
|
1
|
-
require 'delegate'
|
2
|
-
require 'protobuf/enum'
|
3
|
-
|
4
|
-
##
|
5
|
-
# Adding extension to Numeric until
|
6
|
-
# we can get people to stop calling #value
|
7
|
-
# on EnumValue
|
8
|
-
class Numeric
|
9
|
-
unless method_defined?(:value)
|
10
|
-
def value
|
11
|
-
self
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
module Protobuf
|
17
|
-
class EnumValue < SimpleDelegator
|
18
|
-
|
19
|
-
attr_reader :parent_class, :name
|
20
|
-
|
21
|
-
##
|
22
|
-
# Constructor
|
23
|
-
#
|
24
|
-
def initialize(parent_class, name, value)
|
25
|
-
@parent_class = parent_class
|
26
|
-
@name = name
|
27
|
-
@value = value
|
28
|
-
super(@value)
|
29
|
-
end
|
30
|
-
|
31
|
-
# Overriding the class so ActiveRecord/Arel visitor will visit the enum as a Fixnum
|
32
|
-
def class
|
33
|
-
Fixnum
|
34
|
-
end
|
35
|
-
|
36
|
-
def inspect
|
37
|
-
"\#<Protobuf::EnumValue #{@parent_class}::#{@name}=#{@value}>"
|
38
|
-
end
|
39
|
-
|
40
|
-
def to_i
|
41
|
-
@value
|
42
|
-
end
|
43
|
-
|
44
|
-
def to_int
|
45
|
-
@value.to_int
|
46
|
-
end
|
47
|
-
|
48
|
-
def to_s(format = :value_string)
|
49
|
-
case format
|
50
|
-
when :value_string then
|
51
|
-
self.to_i.to_s
|
52
|
-
when :name then
|
53
|
-
name.to_s
|
54
|
-
else
|
55
|
-
self.to_i.to_s
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
|
-
# Re-implement `try` in order to fix the problem where
|
60
|
-
# the underlying fixnum doesn't respond to all methods (e.g. name or value).
|
61
|
-
# If we respond to the first argument, `__send__` the args. Otherwise,
|
62
|
-
# delegate the `try` call to the underlying vlaue fixnum.
|
63
|
-
#
|
64
|
-
def try(*args, &block)
|
65
|
-
case
|
66
|
-
when args.empty? && block_given?
|
67
|
-
yield self
|
68
|
-
when respond_to?(args.first)
|
69
|
-
__send__(*args, &block)
|
70
|
-
else
|
71
|
-
@value.try(*args, &block)
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
|
-
def value
|
76
|
-
@value
|
77
|
-
end
|
78
|
-
|
79
|
-
##
|
80
|
-
# Instance Aliases
|
81
|
-
#
|
82
|
-
alias_method :to_hash_value, :to_i
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
data/lib/protobuf/evented.rb
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
##
|
2
|
-
## Evented Mode
|
3
|
-
##
|
4
|
-
#
|
5
|
-
# Require this file if you wish to run your server and/or client RPC
|
6
|
-
# with the evented handlers via EventMachine.
|
7
|
-
#
|
8
|
-
# To run with rpc_server specify the switch `evented`:
|
9
|
-
#
|
10
|
-
# rpc_server --evented myapp.rb
|
11
|
-
#
|
12
|
-
# To run for client-side only override the require in your Gemfile:
|
13
|
-
#
|
14
|
-
# gem 'protobuf', :require => 'protobuf/evented'
|
15
|
-
#
|
16
|
-
$stderr.puts <<-WARN
|
17
|
-
[DEPRECATED] You are using the evented connector and/or server which has been deprecated.
|
18
|
-
Versions >= 3.0 will no longer provide the evented module for clients
|
19
|
-
and servers. You should upgrade to the socket or zmq transport configurations.
|
20
|
-
|
21
|
-
To upgrade your rpc_server, simply replace `--evented` option
|
22
|
-
with `--socket` or `--zmq`. If you are using the `PB_CLIENT_TYPE`
|
23
|
-
env variable, simply assign it to socket or zmq.
|
24
|
-
|
25
|
-
If you are requiring the gem in your gemfile expclitly, change
|
26
|
-
the require to match your chosen transport type:
|
27
|
-
|
28
|
-
`gem 'protobuf', :require => 'protobuf/socket'`
|
29
|
-
WARN
|
30
|
-
|
31
|
-
require 'protobuf'
|
32
|
-
Protobuf.connector_type = :evented
|
33
|
-
|
34
|
-
require 'eventmachine'
|
35
|
-
require 'protobuf/ext/eventmachine'
|
36
|
-
require 'protobuf/rpc/servers/evented/server'
|
37
|
-
require 'protobuf/rpc/connectors/eventmachine'
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require 'fiber'
|
2
|
-
|
3
|
-
# Method from em-synchrony
|
4
|
-
# https://github.com/igrigorik/em-synchrony
|
5
|
-
#
|
6
|
-
# A convenience method for wrapping EM.run body within
|
7
|
-
# a Ruby Fiber such that async operations can be transparently
|
8
|
-
# paused and resumed based on IO scheduling
|
9
|
-
module EventMachine
|
10
|
-
def self.fiber_run(blk=nil, tail=nil, &block)
|
11
|
-
context = Proc.new{ Fiber.new{ (b = blk || block) and b.call }.resume }
|
12
|
-
self.run(context, tail)
|
13
|
-
end
|
14
|
-
end
|