rbhive-vidma 1.0.2.pre1.pre.thrift0.9.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.
@@ -0,0 +1,3 @@
1
+ module RBHive
2
+ class TCLIResultSet < ResultSet; end
3
+ end
@@ -0,0 +1,88 @@
1
+ require 'json'
2
+
3
+ module RBHive
4
+ class TCLISchemaDefinition
5
+ attr_reader :schema
6
+
7
+ NAN = Float::NAN rescue 0.0/0.0
8
+ INFINITY = Float::INFINITY rescue 1.0/0.0
9
+ TYPES = {
10
+ :boolean => :to_s,
11
+ :string => :to_s,
12
+ :bigint => :to_i,
13
+ :float => :to_f,
14
+ :double => :to_f,
15
+ :int => :to_i,
16
+ :bigint => :to_i,
17
+ :smallint => :to_i,
18
+ :tinyint => :to_i,
19
+ }
20
+
21
+ def initialize(schema, example_row)
22
+ @schema = schema
23
+ @example_row = example_row ? example_row.colVals : []
24
+ end
25
+
26
+ def column_names
27
+ @column_names ||= begin
28
+ schema_names = @schema.columns.map {|c| c.columnName }
29
+
30
+ # In rare cases Hive can return two identical column names
31
+ # consider SELECT a.foo, b.foo...
32
+ # in this case you get two columns called foo with no disambiguation.
33
+ # as a (far from ideal) solution we detect this edge case and rename them
34
+ # a.foo => foo1, b.foo => foo2
35
+ # otherwise we will trample one of the columns during Hash mapping.
36
+ s = Hash.new(0)
37
+ schema_names.map! { |c| s[c] += 1; s[c] > 1 ? "#{c}---|---#{s[c]}" : c }
38
+ schema_names.map! { |c| s[c] > 1 ? "#{c}---|---1" : c }
39
+ schema_names.map! { |c| c.gsub('---|---', '_').to_sym }
40
+
41
+ # Lets fix the fact that Hive doesn't return schema data for partitions on SELECT * queries
42
+ # For now we will call them :_p1, :_p2, etc. to avoid collisions.
43
+ offset = 0
44
+ while schema_names.length < @example_row.length
45
+ schema_names.push(:"_p#{offset+=1}")
46
+ end
47
+ schema_names
48
+ end
49
+ end
50
+
51
+ def column_type_map
52
+ @column_type_map ||= column_names.inject({}) do |hsh, c|
53
+ definition = @schema.columns.find {|s| s.columnName.to_sym == c }
54
+ # If the column isn't in the schema (eg partitions in SELECT * queries) assume they are strings
55
+ type = TYPE_NAMES[definition.typeDesc.types.first.primitiveEntry.type].downcase rescue nil
56
+ hsh[c] = definition && type ? type.to_sym : :string
57
+ hsh
58
+ end
59
+ end
60
+
61
+ def coerce_row(row)
62
+ column_names.zip(row.colVals.map(&:get_value).map(&:value)).inject({}) do |hsh, (column_name, value)|
63
+ hsh[column_name] = coerce_column(column_name, value)
64
+ hsh
65
+ end
66
+ end
67
+
68
+ def coerce_column(column_name, value)
69
+ type = column_type_map[column_name]
70
+ return INFINITY if (type != :string && value == "Infinity")
71
+ return NAN if (type != :string && value == "NaN")
72
+ return coerce_complex_value(value) if type.to_s =~ /^array/
73
+ conversion_method = TYPES[type]
74
+ conversion_method ? value.send(conversion_method) : value
75
+ end
76
+
77
+ def coerce_row_to_array(row)
78
+ column_names.map { |n| row[n] }
79
+ end
80
+
81
+ def coerce_complex_value(value)
82
+ return nil if value.nil?
83
+ return nil if value.length == 0
84
+ return nil if value == 'null'
85
+ JSON.parse(value)
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,117 @@
1
+ module RBHive
2
+ class TableSchema
3
+ attr_accessor :name
4
+ attr_reader :columns, :partitions
5
+ def initialize(name, comment=nil, options={}, &blk)
6
+ @name, @comment = name, comment
7
+ @location = options[:location] || nil
8
+ @field_sep = options[:field_sep] || "\t"
9
+ @line_sep = options[:line_sep] || "\n"
10
+ @collection_sep = options[:collection_sep] || "|"
11
+ @columns = []
12
+ @partitions = []
13
+ @serde_name = nil
14
+ @serde_properties = {}
15
+ instance_eval(&blk) if blk
16
+ end
17
+
18
+ def column(name, type, comment=nil)
19
+ @columns << Column.new(name, type, comment)
20
+ end
21
+
22
+ def partition(name, type, comment=nil)
23
+ @partitions << Column.new(name, type, comment)
24
+ end
25
+
26
+ def serde(name, properties={})
27
+ @serde_name = name
28
+ @serde_properties = properties
29
+ end
30
+
31
+ def create_table_statement()
32
+ %[CREATE #{external}TABLE #{table_statement}
33
+ ROW FORMAT #{row_format_statement}
34
+ STORED AS TEXTFILE
35
+ #{location}]
36
+ end
37
+
38
+ def row_format_statement
39
+ if @serde_name
40
+ serde_statement
41
+ else
42
+ delimited_statement
43
+ end
44
+ end
45
+
46
+ def delimited_statement
47
+ %(DELIMITED
48
+ FIELDS TERMINATED BY '#{@field_sep}'
49
+ COLLECTION ITEMS TERMINATED BY '#{@collection_sep}'
50
+ LINES TERMINATED BY '#{@line_sep}')
51
+ end
52
+
53
+ def serde_statement
54
+ %(SERDE '#{@serde_name}'\n#{serde_properties_statement})
55
+ end
56
+
57
+ def serde_properties_statement
58
+ return '' unless @serde_properties.any?
59
+ kvs = @serde_properties.map { |k,v| %("#{k}" = "#{v}") }.join(",\n")
60
+ %(WITH SERDEPROPERTIES (#{kvs}))
61
+ end
62
+
63
+ def replace_columns_statement
64
+ alter_columns_statement("REPLACE")
65
+ end
66
+
67
+ def add_columns_statement
68
+ alter_columns_statement("ADD")
69
+ end
70
+
71
+ def to_s
72
+ table_statement
73
+ end
74
+
75
+ private
76
+
77
+ def external
78
+ @location.nil? ? '' : 'EXTERNAL '
79
+ end
80
+
81
+ def table_statement
82
+ comment_string = (@comment.nil? ? '' : " COMMENT '#{@comment}'")
83
+ %[`#{@name}` #{column_statement}#{comment_string}\n#{partition_statement}]
84
+ end
85
+
86
+ def location
87
+ @location.nil? ? '' : "LOCATION '#{@location}'"
88
+ end
89
+
90
+ def alter_columns_statement(add_or_replace)
91
+ %[ALTER TABLE `#{name}` #{add_or_replace} COLUMNS #{column_statement}]
92
+ end
93
+
94
+ def column_statement
95
+ cols = @columns.join(",\n")
96
+ "(\n#{cols}\n)"
97
+ end
98
+
99
+ def partition_statement
100
+ return "" if @partitions.nil? || @partitions.empty?
101
+ cols = @partitions.join(",\n")
102
+ "PARTITIONED BY (\n#{cols}\n)"
103
+ end
104
+
105
+ class Column
106
+ attr_reader :name, :type, :comment
107
+ def initialize(name, type, comment=nil)
108
+ @name, @type, @comment = name, type, comment
109
+ end
110
+
111
+ def to_s
112
+ comment_string = @comment.nil? ? '' : " COMMENT '#{@comment}'"
113
+ "`#{@name}` #{@type.to_s.upcase}#{comment_string}"
114
+ end
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,3 @@
1
+ module RBHive
2
+ VERSION = '1.0.2.pre1-thrift0.9.1'
3
+ end
@@ -0,0 +1,700 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (0.9.0)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+ require_relative 'fb303_types'
9
+
10
+ module FacebookService
11
+ class Client
12
+ include ::Thrift::Client
13
+
14
+ def getName()
15
+ send_getName()
16
+ return recv_getName()
17
+ end
18
+
19
+ def send_getName()
20
+ send_message('getName', GetName_args)
21
+ end
22
+
23
+ def recv_getName()
24
+ result = receive_message(GetName_result)
25
+ return result.success unless result.success.nil?
26
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getName failed: unknown result')
27
+ end
28
+
29
+ def getVersion()
30
+ send_getVersion()
31
+ return recv_getVersion()
32
+ end
33
+
34
+ def send_getVersion()
35
+ send_message('getVersion', GetVersion_args)
36
+ end
37
+
38
+ def recv_getVersion()
39
+ result = receive_message(GetVersion_result)
40
+ return result.success unless result.success.nil?
41
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getVersion failed: unknown result')
42
+ end
43
+
44
+ def getStatus()
45
+ send_getStatus()
46
+ return recv_getStatus()
47
+ end
48
+
49
+ def send_getStatus()
50
+ send_message('getStatus', GetStatus_args)
51
+ end
52
+
53
+ def recv_getStatus()
54
+ result = receive_message(GetStatus_result)
55
+ return result.success unless result.success.nil?
56
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getStatus failed: unknown result')
57
+ end
58
+
59
+ def getStatusDetails()
60
+ send_getStatusDetails()
61
+ return recv_getStatusDetails()
62
+ end
63
+
64
+ def send_getStatusDetails()
65
+ send_message('getStatusDetails', GetStatusDetails_args)
66
+ end
67
+
68
+ def recv_getStatusDetails()
69
+ result = receive_message(GetStatusDetails_result)
70
+ return result.success unless result.success.nil?
71
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getStatusDetails failed: unknown result')
72
+ end
73
+
74
+ def getCounters()
75
+ send_getCounters()
76
+ return recv_getCounters()
77
+ end
78
+
79
+ def send_getCounters()
80
+ send_message('getCounters', GetCounters_args)
81
+ end
82
+
83
+ def recv_getCounters()
84
+ result = receive_message(GetCounters_result)
85
+ return result.success unless result.success.nil?
86
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getCounters failed: unknown result')
87
+ end
88
+
89
+ def getCounter(key)
90
+ send_getCounter(key)
91
+ return recv_getCounter()
92
+ end
93
+
94
+ def send_getCounter(key)
95
+ send_message('getCounter', GetCounter_args, :key => key)
96
+ end
97
+
98
+ def recv_getCounter()
99
+ result = receive_message(GetCounter_result)
100
+ return result.success unless result.success.nil?
101
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getCounter failed: unknown result')
102
+ end
103
+
104
+ def setOption(key, value)
105
+ send_setOption(key, value)
106
+ recv_setOption()
107
+ end
108
+
109
+ def send_setOption(key, value)
110
+ send_message('setOption', SetOption_args, :key => key, :value => value)
111
+ end
112
+
113
+ def recv_setOption()
114
+ result = receive_message(SetOption_result)
115
+ return
116
+ end
117
+
118
+ def getOption(key)
119
+ send_getOption(key)
120
+ return recv_getOption()
121
+ end
122
+
123
+ def send_getOption(key)
124
+ send_message('getOption', GetOption_args, :key => key)
125
+ end
126
+
127
+ def recv_getOption()
128
+ result = receive_message(GetOption_result)
129
+ return result.success unless result.success.nil?
130
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getOption failed: unknown result')
131
+ end
132
+
133
+ def getOptions()
134
+ send_getOptions()
135
+ return recv_getOptions()
136
+ end
137
+
138
+ def send_getOptions()
139
+ send_message('getOptions', GetOptions_args)
140
+ end
141
+
142
+ def recv_getOptions()
143
+ result = receive_message(GetOptions_result)
144
+ return result.success unless result.success.nil?
145
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getOptions failed: unknown result')
146
+ end
147
+
148
+ def getCpuProfile(profileDurationInSec)
149
+ send_getCpuProfile(profileDurationInSec)
150
+ return recv_getCpuProfile()
151
+ end
152
+
153
+ def send_getCpuProfile(profileDurationInSec)
154
+ send_message('getCpuProfile', GetCpuProfile_args, :profileDurationInSec => profileDurationInSec)
155
+ end
156
+
157
+ def recv_getCpuProfile()
158
+ result = receive_message(GetCpuProfile_result)
159
+ return result.success unless result.success.nil?
160
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'getCpuProfile failed: unknown result')
161
+ end
162
+
163
+ def aliveSince()
164
+ send_aliveSince()
165
+ return recv_aliveSince()
166
+ end
167
+
168
+ def send_aliveSince()
169
+ send_message('aliveSince', AliveSince_args)
170
+ end
171
+
172
+ def recv_aliveSince()
173
+ result = receive_message(AliveSince_result)
174
+ return result.success unless result.success.nil?
175
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'aliveSince failed: unknown result')
176
+ end
177
+
178
+ def reinitialize()
179
+ send_reinitialize()
180
+ end
181
+
182
+ def send_reinitialize()
183
+ send_message('reinitialize', Reinitialize_args)
184
+ end
185
+ def shutdown()
186
+ send_shutdown()
187
+ end
188
+
189
+ def send_shutdown()
190
+ send_message('shutdown', Shutdown_args)
191
+ end
192
+ end
193
+
194
+ class Processor
195
+ include ::Thrift::Processor
196
+
197
+ def process_getName(seqid, iprot, oprot)
198
+ args = read_args(iprot, GetName_args)
199
+ result = GetName_result.new()
200
+ result.success = @handler.getName()
201
+ write_result(result, oprot, 'getName', seqid)
202
+ end
203
+
204
+ def process_getVersion(seqid, iprot, oprot)
205
+ args = read_args(iprot, GetVersion_args)
206
+ result = GetVersion_result.new()
207
+ result.success = @handler.getVersion()
208
+ write_result(result, oprot, 'getVersion', seqid)
209
+ end
210
+
211
+ def process_getStatus(seqid, iprot, oprot)
212
+ args = read_args(iprot, GetStatus_args)
213
+ result = GetStatus_result.new()
214
+ result.success = @handler.getStatus()
215
+ write_result(result, oprot, 'getStatus', seqid)
216
+ end
217
+
218
+ def process_getStatusDetails(seqid, iprot, oprot)
219
+ args = read_args(iprot, GetStatusDetails_args)
220
+ result = GetStatusDetails_result.new()
221
+ result.success = @handler.getStatusDetails()
222
+ write_result(result, oprot, 'getStatusDetails', seqid)
223
+ end
224
+
225
+ def process_getCounters(seqid, iprot, oprot)
226
+ args = read_args(iprot, GetCounters_args)
227
+ result = GetCounters_result.new()
228
+ result.success = @handler.getCounters()
229
+ write_result(result, oprot, 'getCounters', seqid)
230
+ end
231
+
232
+ def process_getCounter(seqid, iprot, oprot)
233
+ args = read_args(iprot, GetCounter_args)
234
+ result = GetCounter_result.new()
235
+ result.success = @handler.getCounter(args.key)
236
+ write_result(result, oprot, 'getCounter', seqid)
237
+ end
238
+
239
+ def process_setOption(seqid, iprot, oprot)
240
+ args = read_args(iprot, SetOption_args)
241
+ result = SetOption_result.new()
242
+ @handler.setOption(args.key, args.value)
243
+ write_result(result, oprot, 'setOption', seqid)
244
+ end
245
+
246
+ def process_getOption(seqid, iprot, oprot)
247
+ args = read_args(iprot, GetOption_args)
248
+ result = GetOption_result.new()
249
+ result.success = @handler.getOption(args.key)
250
+ write_result(result, oprot, 'getOption', seqid)
251
+ end
252
+
253
+ def process_getOptions(seqid, iprot, oprot)
254
+ args = read_args(iprot, GetOptions_args)
255
+ result = GetOptions_result.new()
256
+ result.success = @handler.getOptions()
257
+ write_result(result, oprot, 'getOptions', seqid)
258
+ end
259
+
260
+ def process_getCpuProfile(seqid, iprot, oprot)
261
+ args = read_args(iprot, GetCpuProfile_args)
262
+ result = GetCpuProfile_result.new()
263
+ result.success = @handler.getCpuProfile(args.profileDurationInSec)
264
+ write_result(result, oprot, 'getCpuProfile', seqid)
265
+ end
266
+
267
+ def process_aliveSince(seqid, iprot, oprot)
268
+ args = read_args(iprot, AliveSince_args)
269
+ result = AliveSince_result.new()
270
+ result.success = @handler.aliveSince()
271
+ write_result(result, oprot, 'aliveSince', seqid)
272
+ end
273
+
274
+ def process_reinitialize(seqid, iprot, oprot)
275
+ args = read_args(iprot, Reinitialize_args)
276
+ @handler.reinitialize()
277
+ return
278
+ end
279
+
280
+ def process_shutdown(seqid, iprot, oprot)
281
+ args = read_args(iprot, Shutdown_args)
282
+ @handler.shutdown()
283
+ return
284
+ end
285
+
286
+ end
287
+
288
+ # HELPER FUNCTIONS AND STRUCTURES
289
+
290
+ class GetName_args
291
+ include ::Thrift::Struct, ::Thrift::Struct_Union
292
+
293
+ FIELDS = {
294
+
295
+ }
296
+
297
+ def struct_fields; FIELDS; end
298
+
299
+ def validate
300
+ end
301
+
302
+ ::Thrift::Struct.generate_accessors self
303
+ end
304
+
305
+ class GetName_result
306
+ include ::Thrift::Struct, ::Thrift::Struct_Union
307
+ SUCCESS = 0
308
+
309
+ FIELDS = {
310
+ SUCCESS => {:type => ::Thrift::Types::STRING, :name => 'success'}
311
+ }
312
+
313
+ def struct_fields; FIELDS; end
314
+
315
+ def validate
316
+ end
317
+
318
+ ::Thrift::Struct.generate_accessors self
319
+ end
320
+
321
+ class GetVersion_args
322
+ include ::Thrift::Struct, ::Thrift::Struct_Union
323
+
324
+ FIELDS = {
325
+
326
+ }
327
+
328
+ def struct_fields; FIELDS; end
329
+
330
+ def validate
331
+ end
332
+
333
+ ::Thrift::Struct.generate_accessors self
334
+ end
335
+
336
+ class GetVersion_result
337
+ include ::Thrift::Struct, ::Thrift::Struct_Union
338
+ SUCCESS = 0
339
+
340
+ FIELDS = {
341
+ SUCCESS => {:type => ::Thrift::Types::STRING, :name => 'success'}
342
+ }
343
+
344
+ def struct_fields; FIELDS; end
345
+
346
+ def validate
347
+ end
348
+
349
+ ::Thrift::Struct.generate_accessors self
350
+ end
351
+
352
+ class GetStatus_args
353
+ include ::Thrift::Struct, ::Thrift::Struct_Union
354
+
355
+ FIELDS = {
356
+
357
+ }
358
+
359
+ def struct_fields; FIELDS; end
360
+
361
+ def validate
362
+ end
363
+
364
+ ::Thrift::Struct.generate_accessors self
365
+ end
366
+
367
+ class GetStatus_result
368
+ include ::Thrift::Struct, ::Thrift::Struct_Union
369
+ SUCCESS = 0
370
+
371
+ FIELDS = {
372
+ SUCCESS => {:type => ::Thrift::Types::I32, :name => 'success', :enum_class => ::Fb_status}
373
+ }
374
+
375
+ def struct_fields; FIELDS; end
376
+
377
+ def validate
378
+ unless @success.nil? || ::Fb_status::VALID_VALUES.include?(@success)
379
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field success!')
380
+ end
381
+ end
382
+
383
+ ::Thrift::Struct.generate_accessors self
384
+ end
385
+
386
+ class GetStatusDetails_args
387
+ include ::Thrift::Struct, ::Thrift::Struct_Union
388
+
389
+ FIELDS = {
390
+
391
+ }
392
+
393
+ def struct_fields; FIELDS; end
394
+
395
+ def validate
396
+ end
397
+
398
+ ::Thrift::Struct.generate_accessors self
399
+ end
400
+
401
+ class GetStatusDetails_result
402
+ include ::Thrift::Struct, ::Thrift::Struct_Union
403
+ SUCCESS = 0
404
+
405
+ FIELDS = {
406
+ SUCCESS => {:type => ::Thrift::Types::STRING, :name => 'success'}
407
+ }
408
+
409
+ def struct_fields; FIELDS; end
410
+
411
+ def validate
412
+ end
413
+
414
+ ::Thrift::Struct.generate_accessors self
415
+ end
416
+
417
+ class GetCounters_args
418
+ include ::Thrift::Struct, ::Thrift::Struct_Union
419
+
420
+ FIELDS = {
421
+
422
+ }
423
+
424
+ def struct_fields; FIELDS; end
425
+
426
+ def validate
427
+ end
428
+
429
+ ::Thrift::Struct.generate_accessors self
430
+ end
431
+
432
+ class GetCounters_result
433
+ include ::Thrift::Struct, ::Thrift::Struct_Union
434
+ SUCCESS = 0
435
+
436
+ FIELDS = {
437
+ SUCCESS => {:type => ::Thrift::Types::MAP, :name => 'success', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::I64}}
438
+ }
439
+
440
+ def struct_fields; FIELDS; end
441
+
442
+ def validate
443
+ end
444
+
445
+ ::Thrift::Struct.generate_accessors self
446
+ end
447
+
448
+ class GetCounter_args
449
+ include ::Thrift::Struct, ::Thrift::Struct_Union
450
+ KEY = 1
451
+
452
+ FIELDS = {
453
+ KEY => {:type => ::Thrift::Types::STRING, :name => 'key'}
454
+ }
455
+
456
+ def struct_fields; FIELDS; end
457
+
458
+ def validate
459
+ end
460
+
461
+ ::Thrift::Struct.generate_accessors self
462
+ end
463
+
464
+ class GetCounter_result
465
+ include ::Thrift::Struct, ::Thrift::Struct_Union
466
+ SUCCESS = 0
467
+
468
+ FIELDS = {
469
+ SUCCESS => {:type => ::Thrift::Types::I64, :name => 'success'}
470
+ }
471
+
472
+ def struct_fields; FIELDS; end
473
+
474
+ def validate
475
+ end
476
+
477
+ ::Thrift::Struct.generate_accessors self
478
+ end
479
+
480
+ class SetOption_args
481
+ include ::Thrift::Struct, ::Thrift::Struct_Union
482
+ KEY = 1
483
+ VALUE = 2
484
+
485
+ FIELDS = {
486
+ KEY => {:type => ::Thrift::Types::STRING, :name => 'key'},
487
+ VALUE => {:type => ::Thrift::Types::STRING, :name => 'value'}
488
+ }
489
+
490
+ def struct_fields; FIELDS; end
491
+
492
+ def validate
493
+ end
494
+
495
+ ::Thrift::Struct.generate_accessors self
496
+ end
497
+
498
+ class SetOption_result
499
+ include ::Thrift::Struct, ::Thrift::Struct_Union
500
+
501
+ FIELDS = {
502
+
503
+ }
504
+
505
+ def struct_fields; FIELDS; end
506
+
507
+ def validate
508
+ end
509
+
510
+ ::Thrift::Struct.generate_accessors self
511
+ end
512
+
513
+ class GetOption_args
514
+ include ::Thrift::Struct, ::Thrift::Struct_Union
515
+ KEY = 1
516
+
517
+ FIELDS = {
518
+ KEY => {:type => ::Thrift::Types::STRING, :name => 'key'}
519
+ }
520
+
521
+ def struct_fields; FIELDS; end
522
+
523
+ def validate
524
+ end
525
+
526
+ ::Thrift::Struct.generate_accessors self
527
+ end
528
+
529
+ class GetOption_result
530
+ include ::Thrift::Struct, ::Thrift::Struct_Union
531
+ SUCCESS = 0
532
+
533
+ FIELDS = {
534
+ SUCCESS => {:type => ::Thrift::Types::STRING, :name => 'success'}
535
+ }
536
+
537
+ def struct_fields; FIELDS; end
538
+
539
+ def validate
540
+ end
541
+
542
+ ::Thrift::Struct.generate_accessors self
543
+ end
544
+
545
+ class GetOptions_args
546
+ include ::Thrift::Struct, ::Thrift::Struct_Union
547
+
548
+ FIELDS = {
549
+
550
+ }
551
+
552
+ def struct_fields; FIELDS; end
553
+
554
+ def validate
555
+ end
556
+
557
+ ::Thrift::Struct.generate_accessors self
558
+ end
559
+
560
+ class GetOptions_result
561
+ include ::Thrift::Struct, ::Thrift::Struct_Union
562
+ SUCCESS = 0
563
+
564
+ FIELDS = {
565
+ SUCCESS => {:type => ::Thrift::Types::MAP, :name => 'success', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}
566
+ }
567
+
568
+ def struct_fields; FIELDS; end
569
+
570
+ def validate
571
+ end
572
+
573
+ ::Thrift::Struct.generate_accessors self
574
+ end
575
+
576
+ class GetCpuProfile_args
577
+ include ::Thrift::Struct, ::Thrift::Struct_Union
578
+ PROFILEDURATIONINSEC = 1
579
+
580
+ FIELDS = {
581
+ PROFILEDURATIONINSEC => {:type => ::Thrift::Types::I32, :name => 'profileDurationInSec'}
582
+ }
583
+
584
+ def struct_fields; FIELDS; end
585
+
586
+ def validate
587
+ end
588
+
589
+ ::Thrift::Struct.generate_accessors self
590
+ end
591
+
592
+ class GetCpuProfile_result
593
+ include ::Thrift::Struct, ::Thrift::Struct_Union
594
+ SUCCESS = 0
595
+
596
+ FIELDS = {
597
+ SUCCESS => {:type => ::Thrift::Types::STRING, :name => 'success'}
598
+ }
599
+
600
+ def struct_fields; FIELDS; end
601
+
602
+ def validate
603
+ end
604
+
605
+ ::Thrift::Struct.generate_accessors self
606
+ end
607
+
608
+ class AliveSince_args
609
+ include ::Thrift::Struct, ::Thrift::Struct_Union
610
+
611
+ FIELDS = {
612
+
613
+ }
614
+
615
+ def struct_fields; FIELDS; end
616
+
617
+ def validate
618
+ end
619
+
620
+ ::Thrift::Struct.generate_accessors self
621
+ end
622
+
623
+ class AliveSince_result
624
+ include ::Thrift::Struct, ::Thrift::Struct_Union
625
+ SUCCESS = 0
626
+
627
+ FIELDS = {
628
+ SUCCESS => {:type => ::Thrift::Types::I64, :name => 'success'}
629
+ }
630
+
631
+ def struct_fields; FIELDS; end
632
+
633
+ def validate
634
+ end
635
+
636
+ ::Thrift::Struct.generate_accessors self
637
+ end
638
+
639
+ class Reinitialize_args
640
+ include ::Thrift::Struct, ::Thrift::Struct_Union
641
+
642
+ FIELDS = {
643
+
644
+ }
645
+
646
+ def struct_fields; FIELDS; end
647
+
648
+ def validate
649
+ end
650
+
651
+ ::Thrift::Struct.generate_accessors self
652
+ end
653
+
654
+ class Reinitialize_result
655
+ include ::Thrift::Struct, ::Thrift::Struct_Union
656
+
657
+ FIELDS = {
658
+
659
+ }
660
+
661
+ def struct_fields; FIELDS; end
662
+
663
+ def validate
664
+ end
665
+
666
+ ::Thrift::Struct.generate_accessors self
667
+ end
668
+
669
+ class Shutdown_args
670
+ include ::Thrift::Struct, ::Thrift::Struct_Union
671
+
672
+ FIELDS = {
673
+
674
+ }
675
+
676
+ def struct_fields; FIELDS; end
677
+
678
+ def validate
679
+ end
680
+
681
+ ::Thrift::Struct.generate_accessors self
682
+ end
683
+
684
+ class Shutdown_result
685
+ include ::Thrift::Struct, ::Thrift::Struct_Union
686
+
687
+ FIELDS = {
688
+
689
+ }
690
+
691
+ def struct_fields; FIELDS; end
692
+
693
+ def validate
694
+ end
695
+
696
+ ::Thrift::Struct.generate_accessors self
697
+ end
698
+
699
+ end
700
+