upfluence-thrift 1.0.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 +7 -0
- data/README.md +43 -0
- data/benchmark/Benchmark.thrift +24 -0
- data/benchmark/benchmark.rb +271 -0
- data/benchmark/client.rb +74 -0
- data/benchmark/gen-rb/benchmark_constants.rb +11 -0
- data/benchmark/gen-rb/benchmark_service.rb +80 -0
- data/benchmark/gen-rb/benchmark_types.rb +10 -0
- data/benchmark/server.rb +82 -0
- data/benchmark/thin_server.rb +44 -0
- data/ext/binary_protocol_accelerated.c +460 -0
- data/ext/binary_protocol_accelerated.h +20 -0
- data/ext/bytes.c +36 -0
- data/ext/bytes.h +31 -0
- data/ext/compact_protocol.c +637 -0
- data/ext/compact_protocol.h +20 -0
- data/ext/constants.h +99 -0
- data/ext/extconf.rb +34 -0
- data/ext/macros.h +41 -0
- data/ext/memory_buffer.c +134 -0
- data/ext/memory_buffer.h +20 -0
- data/ext/protocol.c +0 -0
- data/ext/protocol.h +0 -0
- data/ext/strlcpy.c +41 -0
- data/ext/strlcpy.h +34 -0
- data/ext/struct.c +707 -0
- data/ext/struct.h +25 -0
- data/ext/thrift_native.c +201 -0
- data/lib/thrift.rb +68 -0
- data/lib/thrift/bytes.rb +131 -0
- data/lib/thrift/client.rb +71 -0
- data/lib/thrift/core_ext.rb +23 -0
- data/lib/thrift/core_ext/fixnum.rb +29 -0
- data/lib/thrift/exceptions.rb +87 -0
- data/lib/thrift/multiplexed_processor.rb +76 -0
- data/lib/thrift/processor.rb +57 -0
- data/lib/thrift/protocol/base_protocol.rb +379 -0
- data/lib/thrift/protocol/binary_protocol.rb +237 -0
- data/lib/thrift/protocol/binary_protocol_accelerated.rb +39 -0
- data/lib/thrift/protocol/compact_protocol.rb +435 -0
- data/lib/thrift/protocol/json_protocol.rb +769 -0
- data/lib/thrift/protocol/multiplexed_protocol.rb +40 -0
- data/lib/thrift/protocol/protocol_decorator.rb +194 -0
- data/lib/thrift/serializer/deserializer.rb +33 -0
- data/lib/thrift/serializer/serializer.rb +34 -0
- data/lib/thrift/server/base_server.rb +31 -0
- data/lib/thrift/server/mongrel_http_server.rb +60 -0
- data/lib/thrift/server/nonblocking_server.rb +305 -0
- data/lib/thrift/server/rack_application.rb +61 -0
- data/lib/thrift/server/simple_server.rb +43 -0
- data/lib/thrift/server/thin_http_server.rb +51 -0
- data/lib/thrift/server/thread_pool_server.rb +75 -0
- data/lib/thrift/server/threaded_server.rb +47 -0
- data/lib/thrift/struct.rb +237 -0
- data/lib/thrift/struct_union.rb +192 -0
- data/lib/thrift/thrift_native.rb +24 -0
- data/lib/thrift/transport/base_server_transport.rb +37 -0
- data/lib/thrift/transport/base_transport.rb +109 -0
- data/lib/thrift/transport/buffered_transport.rb +114 -0
- data/lib/thrift/transport/framed_transport.rb +117 -0
- data/lib/thrift/transport/http_client_transport.rb +56 -0
- data/lib/thrift/transport/io_stream_transport.rb +39 -0
- data/lib/thrift/transport/memory_buffer_transport.rb +125 -0
- data/lib/thrift/transport/server_socket.rb +63 -0
- data/lib/thrift/transport/socket.rb +139 -0
- data/lib/thrift/transport/unix_server_socket.rb +60 -0
- data/lib/thrift/transport/unix_socket.rb +40 -0
- data/lib/thrift/types.rb +101 -0
- data/lib/thrift/union.rb +179 -0
- data/spec/BaseService.thrift +27 -0
- data/spec/ExtendedService.thrift +25 -0
- data/spec/Referenced.thrift +44 -0
- data/spec/ThriftNamespacedSpec.thrift +53 -0
- data/spec/ThriftSpec.thrift +183 -0
- data/spec/base_protocol_spec.rb +217 -0
- data/spec/base_transport_spec.rb +350 -0
- data/spec/binary_protocol_accelerated_spec.rb +42 -0
- data/spec/binary_protocol_spec.rb +66 -0
- data/spec/binary_protocol_spec_shared.rb +455 -0
- data/spec/bytes_spec.rb +160 -0
- data/spec/client_spec.rb +99 -0
- data/spec/compact_protocol_spec.rb +143 -0
- data/spec/exception_spec.rb +141 -0
- data/spec/flat_spec.rb +62 -0
- data/spec/gen-rb/base/base_service.rb +80 -0
- data/spec/gen-rb/base/base_service_constants.rb +11 -0
- data/spec/gen-rb/base/base_service_types.rb +26 -0
- data/spec/gen-rb/extended/extended_service.rb +78 -0
- data/spec/gen-rb/extended/extended_service_constants.rb +11 -0
- data/spec/gen-rb/extended/extended_service_types.rb +12 -0
- data/spec/gen-rb/flat/namespaced_nonblocking_service.rb +272 -0
- data/spec/gen-rb/flat/referenced_constants.rb +11 -0
- data/spec/gen-rb/flat/referenced_types.rb +17 -0
- data/spec/gen-rb/flat/thrift_namespaced_spec_constants.rb +11 -0
- data/spec/gen-rb/flat/thrift_namespaced_spec_types.rb +28 -0
- data/spec/gen-rb/namespaced_spec_namespace/namespaced_nonblocking_service.rb +272 -0
- data/spec/gen-rb/namespaced_spec_namespace/thrift_namespaced_spec_constants.rb +11 -0
- data/spec/gen-rb/namespaced_spec_namespace/thrift_namespaced_spec_types.rb +28 -0
- data/spec/gen-rb/nonblocking_service.rb +272 -0
- data/spec/gen-rb/other_namespace/referenced_constants.rb +11 -0
- data/spec/gen-rb/other_namespace/referenced_types.rb +17 -0
- data/spec/gen-rb/thrift_spec_constants.rb +11 -0
- data/spec/gen-rb/thrift_spec_types.rb +538 -0
- data/spec/http_client_spec.rb +120 -0
- data/spec/json_protocol_spec.rb +513 -0
- data/spec/namespaced_spec.rb +67 -0
- data/spec/nonblocking_server_spec.rb +263 -0
- data/spec/processor_spec.rb +80 -0
- data/spec/serializer_spec.rb +67 -0
- data/spec/server_socket_spec.rb +79 -0
- data/spec/server_spec.rb +147 -0
- data/spec/socket_spec.rb +61 -0
- data/spec/socket_spec_shared.rb +104 -0
- data/spec/spec_helper.rb +64 -0
- data/spec/struct_nested_containers_spec.rb +191 -0
- data/spec/struct_spec.rb +293 -0
- data/spec/thin_http_server_spec.rb +141 -0
- data/spec/types_spec.rb +115 -0
- data/spec/union_spec.rb +203 -0
- data/spec/unix_socket_spec.rb +107 -0
- data/test/debug_proto/gen-rb/debug_proto_test_constants.rb +274 -0
- data/test/debug_proto/gen-rb/debug_proto_test_types.rb +761 -0
- data/test/debug_proto/gen-rb/empty_service.rb +24 -0
- data/test/debug_proto/gen-rb/inherited.rb +79 -0
- data/test/debug_proto/gen-rb/reverse_order_service.rb +82 -0
- data/test/debug_proto/gen-rb/service_for_exception_with_a_map.rb +81 -0
- data/test/debug_proto/gen-rb/srv.rb +330 -0
- metadata +388 -0
@@ -0,0 +1,17 @@
|
|
1
|
+
#
|
2
|
+
# Autogenerated by Thrift Compiler (1.0.0-upfluence)
|
3
|
+
#
|
4
|
+
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
|
+
#
|
6
|
+
|
7
|
+
require 'thrift'
|
8
|
+
|
9
|
+
module OtherNamespace
|
10
|
+
module SomeEnum
|
11
|
+
ONE = 0
|
12
|
+
TWO = 1
|
13
|
+
VALUE_MAP = {0 => "ONE", 1 => "TWO"}
|
14
|
+
VALID_VALUES = Set.new([ONE, TWO]).freeze
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
@@ -0,0 +1,538 @@
|
|
1
|
+
#
|
2
|
+
# Autogenerated by Thrift Compiler (1.0.0-upfluence)
|
3
|
+
#
|
4
|
+
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
|
+
#
|
6
|
+
|
7
|
+
require 'thrift'
|
8
|
+
|
9
|
+
module SpecNamespace
|
10
|
+
module SomeEnum
|
11
|
+
ONE = 0
|
12
|
+
TWO = 1
|
13
|
+
VALUE_MAP = {0 => "ONE", 1 => "TWO"}
|
14
|
+
VALID_VALUES = Set.new([ONE, TWO]).freeze
|
15
|
+
end
|
16
|
+
|
17
|
+
class Hello
|
18
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
19
|
+
GREETING = 1
|
20
|
+
|
21
|
+
FIELDS = {
|
22
|
+
GREETING => {:type => ::Thrift::Types::STRING, :name => 'greeting', :default => %q"hello world"}
|
23
|
+
}
|
24
|
+
|
25
|
+
def struct_fields; FIELDS; end
|
26
|
+
|
27
|
+
def validate
|
28
|
+
end
|
29
|
+
|
30
|
+
::Thrift::Struct.generate_accessors self
|
31
|
+
end
|
32
|
+
|
33
|
+
class StructWithSomeEnum
|
34
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
35
|
+
SOME_ENUM = 1
|
36
|
+
|
37
|
+
FIELDS = {
|
38
|
+
SOME_ENUM => {:type => ::Thrift::Types::I32, :name => 'some_enum', :enum_class => ::SpecNamespace::SomeEnum}
|
39
|
+
}
|
40
|
+
|
41
|
+
def struct_fields; FIELDS; end
|
42
|
+
|
43
|
+
def validate
|
44
|
+
unless @some_enum.nil? || ::SpecNamespace::SomeEnum::VALID_VALUES.include?(@some_enum)
|
45
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field some_enum!')
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
::Thrift::Struct.generate_accessors self
|
50
|
+
end
|
51
|
+
|
52
|
+
class TestUnion < ::Thrift::Union
|
53
|
+
include ::Thrift::Struct_Union
|
54
|
+
class << self
|
55
|
+
def string_field(val)
|
56
|
+
TestUnion.new(:string_field, val)
|
57
|
+
end
|
58
|
+
|
59
|
+
def i32_field(val)
|
60
|
+
TestUnion.new(:i32_field, val)
|
61
|
+
end
|
62
|
+
|
63
|
+
def other_i32_field(val)
|
64
|
+
TestUnion.new(:other_i32_field, val)
|
65
|
+
end
|
66
|
+
|
67
|
+
def enum_field(val)
|
68
|
+
TestUnion.new(:enum_field, val)
|
69
|
+
end
|
70
|
+
|
71
|
+
def binary_field(val)
|
72
|
+
TestUnion.new(:binary_field, val)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
STRING_FIELD = 1
|
77
|
+
I32_FIELD = 2
|
78
|
+
OTHER_I32_FIELD = 3
|
79
|
+
ENUM_FIELD = 4
|
80
|
+
BINARY_FIELD = 5
|
81
|
+
|
82
|
+
FIELDS = {
|
83
|
+
# A doc string
|
84
|
+
STRING_FIELD => {:type => ::Thrift::Types::STRING, :name => 'string_field'},
|
85
|
+
I32_FIELD => {:type => ::Thrift::Types::I32, :name => 'i32_field'},
|
86
|
+
OTHER_I32_FIELD => {:type => ::Thrift::Types::I32, :name => 'other_i32_field'},
|
87
|
+
ENUM_FIELD => {:type => ::Thrift::Types::I32, :name => 'enum_field', :enum_class => ::SpecNamespace::SomeEnum},
|
88
|
+
BINARY_FIELD => {:type => ::Thrift::Types::STRING, :name => 'binary_field', :binary => true}
|
89
|
+
}
|
90
|
+
|
91
|
+
def struct_fields; FIELDS; end
|
92
|
+
|
93
|
+
def validate
|
94
|
+
raise(StandardError, 'Union fields are not set.') if get_set_field.nil? || get_value.nil?
|
95
|
+
if get_set_field == :enum_field
|
96
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field enum_field!') unless ::SpecNamespace::SomeEnum::VALID_VALUES.include?(get_value)
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
::Thrift::Union.generate_accessors self
|
101
|
+
end
|
102
|
+
|
103
|
+
class Foo
|
104
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
105
|
+
SIMPLE = 1
|
106
|
+
WORDS = 2
|
107
|
+
HELLO = 3
|
108
|
+
INTS = 4
|
109
|
+
COMPLEX = 5
|
110
|
+
SHORTS = 6
|
111
|
+
OPT_STRING = 7
|
112
|
+
MY_BOOL = 8
|
113
|
+
|
114
|
+
FIELDS = {
|
115
|
+
SIMPLE => {:type => ::Thrift::Types::I32, :name => 'simple', :default => 53},
|
116
|
+
WORDS => {:type => ::Thrift::Types::STRING, :name => 'words', :default => %q"words"},
|
117
|
+
HELLO => {:type => ::Thrift::Types::STRUCT, :name => 'hello', :default => ::SpecNamespace::Hello.new({
|
118
|
+
%q"greeting" => %q"hello, world!",
|
119
|
+
}), :class => ::SpecNamespace::Hello},
|
120
|
+
INTS => {:type => ::Thrift::Types::LIST, :name => 'ints', :default => [
|
121
|
+
1,
|
122
|
+
2,
|
123
|
+
2,
|
124
|
+
3,
|
125
|
+
], :element => {:type => ::Thrift::Types::I32}},
|
126
|
+
COMPLEX => {:type => ::Thrift::Types::MAP, :name => 'complex', :key => {:type => ::Thrift::Types::I32}, :value => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::DOUBLE}}},
|
127
|
+
SHORTS => {:type => ::Thrift::Types::SET, :name => 'shorts', :default => Set.new([
|
128
|
+
5,
|
129
|
+
17,
|
130
|
+
239,
|
131
|
+
]), :element => {:type => ::Thrift::Types::I16}},
|
132
|
+
OPT_STRING => {:type => ::Thrift::Types::STRING, :name => 'opt_string', :optional => true},
|
133
|
+
MY_BOOL => {:type => ::Thrift::Types::BOOL, :name => 'my_bool'}
|
134
|
+
}
|
135
|
+
|
136
|
+
def struct_fields; FIELDS; end
|
137
|
+
|
138
|
+
def validate
|
139
|
+
end
|
140
|
+
|
141
|
+
::Thrift::Struct.generate_accessors self
|
142
|
+
end
|
143
|
+
|
144
|
+
class Foo2
|
145
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
146
|
+
MY_BINARY = 1
|
147
|
+
|
148
|
+
FIELDS = {
|
149
|
+
MY_BINARY => {:type => ::Thrift::Types::STRING, :name => 'my_binary', :binary => true}
|
150
|
+
}
|
151
|
+
|
152
|
+
def struct_fields; FIELDS; end
|
153
|
+
|
154
|
+
def validate
|
155
|
+
end
|
156
|
+
|
157
|
+
::Thrift::Struct.generate_accessors self
|
158
|
+
end
|
159
|
+
|
160
|
+
class BoolStruct
|
161
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
162
|
+
YESNO = 1
|
163
|
+
|
164
|
+
FIELDS = {
|
165
|
+
YESNO => {:type => ::Thrift::Types::BOOL, :name => 'yesno', :default => true}
|
166
|
+
}
|
167
|
+
|
168
|
+
def struct_fields; FIELDS; end
|
169
|
+
|
170
|
+
def validate
|
171
|
+
end
|
172
|
+
|
173
|
+
::Thrift::Struct.generate_accessors self
|
174
|
+
end
|
175
|
+
|
176
|
+
class SimpleList
|
177
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
178
|
+
BOOLS = 1
|
179
|
+
BYTES = 2
|
180
|
+
I16S = 3
|
181
|
+
I32S = 4
|
182
|
+
I64S = 5
|
183
|
+
DOUBLES = 6
|
184
|
+
STRINGS = 7
|
185
|
+
MAPS = 8
|
186
|
+
LISTS = 9
|
187
|
+
SETS = 10
|
188
|
+
HELLOS = 11
|
189
|
+
|
190
|
+
FIELDS = {
|
191
|
+
BOOLS => {:type => ::Thrift::Types::LIST, :name => 'bools', :element => {:type => ::Thrift::Types::BOOL}},
|
192
|
+
BYTES => {:type => ::Thrift::Types::LIST, :name => 'bytes', :element => {:type => ::Thrift::Types::BYTE}},
|
193
|
+
I16S => {:type => ::Thrift::Types::LIST, :name => 'i16s', :element => {:type => ::Thrift::Types::I16}},
|
194
|
+
I32S => {:type => ::Thrift::Types::LIST, :name => 'i32s', :element => {:type => ::Thrift::Types::I32}},
|
195
|
+
I64S => {:type => ::Thrift::Types::LIST, :name => 'i64s', :element => {:type => ::Thrift::Types::I64}},
|
196
|
+
DOUBLES => {:type => ::Thrift::Types::LIST, :name => 'doubles', :element => {:type => ::Thrift::Types::DOUBLE}},
|
197
|
+
STRINGS => {:type => ::Thrift::Types::LIST, :name => 'strings', :element => {:type => ::Thrift::Types::STRING}},
|
198
|
+
MAPS => {:type => ::Thrift::Types::LIST, :name => 'maps', :element => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::I16}, :value => {:type => ::Thrift::Types::I16}}},
|
199
|
+
LISTS => {:type => ::Thrift::Types::LIST, :name => 'lists', :element => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::I16}}},
|
200
|
+
SETS => {:type => ::Thrift::Types::LIST, :name => 'sets', :element => {:type => ::Thrift::Types::SET, :element => {:type => ::Thrift::Types::I16}}},
|
201
|
+
HELLOS => {:type => ::Thrift::Types::LIST, :name => 'hellos', :element => {:type => ::Thrift::Types::STRUCT, :class => ::SpecNamespace::Hello}}
|
202
|
+
}
|
203
|
+
|
204
|
+
def struct_fields; FIELDS; end
|
205
|
+
|
206
|
+
def validate
|
207
|
+
end
|
208
|
+
|
209
|
+
::Thrift::Struct.generate_accessors self
|
210
|
+
end
|
211
|
+
|
212
|
+
class Xception < ::Thrift::Exception
|
213
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
214
|
+
MESSAGE = 1
|
215
|
+
CODE = 2
|
216
|
+
|
217
|
+
FIELDS = {
|
218
|
+
MESSAGE => {:type => ::Thrift::Types::STRING, :name => 'message'},
|
219
|
+
CODE => {:type => ::Thrift::Types::I32, :name => 'code', :default => 1}
|
220
|
+
}
|
221
|
+
|
222
|
+
def struct_fields; FIELDS; end
|
223
|
+
|
224
|
+
def validate
|
225
|
+
end
|
226
|
+
|
227
|
+
::Thrift::Struct.generate_accessors self
|
228
|
+
end
|
229
|
+
|
230
|
+
class My_union < ::Thrift::Union
|
231
|
+
include ::Thrift::Struct_Union
|
232
|
+
class << self
|
233
|
+
def im_true(val)
|
234
|
+
My_union.new(:im_true, val)
|
235
|
+
end
|
236
|
+
|
237
|
+
def a_bite(val)
|
238
|
+
My_union.new(:a_bite, val)
|
239
|
+
end
|
240
|
+
|
241
|
+
def integer16(val)
|
242
|
+
My_union.new(:integer16, val)
|
243
|
+
end
|
244
|
+
|
245
|
+
def integer32(val)
|
246
|
+
My_union.new(:integer32, val)
|
247
|
+
end
|
248
|
+
|
249
|
+
def integer64(val)
|
250
|
+
My_union.new(:integer64, val)
|
251
|
+
end
|
252
|
+
|
253
|
+
def double_precision(val)
|
254
|
+
My_union.new(:double_precision, val)
|
255
|
+
end
|
256
|
+
|
257
|
+
def some_characters(val)
|
258
|
+
My_union.new(:some_characters, val)
|
259
|
+
end
|
260
|
+
|
261
|
+
def other_i32(val)
|
262
|
+
My_union.new(:other_i32, val)
|
263
|
+
end
|
264
|
+
|
265
|
+
def some_enum(val)
|
266
|
+
My_union.new(:some_enum, val)
|
267
|
+
end
|
268
|
+
|
269
|
+
def my_map(val)
|
270
|
+
My_union.new(:my_map, val)
|
271
|
+
end
|
272
|
+
end
|
273
|
+
|
274
|
+
IM_TRUE = 1
|
275
|
+
A_BITE = 2
|
276
|
+
INTEGER16 = 3
|
277
|
+
INTEGER32 = 4
|
278
|
+
INTEGER64 = 5
|
279
|
+
DOUBLE_PRECISION = 6
|
280
|
+
SOME_CHARACTERS = 7
|
281
|
+
OTHER_I32 = 8
|
282
|
+
SOME_ENUM = 9
|
283
|
+
MY_MAP = 10
|
284
|
+
|
285
|
+
FIELDS = {
|
286
|
+
IM_TRUE => {:type => ::Thrift::Types::BOOL, :name => 'im_true'},
|
287
|
+
A_BITE => {:type => ::Thrift::Types::BYTE, :name => 'a_bite'},
|
288
|
+
INTEGER16 => {:type => ::Thrift::Types::I16, :name => 'integer16'},
|
289
|
+
INTEGER32 => {:type => ::Thrift::Types::I32, :name => 'integer32'},
|
290
|
+
INTEGER64 => {:type => ::Thrift::Types::I64, :name => 'integer64'},
|
291
|
+
DOUBLE_PRECISION => {:type => ::Thrift::Types::DOUBLE, :name => 'double_precision'},
|
292
|
+
SOME_CHARACTERS => {:type => ::Thrift::Types::STRING, :name => 'some_characters'},
|
293
|
+
OTHER_I32 => {:type => ::Thrift::Types::I32, :name => 'other_i32'},
|
294
|
+
SOME_ENUM => {:type => ::Thrift::Types::I32, :name => 'some_enum', :enum_class => ::SpecNamespace::SomeEnum},
|
295
|
+
MY_MAP => {:type => ::Thrift::Types::MAP, :name => 'my_map', :key => {:type => ::Thrift::Types::I32, :enum_class => ::SpecNamespace::SomeEnum}, :value => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::I32, :enum_class => ::SpecNamespace::SomeEnum}}}
|
296
|
+
}
|
297
|
+
|
298
|
+
def struct_fields; FIELDS; end
|
299
|
+
|
300
|
+
def validate
|
301
|
+
raise(StandardError, 'Union fields are not set.') if get_set_field.nil? || get_value.nil?
|
302
|
+
if get_set_field == :some_enum
|
303
|
+
raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field some_enum!') unless ::SpecNamespace::SomeEnum::VALID_VALUES.include?(get_value)
|
304
|
+
end
|
305
|
+
end
|
306
|
+
|
307
|
+
::Thrift::Union.generate_accessors self
|
308
|
+
end
|
309
|
+
|
310
|
+
class Struct_with_union
|
311
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
312
|
+
FUN_UNION = 1
|
313
|
+
INTEGER32 = 2
|
314
|
+
SOME_CHARACTERS = 3
|
315
|
+
|
316
|
+
FIELDS = {
|
317
|
+
FUN_UNION => {:type => ::Thrift::Types::STRUCT, :name => 'fun_union', :class => ::SpecNamespace::My_union},
|
318
|
+
INTEGER32 => {:type => ::Thrift::Types::I32, :name => 'integer32'},
|
319
|
+
SOME_CHARACTERS => {:type => ::Thrift::Types::STRING, :name => 'some_characters'}
|
320
|
+
}
|
321
|
+
|
322
|
+
def struct_fields; FIELDS; end
|
323
|
+
|
324
|
+
def validate
|
325
|
+
end
|
326
|
+
|
327
|
+
::Thrift::Struct.generate_accessors self
|
328
|
+
end
|
329
|
+
|
330
|
+
class StructWithEnumMap
|
331
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
332
|
+
MY_MAP = 1
|
333
|
+
|
334
|
+
FIELDS = {
|
335
|
+
MY_MAP => {:type => ::Thrift::Types::MAP, :name => 'my_map', :key => {:type => ::Thrift::Types::I32, :enum_class => ::SpecNamespace::SomeEnum}, :value => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::I32, :enum_class => ::SpecNamespace::SomeEnum}}}
|
336
|
+
}
|
337
|
+
|
338
|
+
def struct_fields; FIELDS; end
|
339
|
+
|
340
|
+
def validate
|
341
|
+
end
|
342
|
+
|
343
|
+
::Thrift::Struct.generate_accessors self
|
344
|
+
end
|
345
|
+
|
346
|
+
class NestedListInList
|
347
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
348
|
+
VALUE = 1
|
349
|
+
|
350
|
+
FIELDS = {
|
351
|
+
VALUE => {:type => ::Thrift::Types::LIST, :name => 'value', :element => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::BYTE}}}
|
352
|
+
}
|
353
|
+
|
354
|
+
def struct_fields; FIELDS; end
|
355
|
+
|
356
|
+
def validate
|
357
|
+
end
|
358
|
+
|
359
|
+
::Thrift::Struct.generate_accessors self
|
360
|
+
end
|
361
|
+
|
362
|
+
class NestedListInSet
|
363
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
364
|
+
VALUE = 1
|
365
|
+
|
366
|
+
FIELDS = {
|
367
|
+
VALUE => {:type => ::Thrift::Types::SET, :name => 'value', :element => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::BYTE}}}
|
368
|
+
}
|
369
|
+
|
370
|
+
def struct_fields; FIELDS; end
|
371
|
+
|
372
|
+
def validate
|
373
|
+
end
|
374
|
+
|
375
|
+
::Thrift::Struct.generate_accessors self
|
376
|
+
end
|
377
|
+
|
378
|
+
class NestedListInMapKey
|
379
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
380
|
+
VALUE = 1
|
381
|
+
|
382
|
+
FIELDS = {
|
383
|
+
VALUE => {:type => ::Thrift::Types::MAP, :name => 'value', :key => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::BYTE}}, :value => {:type => ::Thrift::Types::BYTE}}
|
384
|
+
}
|
385
|
+
|
386
|
+
def struct_fields; FIELDS; end
|
387
|
+
|
388
|
+
def validate
|
389
|
+
end
|
390
|
+
|
391
|
+
::Thrift::Struct.generate_accessors self
|
392
|
+
end
|
393
|
+
|
394
|
+
class NestedListInMapValue
|
395
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
396
|
+
VALUE = 1
|
397
|
+
|
398
|
+
FIELDS = {
|
399
|
+
VALUE => {:type => ::Thrift::Types::MAP, :name => 'value', :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::LIST, :element => {:type => ::Thrift::Types::BYTE}}}
|
400
|
+
}
|
401
|
+
|
402
|
+
def struct_fields; FIELDS; end
|
403
|
+
|
404
|
+
def validate
|
405
|
+
end
|
406
|
+
|
407
|
+
::Thrift::Struct.generate_accessors self
|
408
|
+
end
|
409
|
+
|
410
|
+
class NestedSetInList
|
411
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
412
|
+
VALUE = 1
|
413
|
+
|
414
|
+
FIELDS = {
|
415
|
+
VALUE => {:type => ::Thrift::Types::LIST, :name => 'value', :element => {:type => ::Thrift::Types::SET, :element => {:type => ::Thrift::Types::BYTE}}}
|
416
|
+
}
|
417
|
+
|
418
|
+
def struct_fields; FIELDS; end
|
419
|
+
|
420
|
+
def validate
|
421
|
+
end
|
422
|
+
|
423
|
+
::Thrift::Struct.generate_accessors self
|
424
|
+
end
|
425
|
+
|
426
|
+
class NestedSetInSet
|
427
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
428
|
+
VALUE = 1
|
429
|
+
|
430
|
+
FIELDS = {
|
431
|
+
VALUE => {:type => ::Thrift::Types::SET, :name => 'value', :element => {:type => ::Thrift::Types::SET, :element => {:type => ::Thrift::Types::BYTE}}}
|
432
|
+
}
|
433
|
+
|
434
|
+
def struct_fields; FIELDS; end
|
435
|
+
|
436
|
+
def validate
|
437
|
+
end
|
438
|
+
|
439
|
+
::Thrift::Struct.generate_accessors self
|
440
|
+
end
|
441
|
+
|
442
|
+
class NestedSetInMapKey
|
443
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
444
|
+
VALUE = 1
|
445
|
+
|
446
|
+
FIELDS = {
|
447
|
+
VALUE => {:type => ::Thrift::Types::MAP, :name => 'value', :key => {:type => ::Thrift::Types::SET, :element => {:type => ::Thrift::Types::BYTE}}, :value => {:type => ::Thrift::Types::BYTE}}
|
448
|
+
}
|
449
|
+
|
450
|
+
def struct_fields; FIELDS; end
|
451
|
+
|
452
|
+
def validate
|
453
|
+
end
|
454
|
+
|
455
|
+
::Thrift::Struct.generate_accessors self
|
456
|
+
end
|
457
|
+
|
458
|
+
class NestedSetInMapValue
|
459
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
460
|
+
VALUE = 1
|
461
|
+
|
462
|
+
FIELDS = {
|
463
|
+
VALUE => {:type => ::Thrift::Types::MAP, :name => 'value', :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::SET, :element => {:type => ::Thrift::Types::BYTE}}}
|
464
|
+
}
|
465
|
+
|
466
|
+
def struct_fields; FIELDS; end
|
467
|
+
|
468
|
+
def validate
|
469
|
+
end
|
470
|
+
|
471
|
+
::Thrift::Struct.generate_accessors self
|
472
|
+
end
|
473
|
+
|
474
|
+
class NestedMapInList
|
475
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
476
|
+
VALUE = 1
|
477
|
+
|
478
|
+
FIELDS = {
|
479
|
+
VALUE => {:type => ::Thrift::Types::LIST, :name => 'value', :element => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::BYTE}}}
|
480
|
+
}
|
481
|
+
|
482
|
+
def struct_fields; FIELDS; end
|
483
|
+
|
484
|
+
def validate
|
485
|
+
end
|
486
|
+
|
487
|
+
::Thrift::Struct.generate_accessors self
|
488
|
+
end
|
489
|
+
|
490
|
+
class NestedMapInSet
|
491
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
492
|
+
VALUE = 1
|
493
|
+
|
494
|
+
FIELDS = {
|
495
|
+
VALUE => {:type => ::Thrift::Types::SET, :name => 'value', :element => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::BYTE}}}
|
496
|
+
}
|
497
|
+
|
498
|
+
def struct_fields; FIELDS; end
|
499
|
+
|
500
|
+
def validate
|
501
|
+
end
|
502
|
+
|
503
|
+
::Thrift::Struct.generate_accessors self
|
504
|
+
end
|
505
|
+
|
506
|
+
class NestedMapInMapKey
|
507
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
508
|
+
VALUE = 2
|
509
|
+
|
510
|
+
FIELDS = {
|
511
|
+
VALUE => {:type => ::Thrift::Types::MAP, :name => 'value', :key => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::BYTE}}, :value => {:type => ::Thrift::Types::BYTE}}
|
512
|
+
}
|
513
|
+
|
514
|
+
def struct_fields; FIELDS; end
|
515
|
+
|
516
|
+
def validate
|
517
|
+
end
|
518
|
+
|
519
|
+
::Thrift::Struct.generate_accessors self
|
520
|
+
end
|
521
|
+
|
522
|
+
class NestedMapInMapValue
|
523
|
+
include ::Thrift::Struct, ::Thrift::Struct_Union
|
524
|
+
VALUE = 2
|
525
|
+
|
526
|
+
FIELDS = {
|
527
|
+
VALUE => {:type => ::Thrift::Types::MAP, :name => 'value', :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::MAP, :key => {:type => ::Thrift::Types::BYTE}, :value => {:type => ::Thrift::Types::BYTE}}}
|
528
|
+
}
|
529
|
+
|
530
|
+
def struct_fields; FIELDS; end
|
531
|
+
|
532
|
+
def validate
|
533
|
+
end
|
534
|
+
|
535
|
+
::Thrift::Struct.generate_accessors self
|
536
|
+
end
|
537
|
+
|
538
|
+
end
|