File Coverage

gen-perl/ThriftTest/ThriftTest.pm
Criterion Covered Total %
statement 271 3227 8.4
branch 16 716 2.2
condition 2 88 2.2
subroutine 66 366 18.0
pod n/a
total 355 4397 8.0


line stmt bran cond sub pod time code
1             #
2             # Autogenerated by Thrift Compiler (0.14.0)
3             #
4             # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5             #
6 1     1   1090 use 5.10.0;
  1         4  
7 1     1   6 use strict;
  1         2  
  1         26  
8 1     1   5 use warnings;
  1         3  
  1         32  
9 1     1   5 use Thrift::Exception;
  1         3  
  1         32  
10 1     1   6 use Thrift::MessageType;
  1         2  
  1         19  
11 1     1   4 use Thrift::Type;
  1         3  
  1         25  
12              
13 1     1   729 use ThriftTest::Types;
  1         5  
  1         92  
14              
15              
16             # HELPER FUNCTIONS AND STRUCTURES
17              
18             package ThriftTest::ThriftTest_testVoid_args;
19 1     1   13 use base qw(Class::Accessor);
  1         1  
  1         452  
20              
21             sub new {
22 0     0   0 my $classname = shift;
23 0         0 my $self = {};
24 0   0     0 my $vals = shift || {};
25 0         0 return bless ($self, $classname);
26             }
27              
28             sub getName {
29 0     0   0 return 'ThriftTest_testVoid_args';
30             }
31              
32             sub read {
33 0     0   0 my ($self, $input) = @_;
34 0         0 my $xfer = 0;
35 0         0 my $fname;
36 0         0 my $ftype = 0;
37 0         0 my $fid = 0;
38 0         0 $xfer += $input->readStructBegin(\$fname);
39 0         0 while (1)
40             {
41 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
42 0 0       0 if ($ftype == Thrift::TType::STOP) {
43 0         0 last;
44             }
45 0         0 SWITCH: for($fid)
46             {
47 0         0 $xfer += $input->skip($ftype);
48             }
49 0         0 $xfer += $input->readFieldEnd();
50             }
51 0         0 $xfer += $input->readStructEnd();
52 0         0 return $xfer;
53             }
54              
55             sub write {
56 0     0   0 my ($self, $output) = @_;
57 0         0 my $xfer = 0;
58 0         0 $xfer += $output->writeStructBegin('ThriftTest_testVoid_args');
59 0         0 $xfer += $output->writeFieldStop();
60 0         0 $xfer += $output->writeStructEnd();
61 0         0 return $xfer;
62             }
63              
64             package ThriftTest::ThriftTest_testVoid_result;
65 1     1   7 use base qw(Class::Accessor);
  1         4  
  1         339  
66              
67             sub new {
68 0     0   0 my $classname = shift;
69 0         0 my $self = {};
70 0   0     0 my $vals = shift || {};
71 0         0 return bless ($self, $classname);
72             }
73              
74             sub getName {
75 0     0   0 return 'ThriftTest_testVoid_result';
76             }
77              
78             sub read {
79 0     0   0 my ($self, $input) = @_;
80 0         0 my $xfer = 0;
81 0         0 my $fname;
82 0         0 my $ftype = 0;
83 0         0 my $fid = 0;
84 0         0 $xfer += $input->readStructBegin(\$fname);
85 0         0 while (1)
86             {
87 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
88 0 0       0 if ($ftype == Thrift::TType::STOP) {
89 0         0 last;
90             }
91 0         0 SWITCH: for($fid)
92             {
93 0         0 $xfer += $input->skip($ftype);
94             }
95 0         0 $xfer += $input->readFieldEnd();
96             }
97 0         0 $xfer += $input->readStructEnd();
98 0         0 return $xfer;
99             }
100              
101             sub write {
102 0     0   0 my ($self, $output) = @_;
103 0         0 my $xfer = 0;
104 0         0 $xfer += $output->writeStructBegin('ThriftTest_testVoid_result');
105 0         0 $xfer += $output->writeFieldStop();
106 0         0 $xfer += $output->writeStructEnd();
107 0         0 return $xfer;
108             }
109              
110             package ThriftTest::ThriftTest_testString_args;
111 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         574  
112             ThriftTest::ThriftTest_testString_args->mk_accessors( qw( thing ) );
113              
114             sub new {
115 4     4   7 my $classname = shift;
116 4         8 my $self = {};
117 4   50     17 my $vals = shift || {};
118 4         10 $self->{thing} = undef;
119 4 50       14 if (UNIVERSAL::isa($vals,'HASH')) {
120 4 50       11 if (defined $vals->{thing}) {
121 0         0 $self->{thing} = $vals->{thing};
122             }
123             }
124 4         11 return bless ($self, $classname);
125             }
126              
127             sub getName {
128 0     0   0 return 'ThriftTest_testString_args';
129             }
130              
131             sub read {
132 2     2   6 my ($self, $input) = @_;
133 2         3 my $xfer = 0;
134 2         3 my $fname;
135 2         4 my $ftype = 0;
136 2         4 my $fid = 0;
137 2         7 $xfer += $input->readStructBegin(\$fname);
138 2         3 while (1)
139             {
140 4         61 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
141 4 100       9 if ($ftype == Thrift::TType::STOP) {
142 2         3 last;
143             }
144 2         6 SWITCH: for($fid)
145             {
146 2 50       13 /^1$/ && do{ if ($ftype == Thrift::TType::STRING) {
  2 50       6  
147 2         7 $xfer += $input->readString(\$self->{thing});
148             } else {
149 0         0 $xfer += $input->skip($ftype);
150             }
151 2         5 last; };
152 0         0 $xfer += $input->skip($ftype);
153             }
154 2         6 $xfer += $input->readFieldEnd();
155             }
156 2         6 $xfer += $input->readStructEnd();
157 2         6 return $xfer;
158             }
159              
160             sub write {
161 2     2   5 my ($self, $output) = @_;
162 2         3 my $xfer = 0;
163 2         7 $xfer += $output->writeStructBegin('ThriftTest_testString_args');
164 2 50       7 if (defined $self->{thing}) {
165 2         9 $xfer += $output->writeFieldBegin('thing', Thrift::TType::STRING, 1);
166 2         17 $xfer += $output->writeString($self->{thing});
167 2         6 $xfer += $output->writeFieldEnd();
168             }
169 2         6 $xfer += $output->writeFieldStop();
170 2         7 $xfer += $output->writeStructEnd();
171 2         3 return $xfer;
172             }
173              
174             package ThriftTest::ThriftTest_testString_result;
175 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         493  
176             ThriftTest::ThriftTest_testString_result->mk_accessors( qw( success ) );
177              
178             sub new {
179 4     4   257 my $classname = shift;
180 4         10 my $self = {};
181 4   50     18 my $vals = shift || {};
182 4         10 $self->{success} = undef;
183 4 50       15 if (UNIVERSAL::isa($vals,'HASH')) {
184 4 50       9 if (defined $vals->{success}) {
185 0         0 $self->{success} = $vals->{success};
186             }
187             }
188 4         12 return bless ($self, $classname);
189             }
190              
191             sub getName {
192 0     0   0 return 'ThriftTest_testString_result';
193             }
194              
195             sub read {
196 2     2   10 my ($self, $input) = @_;
197 2         5 my $xfer = 0;
198 2         2 my $fname;
199 2         3 my $ftype = 0;
200 2         4 my $fid = 0;
201 2         9 $xfer += $input->readStructBegin(\$fname);
202 2         3 while (1)
203             {
204 4         12 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
205 4 100       10 if ($ftype == Thrift::TType::STOP) {
206 2         3 last;
207             }
208 2         4 SWITCH: for($fid)
209             {
210 2 50       12 /^0$/ && do{ if ($ftype == Thrift::TType::STRING) {
  2 50       6  
211 2         5 $xfer += $input->readString(\$self->{success});
212             } else {
213 0         0 $xfer += $input->skip($ftype);
214             }
215 2         5 last; };
216 0         0 $xfer += $input->skip($ftype);
217             }
218 2         6 $xfer += $input->readFieldEnd();
219             }
220 2         6 $xfer += $input->readStructEnd();
221 2         5 return $xfer;
222             }
223              
224             sub write {
225 2     2   4 my ($self, $output) = @_;
226 2         3 my $xfer = 0;
227 2         6 $xfer += $output->writeStructBegin('ThriftTest_testString_result');
228 2 50       7 if (defined $self->{success}) {
229 2         6 $xfer += $output->writeFieldBegin('success', Thrift::TType::STRING, 0);
230 2         5 $xfer += $output->writeString($self->{success});
231 2         5 $xfer += $output->writeFieldEnd();
232             }
233 2         5 $xfer += $output->writeFieldStop();
234 2         6 $xfer += $output->writeStructEnd();
235 2         3 return $xfer;
236             }
237              
238             package ThriftTest::ThriftTest_testBool_args;
239 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         499  
240             ThriftTest::ThriftTest_testBool_args->mk_accessors( qw( thing ) );
241              
242             sub new {
243 0     0   0 my $classname = shift;
244 0         0 my $self = {};
245 0   0     0 my $vals = shift || {};
246 0         0 $self->{thing} = undef;
247 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
248 0 0       0 if (defined $vals->{thing}) {
249 0         0 $self->{thing} = $vals->{thing};
250             }
251             }
252 0         0 return bless ($self, $classname);
253             }
254              
255             sub getName {
256 0     0   0 return 'ThriftTest_testBool_args';
257             }
258              
259             sub read {
260 0     0   0 my ($self, $input) = @_;
261 0         0 my $xfer = 0;
262 0         0 my $fname;
263 0         0 my $ftype = 0;
264 0         0 my $fid = 0;
265 0         0 $xfer += $input->readStructBegin(\$fname);
266 0         0 while (1)
267             {
268 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
269 0 0       0 if ($ftype == Thrift::TType::STOP) {
270 0         0 last;
271             }
272 0         0 SWITCH: for($fid)
273             {
274 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::BOOL) {
  0 0       0  
275 0         0 $xfer += $input->readBool(\$self->{thing});
276             } else {
277 0         0 $xfer += $input->skip($ftype);
278             }
279 0         0 last; };
280 0         0 $xfer += $input->skip($ftype);
281             }
282 0         0 $xfer += $input->readFieldEnd();
283             }
284 0         0 $xfer += $input->readStructEnd();
285 0         0 return $xfer;
286             }
287              
288             sub write {
289 0     0   0 my ($self, $output) = @_;
290 0         0 my $xfer = 0;
291 0         0 $xfer += $output->writeStructBegin('ThriftTest_testBool_args');
292 0 0       0 if (defined $self->{thing}) {
293 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::BOOL, 1);
294 0         0 $xfer += $output->writeBool($self->{thing});
295 0         0 $xfer += $output->writeFieldEnd();
296             }
297 0         0 $xfer += $output->writeFieldStop();
298 0         0 $xfer += $output->writeStructEnd();
299 0         0 return $xfer;
300             }
301              
302             package ThriftTest::ThriftTest_testBool_result;
303 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         535  
304             ThriftTest::ThriftTest_testBool_result->mk_accessors( qw( success ) );
305              
306             sub new {
307 0     0   0 my $classname = shift;
308 0         0 my $self = {};
309 0   0     0 my $vals = shift || {};
310 0         0 $self->{success} = undef;
311 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
312 0 0       0 if (defined $vals->{success}) {
313 0         0 $self->{success} = $vals->{success};
314             }
315             }
316 0         0 return bless ($self, $classname);
317             }
318              
319             sub getName {
320 0     0   0 return 'ThriftTest_testBool_result';
321             }
322              
323             sub read {
324 0     0   0 my ($self, $input) = @_;
325 0         0 my $xfer = 0;
326 0         0 my $fname;
327 0         0 my $ftype = 0;
328 0         0 my $fid = 0;
329 0         0 $xfer += $input->readStructBegin(\$fname);
330 0         0 while (1)
331             {
332 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
333 0 0       0 if ($ftype == Thrift::TType::STOP) {
334 0         0 last;
335             }
336 0         0 SWITCH: for($fid)
337             {
338 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::BOOL) {
  0 0       0  
339 0         0 $xfer += $input->readBool(\$self->{success});
340             } else {
341 0         0 $xfer += $input->skip($ftype);
342             }
343 0         0 last; };
344 0         0 $xfer += $input->skip($ftype);
345             }
346 0         0 $xfer += $input->readFieldEnd();
347             }
348 0         0 $xfer += $input->readStructEnd();
349 0         0 return $xfer;
350             }
351              
352             sub write {
353 0     0   0 my ($self, $output) = @_;
354 0         0 my $xfer = 0;
355 0         0 $xfer += $output->writeStructBegin('ThriftTest_testBool_result');
356 0 0       0 if (defined $self->{success}) {
357 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::BOOL, 0);
358 0         0 $xfer += $output->writeBool($self->{success});
359 0         0 $xfer += $output->writeFieldEnd();
360             }
361 0         0 $xfer += $output->writeFieldStop();
362 0         0 $xfer += $output->writeStructEnd();
363 0         0 return $xfer;
364             }
365              
366             package ThriftTest::ThriftTest_testByte_args;
367 1     1   7 use base qw(Class::Accessor);
  1         3  
  1         491  
368             ThriftTest::ThriftTest_testByte_args->mk_accessors( qw( thing ) );
369              
370             sub new {
371 0     0   0 my $classname = shift;
372 0         0 my $self = {};
373 0   0     0 my $vals = shift || {};
374 0         0 $self->{thing} = undef;
375 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
376 0 0       0 if (defined $vals->{thing}) {
377 0         0 $self->{thing} = $vals->{thing};
378             }
379             }
380 0         0 return bless ($self, $classname);
381             }
382              
383             sub getName {
384 0     0   0 return 'ThriftTest_testByte_args';
385             }
386              
387             sub read {
388 0     0   0 my ($self, $input) = @_;
389 0         0 my $xfer = 0;
390 0         0 my $fname;
391 0         0 my $ftype = 0;
392 0         0 my $fid = 0;
393 0         0 $xfer += $input->readStructBegin(\$fname);
394 0         0 while (1)
395             {
396 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
397 0 0       0 if ($ftype == Thrift::TType::STOP) {
398 0         0 last;
399             }
400 0         0 SWITCH: for($fid)
401             {
402 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::BYTE) {
  0 0       0  
403 0         0 $xfer += $input->readByte(\$self->{thing});
404             } else {
405 0         0 $xfer += $input->skip($ftype);
406             }
407 0         0 last; };
408 0         0 $xfer += $input->skip($ftype);
409             }
410 0         0 $xfer += $input->readFieldEnd();
411             }
412 0         0 $xfer += $input->readStructEnd();
413 0         0 return $xfer;
414             }
415              
416             sub write {
417 0     0   0 my ($self, $output) = @_;
418 0         0 my $xfer = 0;
419 0         0 $xfer += $output->writeStructBegin('ThriftTest_testByte_args');
420 0 0       0 if (defined $self->{thing}) {
421 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::BYTE, 1);
422 0         0 $xfer += $output->writeByte($self->{thing});
423 0         0 $xfer += $output->writeFieldEnd();
424             }
425 0         0 $xfer += $output->writeFieldStop();
426 0         0 $xfer += $output->writeStructEnd();
427 0         0 return $xfer;
428             }
429              
430             package ThriftTest::ThriftTest_testByte_result;
431 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         537  
432             ThriftTest::ThriftTest_testByte_result->mk_accessors( qw( success ) );
433              
434             sub new {
435 0     0   0 my $classname = shift;
436 0         0 my $self = {};
437 0   0     0 my $vals = shift || {};
438 0         0 $self->{success} = undef;
439 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
440 0 0       0 if (defined $vals->{success}) {
441 0         0 $self->{success} = $vals->{success};
442             }
443             }
444 0         0 return bless ($self, $classname);
445             }
446              
447             sub getName {
448 0     0   0 return 'ThriftTest_testByte_result';
449             }
450              
451             sub read {
452 0     0   0 my ($self, $input) = @_;
453 0         0 my $xfer = 0;
454 0         0 my $fname;
455 0         0 my $ftype = 0;
456 0         0 my $fid = 0;
457 0         0 $xfer += $input->readStructBegin(\$fname);
458 0         0 while (1)
459             {
460 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
461 0 0       0 if ($ftype == Thrift::TType::STOP) {
462 0         0 last;
463             }
464 0         0 SWITCH: for($fid)
465             {
466 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::BYTE) {
  0 0       0  
467 0         0 $xfer += $input->readByte(\$self->{success});
468             } else {
469 0         0 $xfer += $input->skip($ftype);
470             }
471 0         0 last; };
472 0         0 $xfer += $input->skip($ftype);
473             }
474 0         0 $xfer += $input->readFieldEnd();
475             }
476 0         0 $xfer += $input->readStructEnd();
477 0         0 return $xfer;
478             }
479              
480             sub write {
481 0     0   0 my ($self, $output) = @_;
482 0         0 my $xfer = 0;
483 0         0 $xfer += $output->writeStructBegin('ThriftTest_testByte_result');
484 0 0       0 if (defined $self->{success}) {
485 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::BYTE, 0);
486 0         0 $xfer += $output->writeByte($self->{success});
487 0         0 $xfer += $output->writeFieldEnd();
488             }
489 0         0 $xfer += $output->writeFieldStop();
490 0         0 $xfer += $output->writeStructEnd();
491 0         0 return $xfer;
492             }
493              
494             package ThriftTest::ThriftTest_testI32_args;
495 1     1   10 use base qw(Class::Accessor);
  1         2  
  1         518  
496             ThriftTest::ThriftTest_testI32_args->mk_accessors( qw( thing ) );
497              
498             sub new {
499 0     0   0 my $classname = shift;
500 0         0 my $self = {};
501 0   0     0 my $vals = shift || {};
502 0         0 $self->{thing} = undef;
503 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
504 0 0       0 if (defined $vals->{thing}) {
505 0         0 $self->{thing} = $vals->{thing};
506             }
507             }
508 0         0 return bless ($self, $classname);
509             }
510              
511             sub getName {
512 0     0   0 return 'ThriftTest_testI32_args';
513             }
514              
515             sub read {
516 0     0   0 my ($self, $input) = @_;
517 0         0 my $xfer = 0;
518 0         0 my $fname;
519 0         0 my $ftype = 0;
520 0         0 my $fid = 0;
521 0         0 $xfer += $input->readStructBegin(\$fname);
522 0         0 while (1)
523             {
524 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
525 0 0       0 if ($ftype == Thrift::TType::STOP) {
526 0         0 last;
527             }
528 0         0 SWITCH: for($fid)
529             {
530 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
531 0         0 $xfer += $input->readI32(\$self->{thing});
532             } else {
533 0         0 $xfer += $input->skip($ftype);
534             }
535 0         0 last; };
536 0         0 $xfer += $input->skip($ftype);
537             }
538 0         0 $xfer += $input->readFieldEnd();
539             }
540 0         0 $xfer += $input->readStructEnd();
541 0         0 return $xfer;
542             }
543              
544             sub write {
545 0     0   0 my ($self, $output) = @_;
546 0         0 my $xfer = 0;
547 0         0 $xfer += $output->writeStructBegin('ThriftTest_testI32_args');
548 0 0       0 if (defined $self->{thing}) {
549 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::I32, 1);
550 0         0 $xfer += $output->writeI32($self->{thing});
551 0         0 $xfer += $output->writeFieldEnd();
552             }
553 0         0 $xfer += $output->writeFieldStop();
554 0         0 $xfer += $output->writeStructEnd();
555 0         0 return $xfer;
556             }
557              
558             package ThriftTest::ThriftTest_testI32_result;
559 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         502  
560             ThriftTest::ThriftTest_testI32_result->mk_accessors( qw( success ) );
561              
562             sub new {
563 0     0   0 my $classname = shift;
564 0         0 my $self = {};
565 0   0     0 my $vals = shift || {};
566 0         0 $self->{success} = undef;
567 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
568 0 0       0 if (defined $vals->{success}) {
569 0         0 $self->{success} = $vals->{success};
570             }
571             }
572 0         0 return bless ($self, $classname);
573             }
574              
575             sub getName {
576 0     0   0 return 'ThriftTest_testI32_result';
577             }
578              
579             sub read {
580 0     0   0 my ($self, $input) = @_;
581 0         0 my $xfer = 0;
582 0         0 my $fname;
583 0         0 my $ftype = 0;
584 0         0 my $fid = 0;
585 0         0 $xfer += $input->readStructBegin(\$fname);
586 0         0 while (1)
587             {
588 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
589 0 0       0 if ($ftype == Thrift::TType::STOP) {
590 0         0 last;
591             }
592 0         0 SWITCH: for($fid)
593             {
594 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
595 0         0 $xfer += $input->readI32(\$self->{success});
596             } else {
597 0         0 $xfer += $input->skip($ftype);
598             }
599 0         0 last; };
600 0         0 $xfer += $input->skip($ftype);
601             }
602 0         0 $xfer += $input->readFieldEnd();
603             }
604 0         0 $xfer += $input->readStructEnd();
605 0         0 return $xfer;
606             }
607              
608             sub write {
609 0     0   0 my ($self, $output) = @_;
610 0         0 my $xfer = 0;
611 0         0 $xfer += $output->writeStructBegin('ThriftTest_testI32_result');
612 0 0       0 if (defined $self->{success}) {
613 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::I32, 0);
614 0         0 $xfer += $output->writeI32($self->{success});
615 0         0 $xfer += $output->writeFieldEnd();
616             }
617 0         0 $xfer += $output->writeFieldStop();
618 0         0 $xfer += $output->writeStructEnd();
619 0         0 return $xfer;
620             }
621              
622             package ThriftTest::ThriftTest_testI64_args;
623 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         512  
624             ThriftTest::ThriftTest_testI64_args->mk_accessors( qw( thing ) );
625              
626             sub new {
627 0     0   0 my $classname = shift;
628 0         0 my $self = {};
629 0   0     0 my $vals = shift || {};
630 0         0 $self->{thing} = undef;
631 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
632 0 0       0 if (defined $vals->{thing}) {
633 0         0 $self->{thing} = $vals->{thing};
634             }
635             }
636 0         0 return bless ($self, $classname);
637             }
638              
639             sub getName {
640 0     0   0 return 'ThriftTest_testI64_args';
641             }
642              
643             sub read {
644 0     0   0 my ($self, $input) = @_;
645 0         0 my $xfer = 0;
646 0         0 my $fname;
647 0         0 my $ftype = 0;
648 0         0 my $fid = 0;
649 0         0 $xfer += $input->readStructBegin(\$fname);
650 0         0 while (1)
651             {
652 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
653 0 0       0 if ($ftype == Thrift::TType::STOP) {
654 0         0 last;
655             }
656 0         0 SWITCH: for($fid)
657             {
658 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::I64) {
  0 0       0  
659 0         0 $xfer += $input->readI64(\$self->{thing});
660             } else {
661 0         0 $xfer += $input->skip($ftype);
662             }
663 0         0 last; };
664 0         0 $xfer += $input->skip($ftype);
665             }
666 0         0 $xfer += $input->readFieldEnd();
667             }
668 0         0 $xfer += $input->readStructEnd();
669 0         0 return $xfer;
670             }
671              
672             sub write {
673 0     0   0 my ($self, $output) = @_;
674 0         0 my $xfer = 0;
675 0         0 $xfer += $output->writeStructBegin('ThriftTest_testI64_args');
676 0 0       0 if (defined $self->{thing}) {
677 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::I64, 1);
678 0         0 $xfer += $output->writeI64($self->{thing});
679 0         0 $xfer += $output->writeFieldEnd();
680             }
681 0         0 $xfer += $output->writeFieldStop();
682 0         0 $xfer += $output->writeStructEnd();
683 0         0 return $xfer;
684             }
685              
686             package ThriftTest::ThriftTest_testI64_result;
687 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         504  
688             ThriftTest::ThriftTest_testI64_result->mk_accessors( qw( success ) );
689              
690             sub new {
691 0     0   0 my $classname = shift;
692 0         0 my $self = {};
693 0   0     0 my $vals = shift || {};
694 0         0 $self->{success} = undef;
695 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
696 0 0       0 if (defined $vals->{success}) {
697 0         0 $self->{success} = $vals->{success};
698             }
699             }
700 0         0 return bless ($self, $classname);
701             }
702              
703             sub getName {
704 0     0   0 return 'ThriftTest_testI64_result';
705             }
706              
707             sub read {
708 0     0   0 my ($self, $input) = @_;
709 0         0 my $xfer = 0;
710 0         0 my $fname;
711 0         0 my $ftype = 0;
712 0         0 my $fid = 0;
713 0         0 $xfer += $input->readStructBegin(\$fname);
714 0         0 while (1)
715             {
716 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
717 0 0       0 if ($ftype == Thrift::TType::STOP) {
718 0         0 last;
719             }
720 0         0 SWITCH: for($fid)
721             {
722 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::I64) {
  0 0       0  
723 0         0 $xfer += $input->readI64(\$self->{success});
724             } else {
725 0         0 $xfer += $input->skip($ftype);
726             }
727 0         0 last; };
728 0         0 $xfer += $input->skip($ftype);
729             }
730 0         0 $xfer += $input->readFieldEnd();
731             }
732 0         0 $xfer += $input->readStructEnd();
733 0         0 return $xfer;
734             }
735              
736             sub write {
737 0     0   0 my ($self, $output) = @_;
738 0         0 my $xfer = 0;
739 0         0 $xfer += $output->writeStructBegin('ThriftTest_testI64_result');
740 0 0       0 if (defined $self->{success}) {
741 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::I64, 0);
742 0         0 $xfer += $output->writeI64($self->{success});
743 0         0 $xfer += $output->writeFieldEnd();
744             }
745 0         0 $xfer += $output->writeFieldStop();
746 0         0 $xfer += $output->writeStructEnd();
747 0         0 return $xfer;
748             }
749              
750             package ThriftTest::ThriftTest_testDouble_args;
751 1     1   9 use base qw(Class::Accessor);
  1         3  
  1         480  
752             ThriftTest::ThriftTest_testDouble_args->mk_accessors( qw( thing ) );
753              
754             sub new {
755 0     0   0 my $classname = shift;
756 0         0 my $self = {};
757 0   0     0 my $vals = shift || {};
758 0         0 $self->{thing} = undef;
759 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
760 0 0       0 if (defined $vals->{thing}) {
761 0         0 $self->{thing} = $vals->{thing};
762             }
763             }
764 0         0 return bless ($self, $classname);
765             }
766              
767             sub getName {
768 0     0   0 return 'ThriftTest_testDouble_args';
769             }
770              
771             sub read {
772 0     0   0 my ($self, $input) = @_;
773 0         0 my $xfer = 0;
774 0         0 my $fname;
775 0         0 my $ftype = 0;
776 0         0 my $fid = 0;
777 0         0 $xfer += $input->readStructBegin(\$fname);
778 0         0 while (1)
779             {
780 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
781 0 0       0 if ($ftype == Thrift::TType::STOP) {
782 0         0 last;
783             }
784 0         0 SWITCH: for($fid)
785             {
786 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::DOUBLE) {
  0 0       0  
787 0         0 $xfer += $input->readDouble(\$self->{thing});
788             } else {
789 0         0 $xfer += $input->skip($ftype);
790             }
791 0         0 last; };
792 0         0 $xfer += $input->skip($ftype);
793             }
794 0         0 $xfer += $input->readFieldEnd();
795             }
796 0         0 $xfer += $input->readStructEnd();
797 0         0 return $xfer;
798             }
799              
800             sub write {
801 0     0   0 my ($self, $output) = @_;
802 0         0 my $xfer = 0;
803 0         0 $xfer += $output->writeStructBegin('ThriftTest_testDouble_args');
804 0 0       0 if (defined $self->{thing}) {
805 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::DOUBLE, 1);
806 0         0 $xfer += $output->writeDouble($self->{thing});
807 0         0 $xfer += $output->writeFieldEnd();
808             }
809 0         0 $xfer += $output->writeFieldStop();
810 0         0 $xfer += $output->writeStructEnd();
811 0         0 return $xfer;
812             }
813              
814             package ThriftTest::ThriftTest_testDouble_result;
815 1     1   9 use base qw(Class::Accessor);
  1         1  
  1         497  
816             ThriftTest::ThriftTest_testDouble_result->mk_accessors( qw( success ) );
817              
818             sub new {
819 0     0   0 my $classname = shift;
820 0         0 my $self = {};
821 0   0     0 my $vals = shift || {};
822 0         0 $self->{success} = undef;
823 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
824 0 0       0 if (defined $vals->{success}) {
825 0         0 $self->{success} = $vals->{success};
826             }
827             }
828 0         0 return bless ($self, $classname);
829             }
830              
831             sub getName {
832 0     0   0 return 'ThriftTest_testDouble_result';
833             }
834              
835             sub read {
836 0     0   0 my ($self, $input) = @_;
837 0         0 my $xfer = 0;
838 0         0 my $fname;
839 0         0 my $ftype = 0;
840 0         0 my $fid = 0;
841 0         0 $xfer += $input->readStructBegin(\$fname);
842 0         0 while (1)
843             {
844 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
845 0 0       0 if ($ftype == Thrift::TType::STOP) {
846 0         0 last;
847             }
848 0         0 SWITCH: for($fid)
849             {
850 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::DOUBLE) {
  0 0       0  
851 0         0 $xfer += $input->readDouble(\$self->{success});
852             } else {
853 0         0 $xfer += $input->skip($ftype);
854             }
855 0         0 last; };
856 0         0 $xfer += $input->skip($ftype);
857             }
858 0         0 $xfer += $input->readFieldEnd();
859             }
860 0         0 $xfer += $input->readStructEnd();
861 0         0 return $xfer;
862             }
863              
864             sub write {
865 0     0   0 my ($self, $output) = @_;
866 0         0 my $xfer = 0;
867 0         0 $xfer += $output->writeStructBegin('ThriftTest_testDouble_result');
868 0 0       0 if (defined $self->{success}) {
869 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::DOUBLE, 0);
870 0         0 $xfer += $output->writeDouble($self->{success});
871 0         0 $xfer += $output->writeFieldEnd();
872             }
873 0         0 $xfer += $output->writeFieldStop();
874 0         0 $xfer += $output->writeStructEnd();
875 0         0 return $xfer;
876             }
877              
878             package ThriftTest::ThriftTest_testBinary_args;
879 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         481  
880             ThriftTest::ThriftTest_testBinary_args->mk_accessors( qw( thing ) );
881              
882             sub new {
883 0     0   0 my $classname = shift;
884 0         0 my $self = {};
885 0   0     0 my $vals = shift || {};
886 0         0 $self->{thing} = undef;
887 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
888 0 0       0 if (defined $vals->{thing}) {
889 0         0 $self->{thing} = $vals->{thing};
890             }
891             }
892 0         0 return bless ($self, $classname);
893             }
894              
895             sub getName {
896 0     0   0 return 'ThriftTest_testBinary_args';
897             }
898              
899             sub read {
900 0     0   0 my ($self, $input) = @_;
901 0         0 my $xfer = 0;
902 0         0 my $fname;
903 0         0 my $ftype = 0;
904 0         0 my $fid = 0;
905 0         0 $xfer += $input->readStructBegin(\$fname);
906 0         0 while (1)
907             {
908 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
909 0 0       0 if ($ftype == Thrift::TType::STOP) {
910 0         0 last;
911             }
912 0         0 SWITCH: for($fid)
913             {
914 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRING) {
  0 0       0  
915 0         0 $xfer += $input->readString(\$self->{thing});
916             } else {
917 0         0 $xfer += $input->skip($ftype);
918             }
919 0         0 last; };
920 0         0 $xfer += $input->skip($ftype);
921             }
922 0         0 $xfer += $input->readFieldEnd();
923             }
924 0         0 $xfer += $input->readStructEnd();
925 0         0 return $xfer;
926             }
927              
928             sub write {
929 0     0   0 my ($self, $output) = @_;
930 0         0 my $xfer = 0;
931 0         0 $xfer += $output->writeStructBegin('ThriftTest_testBinary_args');
932 0 0       0 if (defined $self->{thing}) {
933 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::STRING, 1);
934 0         0 $xfer += $output->writeString($self->{thing});
935 0         0 $xfer += $output->writeFieldEnd();
936             }
937 0         0 $xfer += $output->writeFieldStop();
938 0         0 $xfer += $output->writeStructEnd();
939 0         0 return $xfer;
940             }
941              
942             package ThriftTest::ThriftTest_testBinary_result;
943 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         539  
944             ThriftTest::ThriftTest_testBinary_result->mk_accessors( qw( success ) );
945              
946             sub new {
947 0     0   0 my $classname = shift;
948 0         0 my $self = {};
949 0   0     0 my $vals = shift || {};
950 0         0 $self->{success} = undef;
951 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
952 0 0       0 if (defined $vals->{success}) {
953 0         0 $self->{success} = $vals->{success};
954             }
955             }
956 0         0 return bless ($self, $classname);
957             }
958              
959             sub getName {
960 0     0   0 return 'ThriftTest_testBinary_result';
961             }
962              
963             sub read {
964 0     0   0 my ($self, $input) = @_;
965 0         0 my $xfer = 0;
966 0         0 my $fname;
967 0         0 my $ftype = 0;
968 0         0 my $fid = 0;
969 0         0 $xfer += $input->readStructBegin(\$fname);
970 0         0 while (1)
971             {
972 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
973 0 0       0 if ($ftype == Thrift::TType::STOP) {
974 0         0 last;
975             }
976 0         0 SWITCH: for($fid)
977             {
978 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::STRING) {
  0 0       0  
979 0         0 $xfer += $input->readString(\$self->{success});
980             } else {
981 0         0 $xfer += $input->skip($ftype);
982             }
983 0         0 last; };
984 0         0 $xfer += $input->skip($ftype);
985             }
986 0         0 $xfer += $input->readFieldEnd();
987             }
988 0         0 $xfer += $input->readStructEnd();
989 0         0 return $xfer;
990             }
991              
992             sub write {
993 0     0   0 my ($self, $output) = @_;
994 0         0 my $xfer = 0;
995 0         0 $xfer += $output->writeStructBegin('ThriftTest_testBinary_result');
996 0 0       0 if (defined $self->{success}) {
997 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::STRING, 0);
998 0         0 $xfer += $output->writeString($self->{success});
999 0         0 $xfer += $output->writeFieldEnd();
1000             }
1001 0         0 $xfer += $output->writeFieldStop();
1002 0         0 $xfer += $output->writeStructEnd();
1003 0         0 return $xfer;
1004             }
1005              
1006             package ThriftTest::ThriftTest_testStruct_args;
1007 1     1   8 use base qw(Class::Accessor);
  1         1  
  1         519  
1008             ThriftTest::ThriftTest_testStruct_args->mk_accessors( qw( thing ) );
1009              
1010             sub new {
1011 0     0   0 my $classname = shift;
1012 0         0 my $self = {};
1013 0   0     0 my $vals = shift || {};
1014 0         0 $self->{thing} = undef;
1015 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1016 0 0       0 if (defined $vals->{thing}) {
1017 0         0 $self->{thing} = $vals->{thing};
1018             }
1019             }
1020 0         0 return bless ($self, $classname);
1021             }
1022              
1023             sub getName {
1024 0     0   0 return 'ThriftTest_testStruct_args';
1025             }
1026              
1027             sub read {
1028 0     0   0 my ($self, $input) = @_;
1029 0         0 my $xfer = 0;
1030 0         0 my $fname;
1031 0         0 my $ftype = 0;
1032 0         0 my $fid = 0;
1033 0         0 $xfer += $input->readStructBegin(\$fname);
1034 0         0 while (1)
1035             {
1036 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1037 0 0       0 if ($ftype == Thrift::TType::STOP) {
1038 0         0 last;
1039             }
1040 0         0 SWITCH: for($fid)
1041             {
1042 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
1043 0         0 $self->{thing} = ThriftTest::Xtruct->new();
1044 0         0 $xfer += $self->{thing}->read($input);
1045             } else {
1046 0         0 $xfer += $input->skip($ftype);
1047             }
1048 0         0 last; };
1049 0         0 $xfer += $input->skip($ftype);
1050             }
1051 0         0 $xfer += $input->readFieldEnd();
1052             }
1053 0         0 $xfer += $input->readStructEnd();
1054 0         0 return $xfer;
1055             }
1056              
1057             sub write {
1058 0     0   0 my ($self, $output) = @_;
1059 0         0 my $xfer = 0;
1060 0         0 $xfer += $output->writeStructBegin('ThriftTest_testStruct_args');
1061 0 0       0 if (defined $self->{thing}) {
1062 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::STRUCT, 1);
1063 0         0 $xfer += $self->{thing}->write($output);
1064 0         0 $xfer += $output->writeFieldEnd();
1065             }
1066 0         0 $xfer += $output->writeFieldStop();
1067 0         0 $xfer += $output->writeStructEnd();
1068 0         0 return $xfer;
1069             }
1070              
1071             package ThriftTest::ThriftTest_testStruct_result;
1072 1     1   8 use base qw(Class::Accessor);
  1         1  
  1         519  
1073             ThriftTest::ThriftTest_testStruct_result->mk_accessors( qw( success ) );
1074              
1075             sub new {
1076 0     0   0 my $classname = shift;
1077 0         0 my $self = {};
1078 0   0     0 my $vals = shift || {};
1079 0         0 $self->{success} = undef;
1080 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1081 0 0       0 if (defined $vals->{success}) {
1082 0         0 $self->{success} = $vals->{success};
1083             }
1084             }
1085 0         0 return bless ($self, $classname);
1086             }
1087              
1088             sub getName {
1089 0     0   0 return 'ThriftTest_testStruct_result';
1090             }
1091              
1092             sub read {
1093 0     0   0 my ($self, $input) = @_;
1094 0         0 my $xfer = 0;
1095 0         0 my $fname;
1096 0         0 my $ftype = 0;
1097 0         0 my $fid = 0;
1098 0         0 $xfer += $input->readStructBegin(\$fname);
1099 0         0 while (1)
1100             {
1101 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1102 0 0       0 if ($ftype == Thrift::TType::STOP) {
1103 0         0 last;
1104             }
1105 0         0 SWITCH: for($fid)
1106             {
1107 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
1108 0         0 $self->{success} = ThriftTest::Xtruct->new();
1109 0         0 $xfer += $self->{success}->read($input);
1110             } else {
1111 0         0 $xfer += $input->skip($ftype);
1112             }
1113 0         0 last; };
1114 0         0 $xfer += $input->skip($ftype);
1115             }
1116 0         0 $xfer += $input->readFieldEnd();
1117             }
1118 0         0 $xfer += $input->readStructEnd();
1119 0         0 return $xfer;
1120             }
1121              
1122             sub write {
1123 0     0   0 my ($self, $output) = @_;
1124 0         0 my $xfer = 0;
1125 0         0 $xfer += $output->writeStructBegin('ThriftTest_testStruct_result');
1126 0 0       0 if (defined $self->{success}) {
1127 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::STRUCT, 0);
1128 0         0 $xfer += $self->{success}->write($output);
1129 0         0 $xfer += $output->writeFieldEnd();
1130             }
1131 0         0 $xfer += $output->writeFieldStop();
1132 0         0 $xfer += $output->writeStructEnd();
1133 0         0 return $xfer;
1134             }
1135              
1136             package ThriftTest::ThriftTest_testNest_args;
1137 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         479  
1138             ThriftTest::ThriftTest_testNest_args->mk_accessors( qw( thing ) );
1139              
1140             sub new {
1141 0     0   0 my $classname = shift;
1142 0         0 my $self = {};
1143 0   0     0 my $vals = shift || {};
1144 0         0 $self->{thing} = undef;
1145 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1146 0 0       0 if (defined $vals->{thing}) {
1147 0         0 $self->{thing} = $vals->{thing};
1148             }
1149             }
1150 0         0 return bless ($self, $classname);
1151             }
1152              
1153             sub getName {
1154 0     0   0 return 'ThriftTest_testNest_args';
1155             }
1156              
1157             sub read {
1158 0     0   0 my ($self, $input) = @_;
1159 0         0 my $xfer = 0;
1160 0         0 my $fname;
1161 0         0 my $ftype = 0;
1162 0         0 my $fid = 0;
1163 0         0 $xfer += $input->readStructBegin(\$fname);
1164 0         0 while (1)
1165             {
1166 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1167 0 0       0 if ($ftype == Thrift::TType::STOP) {
1168 0         0 last;
1169             }
1170 0         0 SWITCH: for($fid)
1171             {
1172 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
1173 0         0 $self->{thing} = ThriftTest::Xtruct2->new();
1174 0         0 $xfer += $self->{thing}->read($input);
1175             } else {
1176 0         0 $xfer += $input->skip($ftype);
1177             }
1178 0         0 last; };
1179 0         0 $xfer += $input->skip($ftype);
1180             }
1181 0         0 $xfer += $input->readFieldEnd();
1182             }
1183 0         0 $xfer += $input->readStructEnd();
1184 0         0 return $xfer;
1185             }
1186              
1187             sub write {
1188 0     0   0 my ($self, $output) = @_;
1189 0         0 my $xfer = 0;
1190 0         0 $xfer += $output->writeStructBegin('ThriftTest_testNest_args');
1191 0 0       0 if (defined $self->{thing}) {
1192 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::STRUCT, 1);
1193 0         0 $xfer += $self->{thing}->write($output);
1194 0         0 $xfer += $output->writeFieldEnd();
1195             }
1196 0         0 $xfer += $output->writeFieldStop();
1197 0         0 $xfer += $output->writeStructEnd();
1198 0         0 return $xfer;
1199             }
1200              
1201             package ThriftTest::ThriftTest_testNest_result;
1202 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         501  
1203             ThriftTest::ThriftTest_testNest_result->mk_accessors( qw( success ) );
1204              
1205             sub new {
1206 0     0   0 my $classname = shift;
1207 0         0 my $self = {};
1208 0   0     0 my $vals = shift || {};
1209 0         0 $self->{success} = undef;
1210 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1211 0 0       0 if (defined $vals->{success}) {
1212 0         0 $self->{success} = $vals->{success};
1213             }
1214             }
1215 0         0 return bless ($self, $classname);
1216             }
1217              
1218             sub getName {
1219 0     0   0 return 'ThriftTest_testNest_result';
1220             }
1221              
1222             sub read {
1223 0     0   0 my ($self, $input) = @_;
1224 0         0 my $xfer = 0;
1225 0         0 my $fname;
1226 0         0 my $ftype = 0;
1227 0         0 my $fid = 0;
1228 0         0 $xfer += $input->readStructBegin(\$fname);
1229 0         0 while (1)
1230             {
1231 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1232 0 0       0 if ($ftype == Thrift::TType::STOP) {
1233 0         0 last;
1234             }
1235 0         0 SWITCH: for($fid)
1236             {
1237 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
1238 0         0 $self->{success} = ThriftTest::Xtruct2->new();
1239 0         0 $xfer += $self->{success}->read($input);
1240             } else {
1241 0         0 $xfer += $input->skip($ftype);
1242             }
1243 0         0 last; };
1244 0         0 $xfer += $input->skip($ftype);
1245             }
1246 0         0 $xfer += $input->readFieldEnd();
1247             }
1248 0         0 $xfer += $input->readStructEnd();
1249 0         0 return $xfer;
1250             }
1251              
1252             sub write {
1253 0     0   0 my ($self, $output) = @_;
1254 0         0 my $xfer = 0;
1255 0         0 $xfer += $output->writeStructBegin('ThriftTest_testNest_result');
1256 0 0       0 if (defined $self->{success}) {
1257 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::STRUCT, 0);
1258 0         0 $xfer += $self->{success}->write($output);
1259 0         0 $xfer += $output->writeFieldEnd();
1260             }
1261 0         0 $xfer += $output->writeFieldStop();
1262 0         0 $xfer += $output->writeStructEnd();
1263 0         0 return $xfer;
1264             }
1265              
1266             package ThriftTest::ThriftTest_testMap_args;
1267 1     1   9 use base qw(Class::Accessor);
  1         2  
  1         651  
1268             ThriftTest::ThriftTest_testMap_args->mk_accessors( qw( thing ) );
1269              
1270             sub new {
1271 0     0   0 my $classname = shift;
1272 0         0 my $self = {};
1273 0   0     0 my $vals = shift || {};
1274 0         0 $self->{thing} = undef;
1275 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1276 0 0       0 if (defined $vals->{thing}) {
1277 0         0 $self->{thing} = $vals->{thing};
1278             }
1279             }
1280 0         0 return bless ($self, $classname);
1281             }
1282              
1283             sub getName {
1284 0     0   0 return 'ThriftTest_testMap_args';
1285             }
1286              
1287             sub read {
1288 0     0   0 my ($self, $input) = @_;
1289 0         0 my $xfer = 0;
1290 0         0 my $fname;
1291 0         0 my $ftype = 0;
1292 0         0 my $fid = 0;
1293 0         0 $xfer += $input->readStructBegin(\$fname);
1294 0         0 while (1)
1295             {
1296 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1297 0 0       0 if ($ftype == Thrift::TType::STOP) {
1298 0         0 last;
1299             }
1300 0         0 SWITCH: for($fid)
1301             {
1302 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
1303             {
1304 0         0 my $_size270 = 0;
  0         0  
1305 0         0 $self->{thing} = {};
1306 0         0 my $_ktype271 = 0;
1307 0         0 my $_vtype272 = 0;
1308 0         0 $xfer += $input->readMapBegin(\$_ktype271, \$_vtype272, \$_size270);
1309 0         0 for (my $_i274 = 0; $_i274 < $_size270; ++$_i274)
1310             {
1311 0         0 my $key275 = 0;
1312 0         0 my $val276 = 0;
1313 0         0 $xfer += $input->readI32(\$key275);
1314 0         0 $xfer += $input->readI32(\$val276);
1315 0         0 $self->{thing}->{$key275} = $val276;
1316             }
1317 0         0 $xfer += $input->readMapEnd();
1318             }
1319             } else {
1320 0         0 $xfer += $input->skip($ftype);
1321             }
1322 0         0 last; };
1323 0         0 $xfer += $input->skip($ftype);
1324             }
1325 0         0 $xfer += $input->readFieldEnd();
1326             }
1327 0         0 $xfer += $input->readStructEnd();
1328 0         0 return $xfer;
1329             }
1330              
1331             sub write {
1332 0     0   0 my ($self, $output) = @_;
1333 0         0 my $xfer = 0;
1334 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMap_args');
1335 0 0       0 if (defined $self->{thing}) {
1336 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::MAP, 1);
1337             {
1338 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I32, Thrift::TType::I32, scalar(keys %{$self->{thing}}));
  0         0  
  0         0  
1339             {
1340 0         0 while( my ($kiter277,$viter278) = each %{$self->{thing}})
  0         0  
  0         0  
1341             {
1342 0         0 $xfer += $output->writeI32($kiter277);
1343 0         0 $xfer += $output->writeI32($viter278);
1344             }
1345             }
1346 0         0 $xfer += $output->writeMapEnd();
1347             }
1348 0         0 $xfer += $output->writeFieldEnd();
1349             }
1350 0         0 $xfer += $output->writeFieldStop();
1351 0         0 $xfer += $output->writeStructEnd();
1352 0         0 return $xfer;
1353             }
1354              
1355             package ThriftTest::ThriftTest_testMap_result;
1356 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         658  
1357             ThriftTest::ThriftTest_testMap_result->mk_accessors( qw( success ) );
1358              
1359             sub new {
1360 0     0   0 my $classname = shift;
1361 0         0 my $self = {};
1362 0   0     0 my $vals = shift || {};
1363 0         0 $self->{success} = undef;
1364 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1365 0 0       0 if (defined $vals->{success}) {
1366 0         0 $self->{success} = $vals->{success};
1367             }
1368             }
1369 0         0 return bless ($self, $classname);
1370             }
1371              
1372             sub getName {
1373 0     0   0 return 'ThriftTest_testMap_result';
1374             }
1375              
1376             sub read {
1377 0     0   0 my ($self, $input) = @_;
1378 0         0 my $xfer = 0;
1379 0         0 my $fname;
1380 0         0 my $ftype = 0;
1381 0         0 my $fid = 0;
1382 0         0 $xfer += $input->readStructBegin(\$fname);
1383 0         0 while (1)
1384             {
1385 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1386 0 0       0 if ($ftype == Thrift::TType::STOP) {
1387 0         0 last;
1388             }
1389 0         0 SWITCH: for($fid)
1390             {
1391 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
1392             {
1393 0         0 my $_size279 = 0;
  0         0  
1394 0         0 $self->{success} = {};
1395 0         0 my $_ktype280 = 0;
1396 0         0 my $_vtype281 = 0;
1397 0         0 $xfer += $input->readMapBegin(\$_ktype280, \$_vtype281, \$_size279);
1398 0         0 for (my $_i283 = 0; $_i283 < $_size279; ++$_i283)
1399             {
1400 0         0 my $key284 = 0;
1401 0         0 my $val285 = 0;
1402 0         0 $xfer += $input->readI32(\$key284);
1403 0         0 $xfer += $input->readI32(\$val285);
1404 0         0 $self->{success}->{$key284} = $val285;
1405             }
1406 0         0 $xfer += $input->readMapEnd();
1407             }
1408             } else {
1409 0         0 $xfer += $input->skip($ftype);
1410             }
1411 0         0 last; };
1412 0         0 $xfer += $input->skip($ftype);
1413             }
1414 0         0 $xfer += $input->readFieldEnd();
1415             }
1416 0         0 $xfer += $input->readStructEnd();
1417 0         0 return $xfer;
1418             }
1419              
1420             sub write {
1421 0     0   0 my ($self, $output) = @_;
1422 0         0 my $xfer = 0;
1423 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMap_result');
1424 0 0       0 if (defined $self->{success}) {
1425 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::MAP, 0);
1426             {
1427 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I32, Thrift::TType::I32, scalar(keys %{$self->{success}}));
  0         0  
  0         0  
1428             {
1429 0         0 while( my ($kiter286,$viter287) = each %{$self->{success}})
  0         0  
  0         0  
1430             {
1431 0         0 $xfer += $output->writeI32($kiter286);
1432 0         0 $xfer += $output->writeI32($viter287);
1433             }
1434             }
1435 0         0 $xfer += $output->writeMapEnd();
1436             }
1437 0         0 $xfer += $output->writeFieldEnd();
1438             }
1439 0         0 $xfer += $output->writeFieldStop();
1440 0         0 $xfer += $output->writeStructEnd();
1441 0         0 return $xfer;
1442             }
1443              
1444             package ThriftTest::ThriftTest_testStringMap_args;
1445 1     1   9 use base qw(Class::Accessor);
  1         2  
  1         681  
1446             ThriftTest::ThriftTest_testStringMap_args->mk_accessors( qw( thing ) );
1447              
1448             sub new {
1449 0     0   0 my $classname = shift;
1450 0         0 my $self = {};
1451 0   0     0 my $vals = shift || {};
1452 0         0 $self->{thing} = undef;
1453 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1454 0 0       0 if (defined $vals->{thing}) {
1455 0         0 $self->{thing} = $vals->{thing};
1456             }
1457             }
1458 0         0 return bless ($self, $classname);
1459             }
1460              
1461             sub getName {
1462 0     0   0 return 'ThriftTest_testStringMap_args';
1463             }
1464              
1465             sub read {
1466 0     0   0 my ($self, $input) = @_;
1467 0         0 my $xfer = 0;
1468 0         0 my $fname;
1469 0         0 my $ftype = 0;
1470 0         0 my $fid = 0;
1471 0         0 $xfer += $input->readStructBegin(\$fname);
1472 0         0 while (1)
1473             {
1474 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1475 0 0       0 if ($ftype == Thrift::TType::STOP) {
1476 0         0 last;
1477             }
1478 0         0 SWITCH: for($fid)
1479             {
1480 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
1481             {
1482 0         0 my $_size288 = 0;
  0         0  
1483 0         0 $self->{thing} = {};
1484 0         0 my $_ktype289 = 0;
1485 0         0 my $_vtype290 = 0;
1486 0         0 $xfer += $input->readMapBegin(\$_ktype289, \$_vtype290, \$_size288);
1487 0         0 for (my $_i292 = 0; $_i292 < $_size288; ++$_i292)
1488             {
1489 0         0 my $key293 = '';
1490 0         0 my $val294 = '';
1491 0         0 $xfer += $input->readString(\$key293);
1492 0         0 $xfer += $input->readString(\$val294);
1493 0         0 $self->{thing}->{$key293} = $val294;
1494             }
1495 0         0 $xfer += $input->readMapEnd();
1496             }
1497             } else {
1498 0         0 $xfer += $input->skip($ftype);
1499             }
1500 0         0 last; };
1501 0         0 $xfer += $input->skip($ftype);
1502             }
1503 0         0 $xfer += $input->readFieldEnd();
1504             }
1505 0         0 $xfer += $input->readStructEnd();
1506 0         0 return $xfer;
1507             }
1508              
1509             sub write {
1510 0     0   0 my ($self, $output) = @_;
1511 0         0 my $xfer = 0;
1512 0         0 $xfer += $output->writeStructBegin('ThriftTest_testStringMap_args');
1513 0 0       0 if (defined $self->{thing}) {
1514 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::MAP, 1);
1515             {
1516 0         0 $xfer += $output->writeMapBegin(Thrift::TType::STRING, Thrift::TType::STRING, scalar(keys %{$self->{thing}}));
  0         0  
  0         0  
1517             {
1518 0         0 while( my ($kiter295,$viter296) = each %{$self->{thing}})
  0         0  
  0         0  
1519             {
1520 0         0 $xfer += $output->writeString($kiter295);
1521 0         0 $xfer += $output->writeString($viter296);
1522             }
1523             }
1524 0         0 $xfer += $output->writeMapEnd();
1525             }
1526 0         0 $xfer += $output->writeFieldEnd();
1527             }
1528 0         0 $xfer += $output->writeFieldStop();
1529 0         0 $xfer += $output->writeStructEnd();
1530 0         0 return $xfer;
1531             }
1532              
1533             package ThriftTest::ThriftTest_testStringMap_result;
1534 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         647  
1535             ThriftTest::ThriftTest_testStringMap_result->mk_accessors( qw( success ) );
1536              
1537             sub new {
1538 0     0   0 my $classname = shift;
1539 0         0 my $self = {};
1540 0   0     0 my $vals = shift || {};
1541 0         0 $self->{success} = undef;
1542 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1543 0 0       0 if (defined $vals->{success}) {
1544 0         0 $self->{success} = $vals->{success};
1545             }
1546             }
1547 0         0 return bless ($self, $classname);
1548             }
1549              
1550             sub getName {
1551 0     0   0 return 'ThriftTest_testStringMap_result';
1552             }
1553              
1554             sub read {
1555 0     0   0 my ($self, $input) = @_;
1556 0         0 my $xfer = 0;
1557 0         0 my $fname;
1558 0         0 my $ftype = 0;
1559 0         0 my $fid = 0;
1560 0         0 $xfer += $input->readStructBegin(\$fname);
1561 0         0 while (1)
1562             {
1563 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1564 0 0       0 if ($ftype == Thrift::TType::STOP) {
1565 0         0 last;
1566             }
1567 0         0 SWITCH: for($fid)
1568             {
1569 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
1570             {
1571 0         0 my $_size297 = 0;
  0         0  
1572 0         0 $self->{success} = {};
1573 0         0 my $_ktype298 = 0;
1574 0         0 my $_vtype299 = 0;
1575 0         0 $xfer += $input->readMapBegin(\$_ktype298, \$_vtype299, \$_size297);
1576 0         0 for (my $_i301 = 0; $_i301 < $_size297; ++$_i301)
1577             {
1578 0         0 my $key302 = '';
1579 0         0 my $val303 = '';
1580 0         0 $xfer += $input->readString(\$key302);
1581 0         0 $xfer += $input->readString(\$val303);
1582 0         0 $self->{success}->{$key302} = $val303;
1583             }
1584 0         0 $xfer += $input->readMapEnd();
1585             }
1586             } else {
1587 0         0 $xfer += $input->skip($ftype);
1588             }
1589 0         0 last; };
1590 0         0 $xfer += $input->skip($ftype);
1591             }
1592 0         0 $xfer += $input->readFieldEnd();
1593             }
1594 0         0 $xfer += $input->readStructEnd();
1595 0         0 return $xfer;
1596             }
1597              
1598             sub write {
1599 0     0   0 my ($self, $output) = @_;
1600 0         0 my $xfer = 0;
1601 0         0 $xfer += $output->writeStructBegin('ThriftTest_testStringMap_result');
1602 0 0       0 if (defined $self->{success}) {
1603 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::MAP, 0);
1604             {
1605 0         0 $xfer += $output->writeMapBegin(Thrift::TType::STRING, Thrift::TType::STRING, scalar(keys %{$self->{success}}));
  0         0  
  0         0  
1606             {
1607 0         0 while( my ($kiter304,$viter305) = each %{$self->{success}})
  0         0  
  0         0  
1608             {
1609 0         0 $xfer += $output->writeString($kiter304);
1610 0         0 $xfer += $output->writeString($viter305);
1611             }
1612             }
1613 0         0 $xfer += $output->writeMapEnd();
1614             }
1615 0         0 $xfer += $output->writeFieldEnd();
1616             }
1617 0         0 $xfer += $output->writeFieldStop();
1618 0         0 $xfer += $output->writeStructEnd();
1619 0         0 return $xfer;
1620             }
1621              
1622             package ThriftTest::ThriftTest_testSet_args;
1623 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         644  
1624             ThriftTest::ThriftTest_testSet_args->mk_accessors( qw( thing ) );
1625              
1626             sub new {
1627 0     0   0 my $classname = shift;
1628 0         0 my $self = {};
1629 0   0     0 my $vals = shift || {};
1630 0         0 $self->{thing} = undef;
1631 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1632 0 0       0 if (defined $vals->{thing}) {
1633 0         0 $self->{thing} = $vals->{thing};
1634             }
1635             }
1636 0         0 return bless ($self, $classname);
1637             }
1638              
1639             sub getName {
1640 0     0   0 return 'ThriftTest_testSet_args';
1641             }
1642              
1643             sub read {
1644 0     0   0 my ($self, $input) = @_;
1645 0         0 my $xfer = 0;
1646 0         0 my $fname;
1647 0         0 my $ftype = 0;
1648 0         0 my $fid = 0;
1649 0         0 $xfer += $input->readStructBegin(\$fname);
1650 0         0 while (1)
1651             {
1652 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1653 0 0       0 if ($ftype == Thrift::TType::STOP) {
1654 0         0 last;
1655             }
1656 0         0 SWITCH: for($fid)
1657             {
1658 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::SET) {
  0 0       0  
1659             {
1660 0         0 my $_size306 = 0;
  0         0  
1661 0         0 $self->{thing} = {};
1662 0         0 my $_etype309 = 0;
1663 0         0 $xfer += $input->readSetBegin(\$_etype309, \$_size306);
1664 0         0 for (my $_i310 = 0; $_i310 < $_size306; ++$_i310)
1665             {
1666 0         0 my $elem311 = undef;
1667 0         0 $xfer += $input->readI32(\$elem311);
1668 0         0 $self->{thing}->{$elem311} = 1;
1669             }
1670 0         0 $xfer += $input->readSetEnd();
1671             }
1672             } else {
1673 0         0 $xfer += $input->skip($ftype);
1674             }
1675 0         0 last; };
1676 0         0 $xfer += $input->skip($ftype);
1677             }
1678 0         0 $xfer += $input->readFieldEnd();
1679             }
1680 0         0 $xfer += $input->readStructEnd();
1681 0         0 return $xfer;
1682             }
1683              
1684             sub write {
1685 0     0   0 my ($self, $output) = @_;
1686 0         0 my $xfer = 0;
1687 0         0 $xfer += $output->writeStructBegin('ThriftTest_testSet_args');
1688 0 0       0 if (defined $self->{thing}) {
1689 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::SET, 1);
1690             {
1691 0         0 $xfer += $output->writeSetBegin(Thrift::TType::I32, scalar(@{$self->{thing}}));
  0         0  
  0         0  
1692             {
1693 0         0 foreach my $iter312 (@{$self->{thing}})
  0         0  
  0         0  
1694             {
1695 0         0 $xfer += $output->writeI32($iter312);
1696             }
1697             }
1698 0         0 $xfer += $output->writeSetEnd();
1699             }
1700 0         0 $xfer += $output->writeFieldEnd();
1701             }
1702 0         0 $xfer += $output->writeFieldStop();
1703 0         0 $xfer += $output->writeStructEnd();
1704 0         0 return $xfer;
1705             }
1706              
1707             package ThriftTest::ThriftTest_testSet_result;
1708 1     1   9 use base qw(Class::Accessor);
  1         2  
  1         591  
1709             ThriftTest::ThriftTest_testSet_result->mk_accessors( qw( success ) );
1710              
1711             sub new {
1712 0     0   0 my $classname = shift;
1713 0         0 my $self = {};
1714 0   0     0 my $vals = shift || {};
1715 0         0 $self->{success} = undef;
1716 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1717 0 0       0 if (defined $vals->{success}) {
1718 0         0 $self->{success} = $vals->{success};
1719             }
1720             }
1721 0         0 return bless ($self, $classname);
1722             }
1723              
1724             sub getName {
1725 0     0   0 return 'ThriftTest_testSet_result';
1726             }
1727              
1728             sub read {
1729 0     0   0 my ($self, $input) = @_;
1730 0         0 my $xfer = 0;
1731 0         0 my $fname;
1732 0         0 my $ftype = 0;
1733 0         0 my $fid = 0;
1734 0         0 $xfer += $input->readStructBegin(\$fname);
1735 0         0 while (1)
1736             {
1737 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1738 0 0       0 if ($ftype == Thrift::TType::STOP) {
1739 0         0 last;
1740             }
1741 0         0 SWITCH: for($fid)
1742             {
1743 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::SET) {
  0 0       0  
1744             {
1745 0         0 my $_size313 = 0;
  0         0  
1746 0         0 $self->{success} = {};
1747 0         0 my $_etype316 = 0;
1748 0         0 $xfer += $input->readSetBegin(\$_etype316, \$_size313);
1749 0         0 for (my $_i317 = 0; $_i317 < $_size313; ++$_i317)
1750             {
1751 0         0 my $elem318 = undef;
1752 0         0 $xfer += $input->readI32(\$elem318);
1753 0         0 $self->{success}->{$elem318} = 1;
1754             }
1755 0         0 $xfer += $input->readSetEnd();
1756             }
1757             } else {
1758 0         0 $xfer += $input->skip($ftype);
1759             }
1760 0         0 last; };
1761 0         0 $xfer += $input->skip($ftype);
1762             }
1763 0         0 $xfer += $input->readFieldEnd();
1764             }
1765 0         0 $xfer += $input->readStructEnd();
1766 0         0 return $xfer;
1767             }
1768              
1769             sub write {
1770 0     0   0 my ($self, $output) = @_;
1771 0         0 my $xfer = 0;
1772 0         0 $xfer += $output->writeStructBegin('ThriftTest_testSet_result');
1773 0 0       0 if (defined $self->{success}) {
1774 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::SET, 0);
1775             {
1776 0         0 $xfer += $output->writeSetBegin(Thrift::TType::I32, scalar(@{$self->{success}}));
  0         0  
  0         0  
1777             {
1778 0         0 foreach my $iter319 (@{$self->{success}})
  0         0  
  0         0  
1779             {
1780 0         0 $xfer += $output->writeI32($iter319);
1781             }
1782             }
1783 0         0 $xfer += $output->writeSetEnd();
1784             }
1785 0         0 $xfer += $output->writeFieldEnd();
1786             }
1787 0         0 $xfer += $output->writeFieldStop();
1788 0         0 $xfer += $output->writeStructEnd();
1789 0         0 return $xfer;
1790             }
1791              
1792             package ThriftTest::ThriftTest_testList_args;
1793 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         587  
1794             ThriftTest::ThriftTest_testList_args->mk_accessors( qw( thing ) );
1795              
1796             sub new {
1797 0     0   0 my $classname = shift;
1798 0         0 my $self = {};
1799 0   0     0 my $vals = shift || {};
1800 0         0 $self->{thing} = undef;
1801 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1802 0 0       0 if (defined $vals->{thing}) {
1803 0         0 $self->{thing} = $vals->{thing};
1804             }
1805             }
1806 0         0 return bless ($self, $classname);
1807             }
1808              
1809             sub getName {
1810 0     0   0 return 'ThriftTest_testList_args';
1811             }
1812              
1813             sub read {
1814 0     0   0 my ($self, $input) = @_;
1815 0         0 my $xfer = 0;
1816 0         0 my $fname;
1817 0         0 my $ftype = 0;
1818 0         0 my $fid = 0;
1819 0         0 $xfer += $input->readStructBegin(\$fname);
1820 0         0 while (1)
1821             {
1822 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1823 0 0       0 if ($ftype == Thrift::TType::STOP) {
1824 0         0 last;
1825             }
1826 0         0 SWITCH: for($fid)
1827             {
1828 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::LIST) {
  0 0       0  
1829             {
1830 0         0 my $_size320 = 0;
  0         0  
1831 0         0 $self->{thing} = [];
1832 0         0 my $_etype323 = 0;
1833 0         0 $xfer += $input->readListBegin(\$_etype323, \$_size320);
1834 0         0 for (my $_i324 = 0; $_i324 < $_size320; ++$_i324)
1835             {
1836 0         0 my $elem325 = undef;
1837 0         0 $xfer += $input->readI32(\$elem325);
1838 0         0 push(@{$self->{thing}},$elem325);
  0         0  
1839             }
1840 0         0 $xfer += $input->readListEnd();
1841             }
1842             } else {
1843 0         0 $xfer += $input->skip($ftype);
1844             }
1845 0         0 last; };
1846 0         0 $xfer += $input->skip($ftype);
1847             }
1848 0         0 $xfer += $input->readFieldEnd();
1849             }
1850 0         0 $xfer += $input->readStructEnd();
1851 0         0 return $xfer;
1852             }
1853              
1854             sub write {
1855 0     0   0 my ($self, $output) = @_;
1856 0         0 my $xfer = 0;
1857 0         0 $xfer += $output->writeStructBegin('ThriftTest_testList_args');
1858 0 0       0 if (defined $self->{thing}) {
1859 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::LIST, 1);
1860             {
1861 0         0 $xfer += $output->writeListBegin(Thrift::TType::I32, scalar(@{$self->{thing}}));
  0         0  
  0         0  
1862             {
1863 0         0 foreach my $iter326 (@{$self->{thing}})
  0         0  
  0         0  
1864             {
1865 0         0 $xfer += $output->writeI32($iter326);
1866             }
1867             }
1868 0         0 $xfer += $output->writeListEnd();
1869             }
1870 0         0 $xfer += $output->writeFieldEnd();
1871             }
1872 0         0 $xfer += $output->writeFieldStop();
1873 0         0 $xfer += $output->writeStructEnd();
1874 0         0 return $xfer;
1875             }
1876              
1877             package ThriftTest::ThriftTest_testList_result;
1878 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         579  
1879             ThriftTest::ThriftTest_testList_result->mk_accessors( qw( success ) );
1880              
1881             sub new {
1882 0     0   0 my $classname = shift;
1883 0         0 my $self = {};
1884 0   0     0 my $vals = shift || {};
1885 0         0 $self->{success} = undef;
1886 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1887 0 0       0 if (defined $vals->{success}) {
1888 0         0 $self->{success} = $vals->{success};
1889             }
1890             }
1891 0         0 return bless ($self, $classname);
1892             }
1893              
1894             sub getName {
1895 0     0   0 return 'ThriftTest_testList_result';
1896             }
1897              
1898             sub read {
1899 0     0   0 my ($self, $input) = @_;
1900 0         0 my $xfer = 0;
1901 0         0 my $fname;
1902 0         0 my $ftype = 0;
1903 0         0 my $fid = 0;
1904 0         0 $xfer += $input->readStructBegin(\$fname);
1905 0         0 while (1)
1906             {
1907 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1908 0 0       0 if ($ftype == Thrift::TType::STOP) {
1909 0         0 last;
1910             }
1911 0         0 SWITCH: for($fid)
1912             {
1913 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::LIST) {
  0 0       0  
1914             {
1915 0         0 my $_size327 = 0;
  0         0  
1916 0         0 $self->{success} = [];
1917 0         0 my $_etype330 = 0;
1918 0         0 $xfer += $input->readListBegin(\$_etype330, \$_size327);
1919 0         0 for (my $_i331 = 0; $_i331 < $_size327; ++$_i331)
1920             {
1921 0         0 my $elem332 = undef;
1922 0         0 $xfer += $input->readI32(\$elem332);
1923 0         0 push(@{$self->{success}},$elem332);
  0         0  
1924             }
1925 0         0 $xfer += $input->readListEnd();
1926             }
1927             } else {
1928 0         0 $xfer += $input->skip($ftype);
1929             }
1930 0         0 last; };
1931 0         0 $xfer += $input->skip($ftype);
1932             }
1933 0         0 $xfer += $input->readFieldEnd();
1934             }
1935 0         0 $xfer += $input->readStructEnd();
1936 0         0 return $xfer;
1937             }
1938              
1939             sub write {
1940 0     0   0 my ($self, $output) = @_;
1941 0         0 my $xfer = 0;
1942 0         0 $xfer += $output->writeStructBegin('ThriftTest_testList_result');
1943 0 0       0 if (defined $self->{success}) {
1944 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::LIST, 0);
1945             {
1946 0         0 $xfer += $output->writeListBegin(Thrift::TType::I32, scalar(@{$self->{success}}));
  0         0  
  0         0  
1947             {
1948 0         0 foreach my $iter333 (@{$self->{success}})
  0         0  
  0         0  
1949             {
1950 0         0 $xfer += $output->writeI32($iter333);
1951             }
1952             }
1953 0         0 $xfer += $output->writeListEnd();
1954             }
1955 0         0 $xfer += $output->writeFieldEnd();
1956             }
1957 0         0 $xfer += $output->writeFieldStop();
1958 0         0 $xfer += $output->writeStructEnd();
1959 0         0 return $xfer;
1960             }
1961              
1962             package ThriftTest::ThriftTest_testEnum_args;
1963 1     1   15 use base qw(Class::Accessor);
  1         2  
  1         579  
1964             ThriftTest::ThriftTest_testEnum_args->mk_accessors( qw( thing ) );
1965              
1966             sub new {
1967 0     0   0 my $classname = shift;
1968 0         0 my $self = {};
1969 0   0     0 my $vals = shift || {};
1970 0         0 $self->{thing} = undef;
1971 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
1972 0 0       0 if (defined $vals->{thing}) {
1973 0         0 $self->{thing} = $vals->{thing};
1974             }
1975             }
1976 0         0 return bless ($self, $classname);
1977             }
1978              
1979             sub getName {
1980 0     0   0 return 'ThriftTest_testEnum_args';
1981             }
1982              
1983             sub read {
1984 0     0   0 my ($self, $input) = @_;
1985 0         0 my $xfer = 0;
1986 0         0 my $fname;
1987 0         0 my $ftype = 0;
1988 0         0 my $fid = 0;
1989 0         0 $xfer += $input->readStructBegin(\$fname);
1990 0         0 while (1)
1991             {
1992 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
1993 0 0       0 if ($ftype == Thrift::TType::STOP) {
1994 0         0 last;
1995             }
1996 0         0 SWITCH: for($fid)
1997             {
1998 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
1999 0         0 $xfer += $input->readI32(\$self->{thing});
2000             } else {
2001 0         0 $xfer += $input->skip($ftype);
2002             }
2003 0         0 last; };
2004 0         0 $xfer += $input->skip($ftype);
2005             }
2006 0         0 $xfer += $input->readFieldEnd();
2007             }
2008 0         0 $xfer += $input->readStructEnd();
2009 0         0 return $xfer;
2010             }
2011              
2012             sub write {
2013 0     0   0 my ($self, $output) = @_;
2014 0         0 my $xfer = 0;
2015 0         0 $xfer += $output->writeStructBegin('ThriftTest_testEnum_args');
2016 0 0       0 if (defined $self->{thing}) {
2017 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::I32, 1);
2018 0         0 $xfer += $output->writeI32($self->{thing});
2019 0         0 $xfer += $output->writeFieldEnd();
2020             }
2021 0         0 $xfer += $output->writeFieldStop();
2022 0         0 $xfer += $output->writeStructEnd();
2023 0         0 return $xfer;
2024             }
2025              
2026             package ThriftTest::ThriftTest_testEnum_result;
2027 1     1   8 use base qw(Class::Accessor);
  1         3  
  1         488  
2028             ThriftTest::ThriftTest_testEnum_result->mk_accessors( qw( success ) );
2029              
2030             sub new {
2031 0     0   0 my $classname = shift;
2032 0         0 my $self = {};
2033 0   0     0 my $vals = shift || {};
2034 0         0 $self->{success} = undef;
2035 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2036 0 0       0 if (defined $vals->{success}) {
2037 0         0 $self->{success} = $vals->{success};
2038             }
2039             }
2040 0         0 return bless ($self, $classname);
2041             }
2042              
2043             sub getName {
2044 0     0   0 return 'ThriftTest_testEnum_result';
2045             }
2046              
2047             sub read {
2048 0     0   0 my ($self, $input) = @_;
2049 0         0 my $xfer = 0;
2050 0         0 my $fname;
2051 0         0 my $ftype = 0;
2052 0         0 my $fid = 0;
2053 0         0 $xfer += $input->readStructBegin(\$fname);
2054 0         0 while (1)
2055             {
2056 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2057 0 0       0 if ($ftype == Thrift::TType::STOP) {
2058 0         0 last;
2059             }
2060 0         0 SWITCH: for($fid)
2061             {
2062 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
2063 0         0 $xfer += $input->readI32(\$self->{success});
2064             } else {
2065 0         0 $xfer += $input->skip($ftype);
2066             }
2067 0         0 last; };
2068 0         0 $xfer += $input->skip($ftype);
2069             }
2070 0         0 $xfer += $input->readFieldEnd();
2071             }
2072 0         0 $xfer += $input->readStructEnd();
2073 0         0 return $xfer;
2074             }
2075              
2076             sub write {
2077 0     0   0 my ($self, $output) = @_;
2078 0         0 my $xfer = 0;
2079 0         0 $xfer += $output->writeStructBegin('ThriftTest_testEnum_result');
2080 0 0       0 if (defined $self->{success}) {
2081 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::I32, 0);
2082 0         0 $xfer += $output->writeI32($self->{success});
2083 0         0 $xfer += $output->writeFieldEnd();
2084             }
2085 0         0 $xfer += $output->writeFieldStop();
2086 0         0 $xfer += $output->writeStructEnd();
2087 0         0 return $xfer;
2088             }
2089              
2090             package ThriftTest::ThriftTest_testTypedef_args;
2091 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         491  
2092             ThriftTest::ThriftTest_testTypedef_args->mk_accessors( qw( thing ) );
2093              
2094             sub new {
2095 0     0   0 my $classname = shift;
2096 0         0 my $self = {};
2097 0   0     0 my $vals = shift || {};
2098 0         0 $self->{thing} = undef;
2099 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2100 0 0       0 if (defined $vals->{thing}) {
2101 0         0 $self->{thing} = $vals->{thing};
2102             }
2103             }
2104 0         0 return bless ($self, $classname);
2105             }
2106              
2107             sub getName {
2108 0     0   0 return 'ThriftTest_testTypedef_args';
2109             }
2110              
2111             sub read {
2112 0     0   0 my ($self, $input) = @_;
2113 0         0 my $xfer = 0;
2114 0         0 my $fname;
2115 0         0 my $ftype = 0;
2116 0         0 my $fid = 0;
2117 0         0 $xfer += $input->readStructBegin(\$fname);
2118 0         0 while (1)
2119             {
2120 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2121 0 0       0 if ($ftype == Thrift::TType::STOP) {
2122 0         0 last;
2123             }
2124 0         0 SWITCH: for($fid)
2125             {
2126 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::I64) {
  0 0       0  
2127 0         0 $xfer += $input->readI64(\$self->{thing});
2128             } else {
2129 0         0 $xfer += $input->skip($ftype);
2130             }
2131 0         0 last; };
2132 0         0 $xfer += $input->skip($ftype);
2133             }
2134 0         0 $xfer += $input->readFieldEnd();
2135             }
2136 0         0 $xfer += $input->readStructEnd();
2137 0         0 return $xfer;
2138             }
2139              
2140             sub write {
2141 0     0   0 my ($self, $output) = @_;
2142 0         0 my $xfer = 0;
2143 0         0 $xfer += $output->writeStructBegin('ThriftTest_testTypedef_args');
2144 0 0       0 if (defined $self->{thing}) {
2145 0         0 $xfer += $output->writeFieldBegin('thing', Thrift::TType::I64, 1);
2146 0         0 $xfer += $output->writeI64($self->{thing});
2147 0         0 $xfer += $output->writeFieldEnd();
2148             }
2149 0         0 $xfer += $output->writeFieldStop();
2150 0         0 $xfer += $output->writeStructEnd();
2151 0         0 return $xfer;
2152             }
2153              
2154             package ThriftTest::ThriftTest_testTypedef_result;
2155 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         525  
2156             ThriftTest::ThriftTest_testTypedef_result->mk_accessors( qw( success ) );
2157              
2158             sub new {
2159 0     0   0 my $classname = shift;
2160 0         0 my $self = {};
2161 0   0     0 my $vals = shift || {};
2162 0         0 $self->{success} = undef;
2163 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2164 0 0       0 if (defined $vals->{success}) {
2165 0         0 $self->{success} = $vals->{success};
2166             }
2167             }
2168 0         0 return bless ($self, $classname);
2169             }
2170              
2171             sub getName {
2172 0     0   0 return 'ThriftTest_testTypedef_result';
2173             }
2174              
2175             sub read {
2176 0     0   0 my ($self, $input) = @_;
2177 0         0 my $xfer = 0;
2178 0         0 my $fname;
2179 0         0 my $ftype = 0;
2180 0         0 my $fid = 0;
2181 0         0 $xfer += $input->readStructBegin(\$fname);
2182 0         0 while (1)
2183             {
2184 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2185 0 0       0 if ($ftype == Thrift::TType::STOP) {
2186 0         0 last;
2187             }
2188 0         0 SWITCH: for($fid)
2189             {
2190 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::I64) {
  0 0       0  
2191 0         0 $xfer += $input->readI64(\$self->{success});
2192             } else {
2193 0         0 $xfer += $input->skip($ftype);
2194             }
2195 0         0 last; };
2196 0         0 $xfer += $input->skip($ftype);
2197             }
2198 0         0 $xfer += $input->readFieldEnd();
2199             }
2200 0         0 $xfer += $input->readStructEnd();
2201 0         0 return $xfer;
2202             }
2203              
2204             sub write {
2205 0     0   0 my ($self, $output) = @_;
2206 0         0 my $xfer = 0;
2207 0         0 $xfer += $output->writeStructBegin('ThriftTest_testTypedef_result');
2208 0 0       0 if (defined $self->{success}) {
2209 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::I64, 0);
2210 0         0 $xfer += $output->writeI64($self->{success});
2211 0         0 $xfer += $output->writeFieldEnd();
2212             }
2213 0         0 $xfer += $output->writeFieldStop();
2214 0         0 $xfer += $output->writeStructEnd();
2215 0         0 return $xfer;
2216             }
2217              
2218             package ThriftTest::ThriftTest_testMapMap_args;
2219 1     1   9 use base qw(Class::Accessor);
  1         3  
  1         532  
2220             ThriftTest::ThriftTest_testMapMap_args->mk_accessors( qw( hello ) );
2221              
2222             sub new {
2223 0     0   0 my $classname = shift;
2224 0         0 my $self = {};
2225 0   0     0 my $vals = shift || {};
2226 0         0 $self->{hello} = undef;
2227 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2228 0 0       0 if (defined $vals->{hello}) {
2229 0         0 $self->{hello} = $vals->{hello};
2230             }
2231             }
2232 0         0 return bless ($self, $classname);
2233             }
2234              
2235             sub getName {
2236 0     0   0 return 'ThriftTest_testMapMap_args';
2237             }
2238              
2239             sub read {
2240 0     0   0 my ($self, $input) = @_;
2241 0         0 my $xfer = 0;
2242 0         0 my $fname;
2243 0         0 my $ftype = 0;
2244 0         0 my $fid = 0;
2245 0         0 $xfer += $input->readStructBegin(\$fname);
2246 0         0 while (1)
2247             {
2248 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2249 0 0       0 if ($ftype == Thrift::TType::STOP) {
2250 0         0 last;
2251             }
2252 0         0 SWITCH: for($fid)
2253             {
2254 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
2255 0         0 $xfer += $input->readI32(\$self->{hello});
2256             } else {
2257 0         0 $xfer += $input->skip($ftype);
2258             }
2259 0         0 last; };
2260 0         0 $xfer += $input->skip($ftype);
2261             }
2262 0         0 $xfer += $input->readFieldEnd();
2263             }
2264 0         0 $xfer += $input->readStructEnd();
2265 0         0 return $xfer;
2266             }
2267              
2268             sub write {
2269 0     0   0 my ($self, $output) = @_;
2270 0         0 my $xfer = 0;
2271 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMapMap_args');
2272 0 0       0 if (defined $self->{hello}) {
2273 0         0 $xfer += $output->writeFieldBegin('hello', Thrift::TType::I32, 1);
2274 0         0 $xfer += $output->writeI32($self->{hello});
2275 0         0 $xfer += $output->writeFieldEnd();
2276             }
2277 0         0 $xfer += $output->writeFieldStop();
2278 0         0 $xfer += $output->writeStructEnd();
2279 0         0 return $xfer;
2280             }
2281              
2282             package ThriftTest::ThriftTest_testMapMap_result;
2283 1     1   7 use base qw(Class::Accessor);
  1         3  
  1         783  
2284             ThriftTest::ThriftTest_testMapMap_result->mk_accessors( qw( success ) );
2285              
2286             sub new {
2287 0     0   0 my $classname = shift;
2288 0         0 my $self = {};
2289 0   0     0 my $vals = shift || {};
2290 0         0 $self->{success} = undef;
2291 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2292 0 0       0 if (defined $vals->{success}) {
2293 0         0 $self->{success} = $vals->{success};
2294             }
2295             }
2296 0         0 return bless ($self, $classname);
2297             }
2298              
2299             sub getName {
2300 0     0   0 return 'ThriftTest_testMapMap_result';
2301             }
2302              
2303             sub read {
2304 0     0   0 my ($self, $input) = @_;
2305 0         0 my $xfer = 0;
2306 0         0 my $fname;
2307 0         0 my $ftype = 0;
2308 0         0 my $fid = 0;
2309 0         0 $xfer += $input->readStructBegin(\$fname);
2310 0         0 while (1)
2311             {
2312 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2313 0 0       0 if ($ftype == Thrift::TType::STOP) {
2314 0         0 last;
2315             }
2316 0         0 SWITCH: for($fid)
2317             {
2318 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
2319             {
2320 0         0 my $_size334 = 0;
  0         0  
2321 0         0 $self->{success} = {};
2322 0         0 my $_ktype335 = 0;
2323 0         0 my $_vtype336 = 0;
2324 0         0 $xfer += $input->readMapBegin(\$_ktype335, \$_vtype336, \$_size334);
2325 0         0 for (my $_i338 = 0; $_i338 < $_size334; ++$_i338)
2326             {
2327 0         0 my $key339 = 0;
2328 0         0 my $val340 = [];
2329 0         0 $xfer += $input->readI32(\$key339);
2330             {
2331 0         0 my $_size341 = 0;
  0         0  
2332 0         0 $val340 = {};
2333 0         0 my $_ktype342 = 0;
2334 0         0 my $_vtype343 = 0;
2335 0         0 $xfer += $input->readMapBegin(\$_ktype342, \$_vtype343, \$_size341);
2336 0         0 for (my $_i345 = 0; $_i345 < $_size341; ++$_i345)
2337             {
2338 0         0 my $key346 = 0;
2339 0         0 my $val347 = 0;
2340 0         0 $xfer += $input->readI32(\$key346);
2341 0         0 $xfer += $input->readI32(\$val347);
2342 0         0 $val340->{$key346} = $val347;
2343             }
2344 0         0 $xfer += $input->readMapEnd();
2345             }
2346 0         0 $self->{success}->{$key339} = $val340;
2347             }
2348 0         0 $xfer += $input->readMapEnd();
2349             }
2350             } else {
2351 0         0 $xfer += $input->skip($ftype);
2352             }
2353 0         0 last; };
2354 0         0 $xfer += $input->skip($ftype);
2355             }
2356 0         0 $xfer += $input->readFieldEnd();
2357             }
2358 0         0 $xfer += $input->readStructEnd();
2359 0         0 return $xfer;
2360             }
2361              
2362             sub write {
2363 0     0   0 my ($self, $output) = @_;
2364 0         0 my $xfer = 0;
2365 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMapMap_result');
2366 0 0       0 if (defined $self->{success}) {
2367 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::MAP, 0);
2368             {
2369 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I32, Thrift::TType::MAP, scalar(keys %{$self->{success}}));
  0         0  
  0         0  
2370             {
2371 0         0 while( my ($kiter348,$viter349) = each %{$self->{success}})
  0         0  
  0         0  
2372             {
2373 0         0 $xfer += $output->writeI32($kiter348);
2374             {
2375 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I32, Thrift::TType::I32, scalar(keys %{${viter349}}));
  0         0  
  0         0  
2376             {
2377 0         0 while( my ($kiter350,$viter351) = each %{${viter349}})
  0         0  
  0         0  
2378             {
2379 0         0 $xfer += $output->writeI32($kiter350);
2380 0         0 $xfer += $output->writeI32($viter351);
2381             }
2382             }
2383 0         0 $xfer += $output->writeMapEnd();
2384             }
2385             }
2386             }
2387 0         0 $xfer += $output->writeMapEnd();
2388             }
2389 0         0 $xfer += $output->writeFieldEnd();
2390             }
2391 0         0 $xfer += $output->writeFieldStop();
2392 0         0 $xfer += $output->writeStructEnd();
2393 0         0 return $xfer;
2394             }
2395              
2396             package ThriftTest::ThriftTest_testInsanity_args;
2397 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         506  
2398             ThriftTest::ThriftTest_testInsanity_args->mk_accessors( qw( argument ) );
2399              
2400             sub new {
2401 0     0   0 my $classname = shift;
2402 0         0 my $self = {};
2403 0   0     0 my $vals = shift || {};
2404 0         0 $self->{argument} = undef;
2405 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2406 0 0       0 if (defined $vals->{argument}) {
2407 0         0 $self->{argument} = $vals->{argument};
2408             }
2409             }
2410 0         0 return bless ($self, $classname);
2411             }
2412              
2413             sub getName {
2414 0     0   0 return 'ThriftTest_testInsanity_args';
2415             }
2416              
2417             sub read {
2418 0     0   0 my ($self, $input) = @_;
2419 0         0 my $xfer = 0;
2420 0         0 my $fname;
2421 0         0 my $ftype = 0;
2422 0         0 my $fid = 0;
2423 0         0 $xfer += $input->readStructBegin(\$fname);
2424 0         0 while (1)
2425             {
2426 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2427 0 0       0 if ($ftype == Thrift::TType::STOP) {
2428 0         0 last;
2429             }
2430 0         0 SWITCH: for($fid)
2431             {
2432 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
2433 0         0 $self->{argument} = ThriftTest::Insanity->new();
2434 0         0 $xfer += $self->{argument}->read($input);
2435             } else {
2436 0         0 $xfer += $input->skip($ftype);
2437             }
2438 0         0 last; };
2439 0         0 $xfer += $input->skip($ftype);
2440             }
2441 0         0 $xfer += $input->readFieldEnd();
2442             }
2443 0         0 $xfer += $input->readStructEnd();
2444 0         0 return $xfer;
2445             }
2446              
2447             sub write {
2448 0     0   0 my ($self, $output) = @_;
2449 0         0 my $xfer = 0;
2450 0         0 $xfer += $output->writeStructBegin('ThriftTest_testInsanity_args');
2451 0 0       0 if (defined $self->{argument}) {
2452 0         0 $xfer += $output->writeFieldBegin('argument', Thrift::TType::STRUCT, 1);
2453 0         0 $xfer += $self->{argument}->write($output);
2454 0         0 $xfer += $output->writeFieldEnd();
2455             }
2456 0         0 $xfer += $output->writeFieldStop();
2457 0         0 $xfer += $output->writeStructEnd();
2458 0         0 return $xfer;
2459             }
2460              
2461             package ThriftTest::ThriftTest_testInsanity_result;
2462 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         815  
2463             ThriftTest::ThriftTest_testInsanity_result->mk_accessors( qw( success ) );
2464              
2465             sub new {
2466 0     0   0 my $classname = shift;
2467 0         0 my $self = {};
2468 0   0     0 my $vals = shift || {};
2469 0         0 $self->{success} = undef;
2470 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2471 0 0       0 if (defined $vals->{success}) {
2472 0         0 $self->{success} = $vals->{success};
2473             }
2474             }
2475 0         0 return bless ($self, $classname);
2476             }
2477              
2478             sub getName {
2479 0     0   0 return 'ThriftTest_testInsanity_result';
2480             }
2481              
2482             sub read {
2483 0     0   0 my ($self, $input) = @_;
2484 0         0 my $xfer = 0;
2485 0         0 my $fname;
2486 0         0 my $ftype = 0;
2487 0         0 my $fid = 0;
2488 0         0 $xfer += $input->readStructBegin(\$fname);
2489 0         0 while (1)
2490             {
2491 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2492 0 0       0 if ($ftype == Thrift::TType::STOP) {
2493 0         0 last;
2494             }
2495 0         0 SWITCH: for($fid)
2496             {
2497 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
2498             {
2499 0         0 my $_size352 = 0;
  0         0  
2500 0         0 $self->{success} = {};
2501 0         0 my $_ktype353 = 0;
2502 0         0 my $_vtype354 = 0;
2503 0         0 $xfer += $input->readMapBegin(\$_ktype353, \$_vtype354, \$_size352);
2504 0         0 for (my $_i356 = 0; $_i356 < $_size352; ++$_i356)
2505             {
2506 0         0 my $key357 = 0;
2507 0         0 my $val358 = [];
2508 0         0 $xfer += $input->readI64(\$key357);
2509             {
2510 0         0 my $_size359 = 0;
  0         0  
2511 0         0 $val358 = {};
2512 0         0 my $_ktype360 = 0;
2513 0         0 my $_vtype361 = 0;
2514 0         0 $xfer += $input->readMapBegin(\$_ktype360, \$_vtype361, \$_size359);
2515 0         0 for (my $_i363 = 0; $_i363 < $_size359; ++$_i363)
2516             {
2517 0         0 my $key364 = 0;
2518 0         0 my $val365 = ThriftTest::Insanity->new();
2519 0         0 $xfer += $input->readI32(\$key364);
2520 0         0 $val365 = ThriftTest::Insanity->new();
2521 0         0 $xfer += $val365->read($input);
2522 0         0 $val358->{$key364} = $val365;
2523             }
2524 0         0 $xfer += $input->readMapEnd();
2525             }
2526 0         0 $self->{success}->{$key357} = $val358;
2527             }
2528 0         0 $xfer += $input->readMapEnd();
2529             }
2530             } else {
2531 0         0 $xfer += $input->skip($ftype);
2532             }
2533 0         0 last; };
2534 0         0 $xfer += $input->skip($ftype);
2535             }
2536 0         0 $xfer += $input->readFieldEnd();
2537             }
2538 0         0 $xfer += $input->readStructEnd();
2539 0         0 return $xfer;
2540             }
2541              
2542             sub write {
2543 0     0   0 my ($self, $output) = @_;
2544 0         0 my $xfer = 0;
2545 0         0 $xfer += $output->writeStructBegin('ThriftTest_testInsanity_result');
2546 0 0       0 if (defined $self->{success}) {
2547 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::MAP, 0);
2548             {
2549 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I64, Thrift::TType::MAP, scalar(keys %{$self->{success}}));
  0         0  
  0         0  
2550             {
2551 0         0 while( my ($kiter366,$viter367) = each %{$self->{success}})
  0         0  
  0         0  
2552             {
2553 0         0 $xfer += $output->writeI64($kiter366);
2554             {
2555 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I32, Thrift::TType::STRUCT, scalar(keys %{${viter367}}));
  0         0  
  0         0  
2556             {
2557 0         0 while( my ($kiter368,$viter369) = each %{${viter367}})
  0         0  
  0         0  
2558             {
2559 0         0 $xfer += $output->writeI32($kiter368);
2560 0         0 $xfer += ${viter369}->write($output);
2561             }
2562             }
2563 0         0 $xfer += $output->writeMapEnd();
2564             }
2565             }
2566             }
2567 0         0 $xfer += $output->writeMapEnd();
2568             }
2569 0         0 $xfer += $output->writeFieldEnd();
2570             }
2571 0         0 $xfer += $output->writeFieldStop();
2572 0         0 $xfer += $output->writeStructEnd();
2573 0         0 return $xfer;
2574             }
2575              
2576             package ThriftTest::ThriftTest_testMulti_args;
2577 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         1152  
2578             ThriftTest::ThriftTest_testMulti_args->mk_accessors( qw( arg0 arg1 arg2 arg3 arg4 arg5 ) );
2579              
2580             sub new {
2581 0     0   0 my $classname = shift;
2582 0         0 my $self = {};
2583 0   0     0 my $vals = shift || {};
2584 0         0 $self->{arg0} = undef;
2585 0         0 $self->{arg1} = undef;
2586 0         0 $self->{arg2} = undef;
2587 0         0 $self->{arg3} = undef;
2588 0         0 $self->{arg4} = undef;
2589 0         0 $self->{arg5} = undef;
2590 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2591 0 0       0 if (defined $vals->{arg0}) {
2592 0         0 $self->{arg0} = $vals->{arg0};
2593             }
2594 0 0       0 if (defined $vals->{arg1}) {
2595 0         0 $self->{arg1} = $vals->{arg1};
2596             }
2597 0 0       0 if (defined $vals->{arg2}) {
2598 0         0 $self->{arg2} = $vals->{arg2};
2599             }
2600 0 0       0 if (defined $vals->{arg3}) {
2601 0         0 $self->{arg3} = $vals->{arg3};
2602             }
2603 0 0       0 if (defined $vals->{arg4}) {
2604 0         0 $self->{arg4} = $vals->{arg4};
2605             }
2606 0 0       0 if (defined $vals->{arg5}) {
2607 0         0 $self->{arg5} = $vals->{arg5};
2608             }
2609             }
2610 0         0 return bless ($self, $classname);
2611             }
2612              
2613             sub getName {
2614 0     0   0 return 'ThriftTest_testMulti_args';
2615             }
2616              
2617             sub read {
2618 0     0   0 my ($self, $input) = @_;
2619 0         0 my $xfer = 0;
2620 0         0 my $fname;
2621 0         0 my $ftype = 0;
2622 0         0 my $fid = 0;
2623 0         0 $xfer += $input->readStructBegin(\$fname);
2624 0         0 while (1)
2625             {
2626 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2627 0 0       0 if ($ftype == Thrift::TType::STOP) {
2628 0         0 last;
2629             }
2630 0         0 SWITCH: for($fid)
2631             {
2632 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::BYTE) {
  0 0       0  
2633 0         0 $xfer += $input->readByte(\$self->{arg0});
2634             } else {
2635 0         0 $xfer += $input->skip($ftype);
2636             }
2637 0         0 last; };
2638 0 0       0 /^2$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
2639 0         0 $xfer += $input->readI32(\$self->{arg1});
2640             } else {
2641 0         0 $xfer += $input->skip($ftype);
2642             }
2643 0         0 last; };
2644 0 0       0 /^3$/ && do{ if ($ftype == Thrift::TType::I64) {
  0 0       0  
2645 0         0 $xfer += $input->readI64(\$self->{arg2});
2646             } else {
2647 0         0 $xfer += $input->skip($ftype);
2648             }
2649 0         0 last; };
2650 0 0       0 /^4$/ && do{ if ($ftype == Thrift::TType::MAP) {
  0 0       0  
2651             {
2652 0         0 my $_size370 = 0;
  0         0  
2653 0         0 $self->{arg3} = {};
2654 0         0 my $_ktype371 = 0;
2655 0         0 my $_vtype372 = 0;
2656 0         0 $xfer += $input->readMapBegin(\$_ktype371, \$_vtype372, \$_size370);
2657 0         0 for (my $_i374 = 0; $_i374 < $_size370; ++$_i374)
2658             {
2659 0         0 my $key375 = 0;
2660 0         0 my $val376 = '';
2661 0         0 $xfer += $input->readI16(\$key375);
2662 0         0 $xfer += $input->readString(\$val376);
2663 0         0 $self->{arg3}->{$key375} = $val376;
2664             }
2665 0         0 $xfer += $input->readMapEnd();
2666             }
2667             } else {
2668 0         0 $xfer += $input->skip($ftype);
2669             }
2670 0         0 last; };
2671 0 0       0 /^5$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
2672 0         0 $xfer += $input->readI32(\$self->{arg4});
2673             } else {
2674 0         0 $xfer += $input->skip($ftype);
2675             }
2676 0         0 last; };
2677 0 0       0 /^6$/ && do{ if ($ftype == Thrift::TType::I64) {
  0 0       0  
2678 0         0 $xfer += $input->readI64(\$self->{arg5});
2679             } else {
2680 0         0 $xfer += $input->skip($ftype);
2681             }
2682 0         0 last; };
2683 0         0 $xfer += $input->skip($ftype);
2684             }
2685 0         0 $xfer += $input->readFieldEnd();
2686             }
2687 0         0 $xfer += $input->readStructEnd();
2688 0         0 return $xfer;
2689             }
2690              
2691             sub write {
2692 0     0   0 my ($self, $output) = @_;
2693 0         0 my $xfer = 0;
2694 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMulti_args');
2695 0 0       0 if (defined $self->{arg0}) {
2696 0         0 $xfer += $output->writeFieldBegin('arg0', Thrift::TType::BYTE, 1);
2697 0         0 $xfer += $output->writeByte($self->{arg0});
2698 0         0 $xfer += $output->writeFieldEnd();
2699             }
2700 0 0       0 if (defined $self->{arg1}) {
2701 0         0 $xfer += $output->writeFieldBegin('arg1', Thrift::TType::I32, 2);
2702 0         0 $xfer += $output->writeI32($self->{arg1});
2703 0         0 $xfer += $output->writeFieldEnd();
2704             }
2705 0 0       0 if (defined $self->{arg2}) {
2706 0         0 $xfer += $output->writeFieldBegin('arg2', Thrift::TType::I64, 3);
2707 0         0 $xfer += $output->writeI64($self->{arg2});
2708 0         0 $xfer += $output->writeFieldEnd();
2709             }
2710 0 0       0 if (defined $self->{arg3}) {
2711 0         0 $xfer += $output->writeFieldBegin('arg3', Thrift::TType::MAP, 4);
2712             {
2713 0         0 $xfer += $output->writeMapBegin(Thrift::TType::I16, Thrift::TType::STRING, scalar(keys %{$self->{arg3}}));
  0         0  
  0         0  
2714             {
2715 0         0 while( my ($kiter377,$viter378) = each %{$self->{arg3}})
  0         0  
  0         0  
2716             {
2717 0         0 $xfer += $output->writeI16($kiter377);
2718 0         0 $xfer += $output->writeString($viter378);
2719             }
2720             }
2721 0         0 $xfer += $output->writeMapEnd();
2722             }
2723 0         0 $xfer += $output->writeFieldEnd();
2724             }
2725 0 0       0 if (defined $self->{arg4}) {
2726 0         0 $xfer += $output->writeFieldBegin('arg4', Thrift::TType::I32, 5);
2727 0         0 $xfer += $output->writeI32($self->{arg4});
2728 0         0 $xfer += $output->writeFieldEnd();
2729             }
2730 0 0       0 if (defined $self->{arg5}) {
2731 0         0 $xfer += $output->writeFieldBegin('arg5', Thrift::TType::I64, 6);
2732 0         0 $xfer += $output->writeI64($self->{arg5});
2733 0         0 $xfer += $output->writeFieldEnd();
2734             }
2735 0         0 $xfer += $output->writeFieldStop();
2736 0         0 $xfer += $output->writeStructEnd();
2737 0         0 return $xfer;
2738             }
2739              
2740             package ThriftTest::ThriftTest_testMulti_result;
2741 1     1   9 use base qw(Class::Accessor);
  1         3  
  1         517  
2742             ThriftTest::ThriftTest_testMulti_result->mk_accessors( qw( success ) );
2743              
2744             sub new {
2745 0     0   0 my $classname = shift;
2746 0         0 my $self = {};
2747 0   0     0 my $vals = shift || {};
2748 0         0 $self->{success} = undef;
2749 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2750 0 0       0 if (defined $vals->{success}) {
2751 0         0 $self->{success} = $vals->{success};
2752             }
2753             }
2754 0         0 return bless ($self, $classname);
2755             }
2756              
2757             sub getName {
2758 0     0   0 return 'ThriftTest_testMulti_result';
2759             }
2760              
2761             sub read {
2762 0     0   0 my ($self, $input) = @_;
2763 0         0 my $xfer = 0;
2764 0         0 my $fname;
2765 0         0 my $ftype = 0;
2766 0         0 my $fid = 0;
2767 0         0 $xfer += $input->readStructBegin(\$fname);
2768 0         0 while (1)
2769             {
2770 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2771 0 0       0 if ($ftype == Thrift::TType::STOP) {
2772 0         0 last;
2773             }
2774 0         0 SWITCH: for($fid)
2775             {
2776 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
2777 0         0 $self->{success} = ThriftTest::Xtruct->new();
2778 0         0 $xfer += $self->{success}->read($input);
2779             } else {
2780 0         0 $xfer += $input->skip($ftype);
2781             }
2782 0         0 last; };
2783 0         0 $xfer += $input->skip($ftype);
2784             }
2785 0         0 $xfer += $input->readFieldEnd();
2786             }
2787 0         0 $xfer += $input->readStructEnd();
2788 0         0 return $xfer;
2789             }
2790              
2791             sub write {
2792 0     0   0 my ($self, $output) = @_;
2793 0         0 my $xfer = 0;
2794 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMulti_result');
2795 0 0       0 if (defined $self->{success}) {
2796 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::STRUCT, 0);
2797 0         0 $xfer += $self->{success}->write($output);
2798 0         0 $xfer += $output->writeFieldEnd();
2799             }
2800 0         0 $xfer += $output->writeFieldStop();
2801 0         0 $xfer += $output->writeStructEnd();
2802 0         0 return $xfer;
2803             }
2804              
2805             package ThriftTest::ThriftTest_testException_args;
2806 1     1   7 use base qw(Class::Accessor);
  1         2  
  1         466  
2807             ThriftTest::ThriftTest_testException_args->mk_accessors( qw( arg ) );
2808              
2809             sub new {
2810 0     0   0 my $classname = shift;
2811 0         0 my $self = {};
2812 0   0     0 my $vals = shift || {};
2813 0         0 $self->{arg} = undef;
2814 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2815 0 0       0 if (defined $vals->{arg}) {
2816 0         0 $self->{arg} = $vals->{arg};
2817             }
2818             }
2819 0         0 return bless ($self, $classname);
2820             }
2821              
2822             sub getName {
2823 0     0   0 return 'ThriftTest_testException_args';
2824             }
2825              
2826             sub read {
2827 0     0   0 my ($self, $input) = @_;
2828 0         0 my $xfer = 0;
2829 0         0 my $fname;
2830 0         0 my $ftype = 0;
2831 0         0 my $fid = 0;
2832 0         0 $xfer += $input->readStructBegin(\$fname);
2833 0         0 while (1)
2834             {
2835 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2836 0 0       0 if ($ftype == Thrift::TType::STOP) {
2837 0         0 last;
2838             }
2839 0         0 SWITCH: for($fid)
2840             {
2841 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRING) {
  0 0       0  
2842 0         0 $xfer += $input->readString(\$self->{arg});
2843             } else {
2844 0         0 $xfer += $input->skip($ftype);
2845             }
2846 0         0 last; };
2847 0         0 $xfer += $input->skip($ftype);
2848             }
2849 0         0 $xfer += $input->readFieldEnd();
2850             }
2851 0         0 $xfer += $input->readStructEnd();
2852 0         0 return $xfer;
2853             }
2854              
2855             sub write {
2856 0     0   0 my ($self, $output) = @_;
2857 0         0 my $xfer = 0;
2858 0         0 $xfer += $output->writeStructBegin('ThriftTest_testException_args');
2859 0 0       0 if (defined $self->{arg}) {
2860 0         0 $xfer += $output->writeFieldBegin('arg', Thrift::TType::STRING, 1);
2861 0         0 $xfer += $output->writeString($self->{arg});
2862 0         0 $xfer += $output->writeFieldEnd();
2863             }
2864 0         0 $xfer += $output->writeFieldStop();
2865 0         0 $xfer += $output->writeStructEnd();
2866 0         0 return $xfer;
2867             }
2868              
2869             package ThriftTest::ThriftTest_testException_result;
2870 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         508  
2871             ThriftTest::ThriftTest_testException_result->mk_accessors( qw( ) );
2872              
2873             sub new {
2874 0     0   0 my $classname = shift;
2875 0         0 my $self = {};
2876 0   0     0 my $vals = shift || {};
2877 0         0 $self->{err1} = undef;
2878 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2879 0 0       0 if (defined $vals->{err1}) {
2880 0         0 $self->{err1} = $vals->{err1};
2881             }
2882             }
2883 0         0 return bless ($self, $classname);
2884             }
2885              
2886             sub getName {
2887 0     0   0 return 'ThriftTest_testException_result';
2888             }
2889              
2890             sub read {
2891 0     0   0 my ($self, $input) = @_;
2892 0         0 my $xfer = 0;
2893 0         0 my $fname;
2894 0         0 my $ftype = 0;
2895 0         0 my $fid = 0;
2896 0         0 $xfer += $input->readStructBegin(\$fname);
2897 0         0 while (1)
2898             {
2899 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2900 0 0       0 if ($ftype == Thrift::TType::STOP) {
2901 0         0 last;
2902             }
2903 0         0 SWITCH: for($fid)
2904             {
2905 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
2906 0         0 $self->{err1} = ThriftTest::Xception->new();
2907 0         0 $xfer += $self->{err1}->read($input);
2908             } else {
2909 0         0 $xfer += $input->skip($ftype);
2910             }
2911 0         0 last; };
2912 0         0 $xfer += $input->skip($ftype);
2913             }
2914 0         0 $xfer += $input->readFieldEnd();
2915             }
2916 0         0 $xfer += $input->readStructEnd();
2917 0         0 return $xfer;
2918             }
2919              
2920             sub write {
2921 0     0   0 my ($self, $output) = @_;
2922 0         0 my $xfer = 0;
2923 0         0 $xfer += $output->writeStructBegin('ThriftTest_testException_result');
2924 0 0       0 if (defined $self->{err1}) {
2925 0         0 $xfer += $output->writeFieldBegin('err1', Thrift::TType::STRUCT, 1);
2926 0         0 $xfer += $self->{err1}->write($output);
2927 0         0 $xfer += $output->writeFieldEnd();
2928             }
2929 0         0 $xfer += $output->writeFieldStop();
2930 0         0 $xfer += $output->writeStructEnd();
2931 0         0 return $xfer;
2932             }
2933              
2934             package ThriftTest::ThriftTest_testMultiException_args;
2935 1     1   9 use base qw(Class::Accessor);
  1         3  
  1         583  
2936             ThriftTest::ThriftTest_testMultiException_args->mk_accessors( qw( arg0 arg1 ) );
2937              
2938             sub new {
2939 0     0   0 my $classname = shift;
2940 0         0 my $self = {};
2941 0   0     0 my $vals = shift || {};
2942 0         0 $self->{arg0} = undef;
2943 0         0 $self->{arg1} = undef;
2944 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
2945 0 0       0 if (defined $vals->{arg0}) {
2946 0         0 $self->{arg0} = $vals->{arg0};
2947             }
2948 0 0       0 if (defined $vals->{arg1}) {
2949 0         0 $self->{arg1} = $vals->{arg1};
2950             }
2951             }
2952 0         0 return bless ($self, $classname);
2953             }
2954              
2955             sub getName {
2956 0     0   0 return 'ThriftTest_testMultiException_args';
2957             }
2958              
2959             sub read {
2960 0     0   0 my ($self, $input) = @_;
2961 0         0 my $xfer = 0;
2962 0         0 my $fname;
2963 0         0 my $ftype = 0;
2964 0         0 my $fid = 0;
2965 0         0 $xfer += $input->readStructBegin(\$fname);
2966 0         0 while (1)
2967             {
2968 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
2969 0 0       0 if ($ftype == Thrift::TType::STOP) {
2970 0         0 last;
2971             }
2972 0         0 SWITCH: for($fid)
2973             {
2974 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRING) {
  0 0       0  
2975 0         0 $xfer += $input->readString(\$self->{arg0});
2976             } else {
2977 0         0 $xfer += $input->skip($ftype);
2978             }
2979 0         0 last; };
2980 0 0       0 /^2$/ && do{ if ($ftype == Thrift::TType::STRING) {
  0 0       0  
2981 0         0 $xfer += $input->readString(\$self->{arg1});
2982             } else {
2983 0         0 $xfer += $input->skip($ftype);
2984             }
2985 0         0 last; };
2986 0         0 $xfer += $input->skip($ftype);
2987             }
2988 0         0 $xfer += $input->readFieldEnd();
2989             }
2990 0         0 $xfer += $input->readStructEnd();
2991 0         0 return $xfer;
2992             }
2993              
2994             sub write {
2995 0     0   0 my ($self, $output) = @_;
2996 0         0 my $xfer = 0;
2997 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMultiException_args');
2998 0 0       0 if (defined $self->{arg0}) {
2999 0         0 $xfer += $output->writeFieldBegin('arg0', Thrift::TType::STRING, 1);
3000 0         0 $xfer += $output->writeString($self->{arg0});
3001 0         0 $xfer += $output->writeFieldEnd();
3002             }
3003 0 0       0 if (defined $self->{arg1}) {
3004 0         0 $xfer += $output->writeFieldBegin('arg1', Thrift::TType::STRING, 2);
3005 0         0 $xfer += $output->writeString($self->{arg1});
3006 0         0 $xfer += $output->writeFieldEnd();
3007             }
3008 0         0 $xfer += $output->writeFieldStop();
3009 0         0 $xfer += $output->writeStructEnd();
3010 0         0 return $xfer;
3011             }
3012              
3013             package ThriftTest::ThriftTest_testMultiException_result;
3014 1     1   8 use base qw(Class::Accessor);
  1         2  
  1         786  
3015             ThriftTest::ThriftTest_testMultiException_result->mk_accessors( qw( success ) );
3016              
3017             sub new {
3018 0     0   0 my $classname = shift;
3019 0         0 my $self = {};
3020 0   0     0 my $vals = shift || {};
3021 0         0 $self->{success} = undef;
3022 0         0 $self->{err1} = undef;
3023 0         0 $self->{err2} = undef;
3024 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
3025 0 0       0 if (defined $vals->{success}) {
3026 0         0 $self->{success} = $vals->{success};
3027             }
3028 0 0       0 if (defined $vals->{err1}) {
3029 0         0 $self->{err1} = $vals->{err1};
3030             }
3031 0 0       0 if (defined $vals->{err2}) {
3032 0         0 $self->{err2} = $vals->{err2};
3033             }
3034             }
3035 0         0 return bless ($self, $classname);
3036             }
3037              
3038             sub getName {
3039 0     0   0 return 'ThriftTest_testMultiException_result';
3040             }
3041              
3042             sub read {
3043 0     0   0 my ($self, $input) = @_;
3044 0         0 my $xfer = 0;
3045 0         0 my $fname;
3046 0         0 my $ftype = 0;
3047 0         0 my $fid = 0;
3048 0         0 $xfer += $input->readStructBegin(\$fname);
3049 0         0 while (1)
3050             {
3051 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
3052 0 0       0 if ($ftype == Thrift::TType::STOP) {
3053 0         0 last;
3054             }
3055 0         0 SWITCH: for($fid)
3056             {
3057 0 0       0 /^0$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
3058 0         0 $self->{success} = ThriftTest::Xtruct->new();
3059 0         0 $xfer += $self->{success}->read($input);
3060             } else {
3061 0         0 $xfer += $input->skip($ftype);
3062             }
3063 0         0 last; };
3064 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
3065 0         0 $self->{err1} = ThriftTest::Xception->new();
3066 0         0 $xfer += $self->{err1}->read($input);
3067             } else {
3068 0         0 $xfer += $input->skip($ftype);
3069             }
3070 0         0 last; };
3071 0 0       0 /^2$/ && do{ if ($ftype == Thrift::TType::STRUCT) {
  0 0       0  
3072 0         0 $self->{err2} = ThriftTest::Xception2->new();
3073 0         0 $xfer += $self->{err2}->read($input);
3074             } else {
3075 0         0 $xfer += $input->skip($ftype);
3076             }
3077 0         0 last; };
3078 0         0 $xfer += $input->skip($ftype);
3079             }
3080 0         0 $xfer += $input->readFieldEnd();
3081             }
3082 0         0 $xfer += $input->readStructEnd();
3083 0         0 return $xfer;
3084             }
3085              
3086             sub write {
3087 0     0   0 my ($self, $output) = @_;
3088 0         0 my $xfer = 0;
3089 0         0 $xfer += $output->writeStructBegin('ThriftTest_testMultiException_result');
3090 0 0       0 if (defined $self->{success}) {
3091 0         0 $xfer += $output->writeFieldBegin('success', Thrift::TType::STRUCT, 0);
3092 0         0 $xfer += $self->{success}->write($output);
3093 0         0 $xfer += $output->writeFieldEnd();
3094             }
3095 0 0       0 if (defined $self->{err1}) {
3096 0         0 $xfer += $output->writeFieldBegin('err1', Thrift::TType::STRUCT, 1);
3097 0         0 $xfer += $self->{err1}->write($output);
3098 0         0 $xfer += $output->writeFieldEnd();
3099             }
3100 0 0       0 if (defined $self->{err2}) {
3101 0         0 $xfer += $output->writeFieldBegin('err2', Thrift::TType::STRUCT, 2);
3102 0         0 $xfer += $self->{err2}->write($output);
3103 0         0 $xfer += $output->writeFieldEnd();
3104             }
3105 0         0 $xfer += $output->writeFieldStop();
3106 0         0 $xfer += $output->writeStructEnd();
3107 0         0 return $xfer;
3108             }
3109              
3110             package ThriftTest::ThriftTest_testOneway_args;
3111 1     1   9 use base qw(Class::Accessor);
  1         2  
  1         490  
3112             ThriftTest::ThriftTest_testOneway_args->mk_accessors( qw( secondsToSleep ) );
3113              
3114             sub new {
3115 0     0   0 my $classname = shift;
3116 0         0 my $self = {};
3117 0   0     0 my $vals = shift || {};
3118 0         0 $self->{secondsToSleep} = undef;
3119 0 0       0 if (UNIVERSAL::isa($vals,'HASH')) {
3120 0 0       0 if (defined $vals->{secondsToSleep}) {
3121 0         0 $self->{secondsToSleep} = $vals->{secondsToSleep};
3122             }
3123             }
3124 0         0 return bless ($self, $classname);
3125             }
3126              
3127             sub getName {
3128 0     0   0 return 'ThriftTest_testOneway_args';
3129             }
3130              
3131             sub read {
3132 0     0   0 my ($self, $input) = @_;
3133 0         0 my $xfer = 0;
3134 0         0 my $fname;
3135 0         0 my $ftype = 0;
3136 0         0 my $fid = 0;
3137 0         0 $xfer += $input->readStructBegin(\$fname);
3138 0         0 while (1)
3139             {
3140 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
3141 0 0       0 if ($ftype == Thrift::TType::STOP) {
3142 0         0 last;
3143             }
3144 0         0 SWITCH: for($fid)
3145             {
3146 0 0       0 /^1$/ && do{ if ($ftype == Thrift::TType::I32) {
  0 0       0  
3147 0         0 $xfer += $input->readI32(\$self->{secondsToSleep});
3148             } else {
3149 0         0 $xfer += $input->skip($ftype);
3150             }
3151 0         0 last; };
3152 0         0 $xfer += $input->skip($ftype);
3153             }
3154 0         0 $xfer += $input->readFieldEnd();
3155             }
3156 0         0 $xfer += $input->readStructEnd();
3157 0         0 return $xfer;
3158             }
3159              
3160             sub write {
3161 0     0   0 my ($self, $output) = @_;
3162 0         0 my $xfer = 0;
3163 0         0 $xfer += $output->writeStructBegin('ThriftTest_testOneway_args');
3164 0 0       0 if (defined $self->{secondsToSleep}) {
3165 0         0 $xfer += $output->writeFieldBegin('secondsToSleep', Thrift::TType::I32, 1);
3166 0         0 $xfer += $output->writeI32($self->{secondsToSleep});
3167 0         0 $xfer += $output->writeFieldEnd();
3168             }
3169 0         0 $xfer += $output->writeFieldStop();
3170 0         0 $xfer += $output->writeStructEnd();
3171 0         0 return $xfer;
3172             }
3173              
3174             package ThriftTest::ThriftTest_testOneway_result;
3175 1     1   8 use base qw(Class::Accessor);
  1         10  
  1         339  
3176              
3177             sub new {
3178 0     0   0 my $classname = shift;
3179 0         0 my $self = {};
3180 0   0     0 my $vals = shift || {};
3181 0         0 return bless ($self, $classname);
3182             }
3183              
3184             sub getName {
3185 0     0   0 return 'ThriftTest_testOneway_result';
3186             }
3187              
3188             sub read {
3189 0     0   0 my ($self, $input) = @_;
3190 0         0 my $xfer = 0;
3191 0         0 my $fname;
3192 0         0 my $ftype = 0;
3193 0         0 my $fid = 0;
3194 0         0 $xfer += $input->readStructBegin(\$fname);
3195 0         0 while (1)
3196             {
3197 0         0 $xfer += $input->readFieldBegin(\$fname, \$ftype, \$fid);
3198 0 0       0 if ($ftype == Thrift::TType::STOP) {
3199 0         0 last;
3200             }
3201 0         0 SWITCH: for($fid)
3202             {
3203 0         0 $xfer += $input->skip($ftype);
3204             }
3205 0         0 $xfer += $input->readFieldEnd();
3206             }
3207 0         0 $xfer += $input->readStructEnd();
3208 0         0 return $xfer;
3209             }
3210              
3211             sub write {
3212 0     0   0 my ($self, $output) = @_;
3213 0         0 my $xfer = 0;
3214 0         0 $xfer += $output->writeStructBegin('ThriftTest_testOneway_result');
3215 0         0 $xfer += $output->writeFieldStop();
3216 0         0 $xfer += $output->writeStructEnd();
3217 0         0 return $xfer;
3218             }
3219              
3220             package ThriftTest::ThriftTestIf;
3221              
3222 1     1   14 use strict;
  1         3  
  1         660  
3223              
3224              
3225             sub testVoid{
3226 0     0   0 my $self = shift;
3227              
3228 0         0 die 'implement interface';
3229             }
3230              
3231             sub testString{
3232 0     0   0 my $self = shift;
3233 0         0 my $thing = shift;
3234              
3235 0         0 die 'implement interface';
3236             }
3237              
3238             sub testBool{
3239 0     0   0 my $self = shift;
3240 0         0 my $thing = shift;
3241              
3242 0         0 die 'implement interface';
3243             }
3244              
3245             sub testByte{
3246 0     0   0 my $self = shift;
3247 0         0 my $thing = shift;
3248              
3249 0         0 die 'implement interface';
3250             }
3251              
3252             sub testI32{
3253 0     0   0 my $self = shift;
3254 0         0 my $thing = shift;
3255              
3256 0         0 die 'implement interface';
3257             }
3258              
3259             sub testI64{
3260 0     0   0 my $self = shift;
3261 0         0 my $thing = shift;
3262              
3263 0         0 die 'implement interface';
3264             }
3265              
3266             sub testDouble{
3267 0     0   0 my $self = shift;
3268 0         0 my $thing = shift;
3269              
3270 0         0 die 'implement interface';
3271             }
3272              
3273             sub testBinary{
3274 0     0   0 my $self = shift;
3275 0         0 my $thing = shift;
3276              
3277 0         0 die 'implement interface';
3278             }
3279              
3280             sub testStruct{
3281 0     0   0 my $self = shift;
3282 0         0 my $thing = shift;
3283              
3284 0         0 die 'implement interface';
3285             }
3286              
3287             sub testNest{
3288 0     0   0 my $self = shift;
3289 0         0 my $thing = shift;
3290              
3291 0         0 die 'implement interface';
3292             }
3293              
3294             sub testMap{
3295 0     0   0 my $self = shift;
3296 0         0 my $thing = shift;
3297              
3298 0         0 die 'implement interface';
3299             }
3300              
3301             sub testStringMap{
3302 0     0   0 my $self = shift;
3303 0         0 my $thing = shift;
3304              
3305 0         0 die 'implement interface';
3306             }
3307              
3308             sub testSet{
3309 0     0   0 my $self = shift;
3310 0         0 my $thing = shift;
3311              
3312 0         0 die 'implement interface';
3313             }
3314              
3315             sub testList{
3316 0     0   0 my $self = shift;
3317 0         0 my $thing = shift;
3318              
3319 0         0 die 'implement interface';
3320             }
3321              
3322             sub testEnum{
3323 0     0   0 my $self = shift;
3324 0         0 my $thing = shift;
3325              
3326 0         0 die 'implement interface';
3327             }
3328              
3329             sub testTypedef{
3330 0     0   0 my $self = shift;
3331 0         0 my $thing = shift;
3332              
3333 0         0 die 'implement interface';
3334             }
3335              
3336             sub testMapMap{
3337 0     0   0 my $self = shift;
3338 0         0 my $hello = shift;
3339              
3340 0         0 die 'implement interface';
3341             }
3342              
3343             sub testInsanity{
3344 0     0   0 my $self = shift;
3345 0         0 my $argument = shift;
3346              
3347 0         0 die 'implement interface';
3348             }
3349              
3350             sub testMulti{
3351 0     0   0 my $self = shift;
3352 0         0 my $arg0 = shift;
3353 0         0 my $arg1 = shift;
3354 0         0 my $arg2 = shift;
3355 0         0 my $arg3 = shift;
3356 0         0 my $arg4 = shift;
3357 0         0 my $arg5 = shift;
3358              
3359 0         0 die 'implement interface';
3360             }
3361              
3362             sub testException{
3363 0     0   0 my $self = shift;
3364 0         0 my $arg = shift;
3365              
3366 0         0 die 'implement interface';
3367             }
3368              
3369             sub testMultiException{
3370 0     0   0 my $self = shift;
3371 0         0 my $arg0 = shift;
3372 0         0 my $arg1 = shift;
3373              
3374 0         0 die 'implement interface';
3375             }
3376              
3377             sub testOneway{
3378 0     0   0 my $self = shift;
3379 0         0 my $secondsToSleep = shift;
3380              
3381 0         0 die 'implement interface';
3382             }
3383              
3384             package ThriftTest::ThriftTestRest;
3385              
3386 1     1   8 use strict;
  1         2  
  1         1206  
3387              
3388              
3389             sub new {
3390 0     0   0 my ($classname, $impl) = @_;
3391 0         0 my $self ={ impl => $impl };
3392              
3393 0         0 return bless($self,$classname);
3394             }
3395              
3396             sub testVoid{
3397 0     0   0 my ($self, $request) = @_;
3398              
3399 0         0 return $self->{impl}->testVoid();
3400             }
3401              
3402             sub testString{
3403 0     0   0 my ($self, $request) = @_;
3404              
3405 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3406 0         0 return $self->{impl}->testString($thing);
3407             }
3408              
3409             sub testBool{
3410 0     0   0 my ($self, $request) = @_;
3411              
3412 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3413 0         0 return $self->{impl}->testBool($thing);
3414             }
3415              
3416             sub testByte{
3417 0     0   0 my ($self, $request) = @_;
3418              
3419 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3420 0         0 return $self->{impl}->testByte($thing);
3421             }
3422              
3423             sub testI32{
3424 0     0   0 my ($self, $request) = @_;
3425              
3426 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3427 0         0 return $self->{impl}->testI32($thing);
3428             }
3429              
3430             sub testI64{
3431 0     0   0 my ($self, $request) = @_;
3432              
3433 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3434 0         0 return $self->{impl}->testI64($thing);
3435             }
3436              
3437             sub testDouble{
3438 0     0   0 my ($self, $request) = @_;
3439              
3440 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3441 0         0 return $self->{impl}->testDouble($thing);
3442             }
3443              
3444             sub testBinary{
3445 0     0   0 my ($self, $request) = @_;
3446              
3447 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3448 0         0 return $self->{impl}->testBinary($thing);
3449             }
3450              
3451             sub testStruct{
3452 0     0   0 my ($self, $request) = @_;
3453              
3454 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3455 0         0 return $self->{impl}->testStruct($thing);
3456             }
3457              
3458             sub testNest{
3459 0     0   0 my ($self, $request) = @_;
3460              
3461 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3462 0         0 return $self->{impl}->testNest($thing);
3463             }
3464              
3465             sub testMap{
3466 0     0   0 my ($self, $request) = @_;
3467              
3468 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3469 0         0 return $self->{impl}->testMap($thing);
3470             }
3471              
3472             sub testStringMap{
3473 0     0   0 my ($self, $request) = @_;
3474              
3475 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3476 0         0 return $self->{impl}->testStringMap($thing);
3477             }
3478              
3479             sub testSet{
3480 0     0   0 my ($self, $request) = @_;
3481              
3482 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3483 0         0 return $self->{impl}->testSet($thing);
3484             }
3485              
3486             sub testList{
3487 0     0   0 my ($self, $request) = @_;
3488              
3489 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3490 0         0 return $self->{impl}->testList($thing);
3491             }
3492              
3493             sub testEnum{
3494 0     0   0 my ($self, $request) = @_;
3495              
3496 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3497 0         0 return $self->{impl}->testEnum($thing);
3498             }
3499              
3500             sub testTypedef{
3501 0     0   0 my ($self, $request) = @_;
3502              
3503 0 0       0 my $thing = ($request->{'thing'}) ? $request->{'thing'} : undef;
3504 0         0 return $self->{impl}->testTypedef($thing);
3505             }
3506              
3507             sub testMapMap{
3508 0     0   0 my ($self, $request) = @_;
3509              
3510 0 0       0 my $hello = ($request->{'hello'}) ? $request->{'hello'} : undef;
3511 0         0 return $self->{impl}->testMapMap($hello);
3512             }
3513              
3514             sub testInsanity{
3515 0     0   0 my ($self, $request) = @_;
3516              
3517 0 0       0 my $argument = ($request->{'argument'}) ? $request->{'argument'} : undef;
3518 0         0 return $self->{impl}->testInsanity($argument);
3519             }
3520              
3521             sub testMulti{
3522 0     0   0 my ($self, $request) = @_;
3523              
3524 0 0       0 my $arg0 = ($request->{'arg0'}) ? $request->{'arg0'} : undef;
3525 0 0       0 my $arg1 = ($request->{'arg1'}) ? $request->{'arg1'} : undef;
3526 0 0       0 my $arg2 = ($request->{'arg2'}) ? $request->{'arg2'} : undef;
3527 0 0       0 my $arg3 = ($request->{'arg3'}) ? $request->{'arg3'} : undef;
3528 0 0       0 my $arg4 = ($request->{'arg4'}) ? $request->{'arg4'} : undef;
3529 0 0       0 my $arg5 = ($request->{'arg5'}) ? $request->{'arg5'} : undef;
3530 0         0 return $self->{impl}->testMulti($arg0, $arg1, $arg2, $arg3, $arg4, $arg5);
3531             }
3532              
3533             sub testException{
3534 0     0   0 my ($self, $request) = @_;
3535              
3536 0 0       0 my $arg = ($request->{'arg'}) ? $request->{'arg'} : undef;
3537 0         0 return $self->{impl}->testException($arg);
3538             }
3539              
3540             sub testMultiException{
3541 0     0   0 my ($self, $request) = @_;
3542              
3543 0 0       0 my $arg0 = ($request->{'arg0'}) ? $request->{'arg0'} : undef;
3544 0 0       0 my $arg1 = ($request->{'arg1'}) ? $request->{'arg1'} : undef;
3545 0         0 return $self->{impl}->testMultiException($arg0, $arg1);
3546             }
3547              
3548             sub testOneway{
3549 0     0   0 my ($self, $request) = @_;
3550              
3551 0 0       0 my $secondsToSleep = ($request->{'secondsToSleep'}) ? $request->{'secondsToSleep'} : undef;
3552 0         0 return $self->{impl}->testOneway($secondsToSleep);
3553             }
3554              
3555             package ThriftTest::ThriftTestClient;
3556              
3557              
3558 1     1   8 use base qw(ThriftTest::ThriftTestIf);
  1         2  
  1         6250  
3559             sub new {
3560 1     1   14 my ($classname, $input, $output) = @_;
3561 1         3 my $self = {};
3562 1         4 $self->{input} = $input;
3563 1 50       24 $self->{output} = defined $output ? $output : $input;
3564 1         3 $self->{seqid} = 0;
3565 1         4 return bless($self,$classname);
3566             }
3567              
3568             sub testVoid{
3569 0     0   0 my $self = shift;
3570              
3571 0         0 $self->send_testVoid();
3572 0         0 $self->recv_testVoid();
3573             }
3574              
3575             sub send_testVoid{
3576 0     0   0 my $self = shift;
3577              
3578 0         0 $self->{output}->writeMessageBegin('testVoid', Thrift::TMessageType::CALL, $self->{seqid});
3579 0         0 my $args = ThriftTest::ThriftTest_testVoid_args->new();
3580 0         0 $args->write($self->{output});
3581 0         0 $self->{output}->writeMessageEnd();
3582 0         0 $self->{output}->getTransport()->flush();
3583             }
3584              
3585             sub recv_testVoid{
3586 0     0   0 my $self = shift;
3587              
3588 0         0 my $rseqid = 0;
3589 0         0 my $fname;
3590 0         0 my $mtype = 0;
3591              
3592 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3593 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3594 0         0 my $x = Thrift::TApplicationException->new();
3595 0         0 $x->read($self->{input});
3596 0         0 $self->{input}->readMessageEnd();
3597 0         0 die $x;
3598             }
3599 0         0 my $result = ThriftTest::ThriftTest_testVoid_result->new();
3600 0         0 $result->read($self->{input});
3601 0         0 $self->{input}->readMessageEnd();
3602              
3603 0         0 return;
3604             }
3605             sub testString{
3606 0     0   0 my $self = shift;
3607 0         0 my $thing = shift;
3608              
3609 0         0 $self->send_testString($thing);
3610 0         0 return $self->recv_testString();
3611             }
3612              
3613             sub send_testString{
3614 2     2   12 my $self = shift;
3615 2         5 my $thing = shift;
3616              
3617 2         15 $self->{output}->writeMessageBegin('testString', Thrift::TMessageType::CALL, $self->{seqid});
3618 2         12 my $args = ThriftTest::ThriftTest_testString_args->new();
3619 2         8 $args->{thing} = $thing;
3620 2         7 $args->write($self->{output});
3621 2         8 $self->{output}->writeMessageEnd();
3622 2         12 $self->{output}->getTransport()->flush();
3623             }
3624              
3625             sub recv_testString{
3626 0     0   0 my $self = shift;
3627              
3628 0         0 my $rseqid = 0;
3629 0         0 my $fname;
3630 0         0 my $mtype = 0;
3631              
3632 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3633 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3634 0         0 my $x = Thrift::TApplicationException->new();
3635 0         0 $x->read($self->{input});
3636 0         0 $self->{input}->readMessageEnd();
3637 0         0 die $x;
3638             }
3639 0         0 my $result = ThriftTest::ThriftTest_testString_result->new();
3640 0         0 $result->read($self->{input});
3641 0         0 $self->{input}->readMessageEnd();
3642              
3643 0 0       0 if (defined $result->{success} ) {
3644 0         0 return $result->{success};
3645             }
3646 0         0 die "testString failed: unknown result";
3647             }
3648             sub testBool{
3649 0     0   0 my $self = shift;
3650 0         0 my $thing = shift;
3651              
3652 0         0 $self->send_testBool($thing);
3653 0         0 return $self->recv_testBool();
3654             }
3655              
3656             sub send_testBool{
3657 0     0   0 my $self = shift;
3658 0         0 my $thing = shift;
3659              
3660 0         0 $self->{output}->writeMessageBegin('testBool', Thrift::TMessageType::CALL, $self->{seqid});
3661 0         0 my $args = ThriftTest::ThriftTest_testBool_args->new();
3662 0         0 $args->{thing} = $thing;
3663 0         0 $args->write($self->{output});
3664 0         0 $self->{output}->writeMessageEnd();
3665 0         0 $self->{output}->getTransport()->flush();
3666             }
3667              
3668             sub recv_testBool{
3669 0     0   0 my $self = shift;
3670              
3671 0         0 my $rseqid = 0;
3672 0         0 my $fname;
3673 0         0 my $mtype = 0;
3674              
3675 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3676 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3677 0         0 my $x = Thrift::TApplicationException->new();
3678 0         0 $x->read($self->{input});
3679 0         0 $self->{input}->readMessageEnd();
3680 0         0 die $x;
3681             }
3682 0         0 my $result = ThriftTest::ThriftTest_testBool_result->new();
3683 0         0 $result->read($self->{input});
3684 0         0 $self->{input}->readMessageEnd();
3685              
3686 0 0       0 if (defined $result->{success} ) {
3687 0         0 return $result->{success};
3688             }
3689 0         0 die "testBool failed: unknown result";
3690             }
3691             sub testByte{
3692 0     0   0 my $self = shift;
3693 0         0 my $thing = shift;
3694              
3695 0         0 $self->send_testByte($thing);
3696 0         0 return $self->recv_testByte();
3697             }
3698              
3699             sub send_testByte{
3700 0     0   0 my $self = shift;
3701 0         0 my $thing = shift;
3702              
3703 0         0 $self->{output}->writeMessageBegin('testByte', Thrift::TMessageType::CALL, $self->{seqid});
3704 0         0 my $args = ThriftTest::ThriftTest_testByte_args->new();
3705 0         0 $args->{thing} = $thing;
3706 0         0 $args->write($self->{output});
3707 0         0 $self->{output}->writeMessageEnd();
3708 0         0 $self->{output}->getTransport()->flush();
3709             }
3710              
3711             sub recv_testByte{
3712 0     0   0 my $self = shift;
3713              
3714 0         0 my $rseqid = 0;
3715 0         0 my $fname;
3716 0         0 my $mtype = 0;
3717              
3718 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3719 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3720 0         0 my $x = Thrift::TApplicationException->new();
3721 0         0 $x->read($self->{input});
3722 0         0 $self->{input}->readMessageEnd();
3723 0         0 die $x;
3724             }
3725 0         0 my $result = ThriftTest::ThriftTest_testByte_result->new();
3726 0         0 $result->read($self->{input});
3727 0         0 $self->{input}->readMessageEnd();
3728              
3729 0 0       0 if (defined $result->{success} ) {
3730 0         0 return $result->{success};
3731             }
3732 0         0 die "testByte failed: unknown result";
3733             }
3734             sub testI32{
3735 0     0   0 my $self = shift;
3736 0         0 my $thing = shift;
3737              
3738 0         0 $self->send_testI32($thing);
3739 0         0 return $self->recv_testI32();
3740             }
3741              
3742             sub send_testI32{
3743 0     0   0 my $self = shift;
3744 0         0 my $thing = shift;
3745              
3746 0         0 $self->{output}->writeMessageBegin('testI32', Thrift::TMessageType::CALL, $self->{seqid});
3747 0         0 my $args = ThriftTest::ThriftTest_testI32_args->new();
3748 0         0 $args->{thing} = $thing;
3749 0         0 $args->write($self->{output});
3750 0         0 $self->{output}->writeMessageEnd();
3751 0         0 $self->{output}->getTransport()->flush();
3752             }
3753              
3754             sub recv_testI32{
3755 0     0   0 my $self = shift;
3756              
3757 0         0 my $rseqid = 0;
3758 0         0 my $fname;
3759 0         0 my $mtype = 0;
3760              
3761 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3762 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3763 0         0 my $x = Thrift::TApplicationException->new();
3764 0         0 $x->read($self->{input});
3765 0         0 $self->{input}->readMessageEnd();
3766 0         0 die $x;
3767             }
3768 0         0 my $result = ThriftTest::ThriftTest_testI32_result->new();
3769 0         0 $result->read($self->{input});
3770 0         0 $self->{input}->readMessageEnd();
3771              
3772 0 0       0 if (defined $result->{success} ) {
3773 0         0 return $result->{success};
3774             }
3775 0         0 die "testI32 failed: unknown result";
3776             }
3777             sub testI64{
3778 0     0   0 my $self = shift;
3779 0         0 my $thing = shift;
3780              
3781 0         0 $self->send_testI64($thing);
3782 0         0 return $self->recv_testI64();
3783             }
3784              
3785             sub send_testI64{
3786 0     0   0 my $self = shift;
3787 0         0 my $thing = shift;
3788              
3789 0         0 $self->{output}->writeMessageBegin('testI64', Thrift::TMessageType::CALL, $self->{seqid});
3790 0         0 my $args = ThriftTest::ThriftTest_testI64_args->new();
3791 0         0 $args->{thing} = $thing;
3792 0         0 $args->write($self->{output});
3793 0         0 $self->{output}->writeMessageEnd();
3794 0         0 $self->{output}->getTransport()->flush();
3795             }
3796              
3797             sub recv_testI64{
3798 0     0   0 my $self = shift;
3799              
3800 0         0 my $rseqid = 0;
3801 0         0 my $fname;
3802 0         0 my $mtype = 0;
3803              
3804 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3805 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3806 0         0 my $x = Thrift::TApplicationException->new();
3807 0         0 $x->read($self->{input});
3808 0         0 $self->{input}->readMessageEnd();
3809 0         0 die $x;
3810             }
3811 0         0 my $result = ThriftTest::ThriftTest_testI64_result->new();
3812 0         0 $result->read($self->{input});
3813 0         0 $self->{input}->readMessageEnd();
3814              
3815 0 0       0 if (defined $result->{success} ) {
3816 0         0 return $result->{success};
3817             }
3818 0         0 die "testI64 failed: unknown result";
3819             }
3820             sub testDouble{
3821 0     0   0 my $self = shift;
3822 0         0 my $thing = shift;
3823              
3824 0         0 $self->send_testDouble($thing);
3825 0         0 return $self->recv_testDouble();
3826             }
3827              
3828             sub send_testDouble{
3829 0     0   0 my $self = shift;
3830 0         0 my $thing = shift;
3831              
3832 0         0 $self->{output}->writeMessageBegin('testDouble', Thrift::TMessageType::CALL, $self->{seqid});
3833 0         0 my $args = ThriftTest::ThriftTest_testDouble_args->new();
3834 0         0 $args->{thing} = $thing;
3835 0         0 $args->write($self->{output});
3836 0         0 $self->{output}->writeMessageEnd();
3837 0         0 $self->{output}->getTransport()->flush();
3838             }
3839              
3840             sub recv_testDouble{
3841 0     0   0 my $self = shift;
3842              
3843 0         0 my $rseqid = 0;
3844 0         0 my $fname;
3845 0         0 my $mtype = 0;
3846              
3847 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3848 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3849 0         0 my $x = Thrift::TApplicationException->new();
3850 0         0 $x->read($self->{input});
3851 0         0 $self->{input}->readMessageEnd();
3852 0         0 die $x;
3853             }
3854 0         0 my $result = ThriftTest::ThriftTest_testDouble_result->new();
3855 0         0 $result->read($self->{input});
3856 0         0 $self->{input}->readMessageEnd();
3857              
3858 0 0       0 if (defined $result->{success} ) {
3859 0         0 return $result->{success};
3860             }
3861 0         0 die "testDouble failed: unknown result";
3862             }
3863             sub testBinary{
3864 0     0   0 my $self = shift;
3865 0         0 my $thing = shift;
3866              
3867 0         0 $self->send_testBinary($thing);
3868 0         0 return $self->recv_testBinary();
3869             }
3870              
3871             sub send_testBinary{
3872 0     0   0 my $self = shift;
3873 0         0 my $thing = shift;
3874              
3875 0         0 $self->{output}->writeMessageBegin('testBinary', Thrift::TMessageType::CALL, $self->{seqid});
3876 0         0 my $args = ThriftTest::ThriftTest_testBinary_args->new();
3877 0         0 $args->{thing} = $thing;
3878 0         0 $args->write($self->{output});
3879 0         0 $self->{output}->writeMessageEnd();
3880 0         0 $self->{output}->getTransport()->flush();
3881             }
3882              
3883             sub recv_testBinary{
3884 0     0   0 my $self = shift;
3885              
3886 0         0 my $rseqid = 0;
3887 0         0 my $fname;
3888 0         0 my $mtype = 0;
3889              
3890 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3891 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3892 0         0 my $x = Thrift::TApplicationException->new();
3893 0         0 $x->read($self->{input});
3894 0         0 $self->{input}->readMessageEnd();
3895 0         0 die $x;
3896             }
3897 0         0 my $result = ThriftTest::ThriftTest_testBinary_result->new();
3898 0         0 $result->read($self->{input});
3899 0         0 $self->{input}->readMessageEnd();
3900              
3901 0 0       0 if (defined $result->{success} ) {
3902 0         0 return $result->{success};
3903             }
3904 0         0 die "testBinary failed: unknown result";
3905             }
3906             sub testStruct{
3907 0     0   0 my $self = shift;
3908 0         0 my $thing = shift;
3909              
3910 0         0 $self->send_testStruct($thing);
3911 0         0 return $self->recv_testStruct();
3912             }
3913              
3914             sub send_testStruct{
3915 0     0   0 my $self = shift;
3916 0         0 my $thing = shift;
3917              
3918 0         0 $self->{output}->writeMessageBegin('testStruct', Thrift::TMessageType::CALL, $self->{seqid});
3919 0         0 my $args = ThriftTest::ThriftTest_testStruct_args->new();
3920 0         0 $args->{thing} = $thing;
3921 0         0 $args->write($self->{output});
3922 0         0 $self->{output}->writeMessageEnd();
3923 0         0 $self->{output}->getTransport()->flush();
3924             }
3925              
3926             sub recv_testStruct{
3927 0     0   0 my $self = shift;
3928              
3929 0         0 my $rseqid = 0;
3930 0         0 my $fname;
3931 0         0 my $mtype = 0;
3932              
3933 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3934 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3935 0         0 my $x = Thrift::TApplicationException->new();
3936 0         0 $x->read($self->{input});
3937 0         0 $self->{input}->readMessageEnd();
3938 0         0 die $x;
3939             }
3940 0         0 my $result = ThriftTest::ThriftTest_testStruct_result->new();
3941 0         0 $result->read($self->{input});
3942 0         0 $self->{input}->readMessageEnd();
3943              
3944 0 0       0 if (defined $result->{success} ) {
3945 0         0 return $result->{success};
3946             }
3947 0         0 die "testStruct failed: unknown result";
3948             }
3949             sub testNest{
3950 0     0   0 my $self = shift;
3951 0         0 my $thing = shift;
3952              
3953 0         0 $self->send_testNest($thing);
3954 0         0 return $self->recv_testNest();
3955             }
3956              
3957             sub send_testNest{
3958 0     0   0 my $self = shift;
3959 0         0 my $thing = shift;
3960              
3961 0         0 $self->{output}->writeMessageBegin('testNest', Thrift::TMessageType::CALL, $self->{seqid});
3962 0         0 my $args = ThriftTest::ThriftTest_testNest_args->new();
3963 0         0 $args->{thing} = $thing;
3964 0         0 $args->write($self->{output});
3965 0         0 $self->{output}->writeMessageEnd();
3966 0         0 $self->{output}->getTransport()->flush();
3967             }
3968              
3969             sub recv_testNest{
3970 0     0   0 my $self = shift;
3971              
3972 0         0 my $rseqid = 0;
3973 0         0 my $fname;
3974 0         0 my $mtype = 0;
3975              
3976 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
3977 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
3978 0         0 my $x = Thrift::TApplicationException->new();
3979 0         0 $x->read($self->{input});
3980 0         0 $self->{input}->readMessageEnd();
3981 0         0 die $x;
3982             }
3983 0         0 my $result = ThriftTest::ThriftTest_testNest_result->new();
3984 0         0 $result->read($self->{input});
3985 0         0 $self->{input}->readMessageEnd();
3986              
3987 0 0       0 if (defined $result->{success} ) {
3988 0         0 return $result->{success};
3989             }
3990 0         0 die "testNest failed: unknown result";
3991             }
3992             sub testMap{
3993 0     0   0 my $self = shift;
3994 0         0 my $thing = shift;
3995              
3996 0         0 $self->send_testMap($thing);
3997 0         0 return $self->recv_testMap();
3998             }
3999              
4000             sub send_testMap{
4001 0     0   0 my $self = shift;
4002 0         0 my $thing = shift;
4003              
4004 0         0 $self->{output}->writeMessageBegin('testMap', Thrift::TMessageType::CALL, $self->{seqid});
4005 0         0 my $args = ThriftTest::ThriftTest_testMap_args->new();
4006 0         0 $args->{thing} = $thing;
4007 0         0 $args->write($self->{output});
4008 0         0 $self->{output}->writeMessageEnd();
4009 0         0 $self->{output}->getTransport()->flush();
4010             }
4011              
4012             sub recv_testMap{
4013 0     0   0 my $self = shift;
4014              
4015 0         0 my $rseqid = 0;
4016 0         0 my $fname;
4017 0         0 my $mtype = 0;
4018              
4019 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4020 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4021 0         0 my $x = Thrift::TApplicationException->new();
4022 0         0 $x->read($self->{input});
4023 0         0 $self->{input}->readMessageEnd();
4024 0         0 die $x;
4025             }
4026 0         0 my $result = ThriftTest::ThriftTest_testMap_result->new();
4027 0         0 $result->read($self->{input});
4028 0         0 $self->{input}->readMessageEnd();
4029              
4030 0 0       0 if (defined $result->{success} ) {
4031 0         0 return $result->{success};
4032             }
4033 0         0 die "testMap failed: unknown result";
4034             }
4035             sub testStringMap{
4036 0     0   0 my $self = shift;
4037 0         0 my $thing = shift;
4038              
4039 0         0 $self->send_testStringMap($thing);
4040 0         0 return $self->recv_testStringMap();
4041             }
4042              
4043             sub send_testStringMap{
4044 0     0   0 my $self = shift;
4045 0         0 my $thing = shift;
4046              
4047 0         0 $self->{output}->writeMessageBegin('testStringMap', Thrift::TMessageType::CALL, $self->{seqid});
4048 0         0 my $args = ThriftTest::ThriftTest_testStringMap_args->new();
4049 0         0 $args->{thing} = $thing;
4050 0         0 $args->write($self->{output});
4051 0         0 $self->{output}->writeMessageEnd();
4052 0         0 $self->{output}->getTransport()->flush();
4053             }
4054              
4055             sub recv_testStringMap{
4056 0     0   0 my $self = shift;
4057              
4058 0         0 my $rseqid = 0;
4059 0         0 my $fname;
4060 0         0 my $mtype = 0;
4061              
4062 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4063 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4064 0         0 my $x = Thrift::TApplicationException->new();
4065 0         0 $x->read($self->{input});
4066 0         0 $self->{input}->readMessageEnd();
4067 0         0 die $x;
4068             }
4069 0         0 my $result = ThriftTest::ThriftTest_testStringMap_result->new();
4070 0         0 $result->read($self->{input});
4071 0         0 $self->{input}->readMessageEnd();
4072              
4073 0 0       0 if (defined $result->{success} ) {
4074 0         0 return $result->{success};
4075             }
4076 0         0 die "testStringMap failed: unknown result";
4077             }
4078             sub testSet{
4079 0     0   0 my $self = shift;
4080 0         0 my $thing = shift;
4081              
4082 0         0 $self->send_testSet($thing);
4083 0         0 return $self->recv_testSet();
4084             }
4085              
4086             sub send_testSet{
4087 0     0   0 my $self = shift;
4088 0         0 my $thing = shift;
4089              
4090 0         0 $self->{output}->writeMessageBegin('testSet', Thrift::TMessageType::CALL, $self->{seqid});
4091 0         0 my $args = ThriftTest::ThriftTest_testSet_args->new();
4092 0         0 $args->{thing} = $thing;
4093 0         0 $args->write($self->{output});
4094 0         0 $self->{output}->writeMessageEnd();
4095 0         0 $self->{output}->getTransport()->flush();
4096             }
4097              
4098             sub recv_testSet{
4099 0     0   0 my $self = shift;
4100              
4101 0         0 my $rseqid = 0;
4102 0         0 my $fname;
4103 0         0 my $mtype = 0;
4104              
4105 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4106 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4107 0         0 my $x = Thrift::TApplicationException->new();
4108 0         0 $x->read($self->{input});
4109 0         0 $self->{input}->readMessageEnd();
4110 0         0 die $x;
4111             }
4112 0         0 my $result = ThriftTest::ThriftTest_testSet_result->new();
4113 0         0 $result->read($self->{input});
4114 0         0 $self->{input}->readMessageEnd();
4115              
4116 0 0       0 if (defined $result->{success} ) {
4117 0         0 return $result->{success};
4118             }
4119 0         0 die "testSet failed: unknown result";
4120             }
4121             sub testList{
4122 0     0   0 my $self = shift;
4123 0         0 my $thing = shift;
4124              
4125 0         0 $self->send_testList($thing);
4126 0         0 return $self->recv_testList();
4127             }
4128              
4129             sub send_testList{
4130 0     0   0 my $self = shift;
4131 0         0 my $thing = shift;
4132              
4133 0         0 $self->{output}->writeMessageBegin('testList', Thrift::TMessageType::CALL, $self->{seqid});
4134 0         0 my $args = ThriftTest::ThriftTest_testList_args->new();
4135 0         0 $args->{thing} = $thing;
4136 0         0 $args->write($self->{output});
4137 0         0 $self->{output}->writeMessageEnd();
4138 0         0 $self->{output}->getTransport()->flush();
4139             }
4140              
4141             sub recv_testList{
4142 0     0   0 my $self = shift;
4143              
4144 0         0 my $rseqid = 0;
4145 0         0 my $fname;
4146 0         0 my $mtype = 0;
4147              
4148 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4149 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4150 0         0 my $x = Thrift::TApplicationException->new();
4151 0         0 $x->read($self->{input});
4152 0         0 $self->{input}->readMessageEnd();
4153 0         0 die $x;
4154             }
4155 0         0 my $result = ThriftTest::ThriftTest_testList_result->new();
4156 0         0 $result->read($self->{input});
4157 0         0 $self->{input}->readMessageEnd();
4158              
4159 0 0       0 if (defined $result->{success} ) {
4160 0         0 return $result->{success};
4161             }
4162 0         0 die "testList failed: unknown result";
4163             }
4164             sub testEnum{
4165 0     0   0 my $self = shift;
4166 0         0 my $thing = shift;
4167              
4168 0         0 $self->send_testEnum($thing);
4169 0         0 return $self->recv_testEnum();
4170             }
4171              
4172             sub send_testEnum{
4173 0     0   0 my $self = shift;
4174 0         0 my $thing = shift;
4175              
4176 0         0 $self->{output}->writeMessageBegin('testEnum', Thrift::TMessageType::CALL, $self->{seqid});
4177 0         0 my $args = ThriftTest::ThriftTest_testEnum_args->new();
4178 0         0 $args->{thing} = $thing;
4179 0         0 $args->write($self->{output});
4180 0         0 $self->{output}->writeMessageEnd();
4181 0         0 $self->{output}->getTransport()->flush();
4182             }
4183              
4184             sub recv_testEnum{
4185 0     0   0 my $self = shift;
4186              
4187 0         0 my $rseqid = 0;
4188 0         0 my $fname;
4189 0         0 my $mtype = 0;
4190              
4191 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4192 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4193 0         0 my $x = Thrift::TApplicationException->new();
4194 0         0 $x->read($self->{input});
4195 0         0 $self->{input}->readMessageEnd();
4196 0         0 die $x;
4197             }
4198 0         0 my $result = ThriftTest::ThriftTest_testEnum_result->new();
4199 0         0 $result->read($self->{input});
4200 0         0 $self->{input}->readMessageEnd();
4201              
4202 0 0       0 if (defined $result->{success} ) {
4203 0         0 return $result->{success};
4204             }
4205 0         0 die "testEnum failed: unknown result";
4206             }
4207             sub testTypedef{
4208 0     0   0 my $self = shift;
4209 0         0 my $thing = shift;
4210              
4211 0         0 $self->send_testTypedef($thing);
4212 0         0 return $self->recv_testTypedef();
4213             }
4214              
4215             sub send_testTypedef{
4216 0     0   0 my $self = shift;
4217 0         0 my $thing = shift;
4218              
4219 0         0 $self->{output}->writeMessageBegin('testTypedef', Thrift::TMessageType::CALL, $self->{seqid});
4220 0         0 my $args = ThriftTest::ThriftTest_testTypedef_args->new();
4221 0         0 $args->{thing} = $thing;
4222 0         0 $args->write($self->{output});
4223 0         0 $self->{output}->writeMessageEnd();
4224 0         0 $self->{output}->getTransport()->flush();
4225             }
4226              
4227             sub recv_testTypedef{
4228 0     0   0 my $self = shift;
4229              
4230 0         0 my $rseqid = 0;
4231 0         0 my $fname;
4232 0         0 my $mtype = 0;
4233              
4234 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4235 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4236 0         0 my $x = Thrift::TApplicationException->new();
4237 0         0 $x->read($self->{input});
4238 0         0 $self->{input}->readMessageEnd();
4239 0         0 die $x;
4240             }
4241 0         0 my $result = ThriftTest::ThriftTest_testTypedef_result->new();
4242 0         0 $result->read($self->{input});
4243 0         0 $self->{input}->readMessageEnd();
4244              
4245 0 0       0 if (defined $result->{success} ) {
4246 0         0 return $result->{success};
4247             }
4248 0         0 die "testTypedef failed: unknown result";
4249             }
4250             sub testMapMap{
4251 0     0   0 my $self = shift;
4252 0         0 my $hello = shift;
4253              
4254 0         0 $self->send_testMapMap($hello);
4255 0         0 return $self->recv_testMapMap();
4256             }
4257              
4258             sub send_testMapMap{
4259 0     0   0 my $self = shift;
4260 0         0 my $hello = shift;
4261              
4262 0         0 $self->{output}->writeMessageBegin('testMapMap', Thrift::TMessageType::CALL, $self->{seqid});
4263 0         0 my $args = ThriftTest::ThriftTest_testMapMap_args->new();
4264 0         0 $args->{hello} = $hello;
4265 0         0 $args->write($self->{output});
4266 0         0 $self->{output}->writeMessageEnd();
4267 0         0 $self->{output}->getTransport()->flush();
4268             }
4269              
4270             sub recv_testMapMap{
4271 0     0   0 my $self = shift;
4272              
4273 0         0 my $rseqid = 0;
4274 0         0 my $fname;
4275 0         0 my $mtype = 0;
4276              
4277 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4278 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4279 0         0 my $x = Thrift::TApplicationException->new();
4280 0         0 $x->read($self->{input});
4281 0         0 $self->{input}->readMessageEnd();
4282 0         0 die $x;
4283             }
4284 0         0 my $result = ThriftTest::ThriftTest_testMapMap_result->new();
4285 0         0 $result->read($self->{input});
4286 0         0 $self->{input}->readMessageEnd();
4287              
4288 0 0       0 if (defined $result->{success} ) {
4289 0         0 return $result->{success};
4290             }
4291 0         0 die "testMapMap failed: unknown result";
4292             }
4293             sub testInsanity{
4294 0     0   0 my $self = shift;
4295 0         0 my $argument = shift;
4296              
4297 0         0 $self->send_testInsanity($argument);
4298 0         0 return $self->recv_testInsanity();
4299             }
4300              
4301             sub send_testInsanity{
4302 0     0   0 my $self = shift;
4303 0         0 my $argument = shift;
4304              
4305 0         0 $self->{output}->writeMessageBegin('testInsanity', Thrift::TMessageType::CALL, $self->{seqid});
4306 0         0 my $args = ThriftTest::ThriftTest_testInsanity_args->new();
4307 0         0 $args->{argument} = $argument;
4308 0         0 $args->write($self->{output});
4309 0         0 $self->{output}->writeMessageEnd();
4310 0         0 $self->{output}->getTransport()->flush();
4311             }
4312              
4313             sub recv_testInsanity{
4314 0     0   0 my $self = shift;
4315              
4316 0         0 my $rseqid = 0;
4317 0         0 my $fname;
4318 0         0 my $mtype = 0;
4319              
4320 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4321 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4322 0         0 my $x = Thrift::TApplicationException->new();
4323 0         0 $x->read($self->{input});
4324 0         0 $self->{input}->readMessageEnd();
4325 0         0 die $x;
4326             }
4327 0         0 my $result = ThriftTest::ThriftTest_testInsanity_result->new();
4328 0         0 $result->read($self->{input});
4329 0         0 $self->{input}->readMessageEnd();
4330              
4331 0 0       0 if (defined $result->{success} ) {
4332 0         0 return $result->{success};
4333             }
4334 0         0 die "testInsanity failed: unknown result";
4335             }
4336             sub testMulti{
4337 0     0   0 my $self = shift;
4338 0         0 my $arg0 = shift;
4339 0         0 my $arg1 = shift;
4340 0         0 my $arg2 = shift;
4341 0         0 my $arg3 = shift;
4342 0         0 my $arg4 = shift;
4343 0         0 my $arg5 = shift;
4344              
4345 0         0 $self->send_testMulti($arg0, $arg1, $arg2, $arg3, $arg4, $arg5);
4346 0         0 return $self->recv_testMulti();
4347             }
4348              
4349             sub send_testMulti{
4350 0     0   0 my $self = shift;
4351 0         0 my $arg0 = shift;
4352 0         0 my $arg1 = shift;
4353 0         0 my $arg2 = shift;
4354 0         0 my $arg3 = shift;
4355 0         0 my $arg4 = shift;
4356 0         0 my $arg5 = shift;
4357              
4358 0         0 $self->{output}->writeMessageBegin('testMulti', Thrift::TMessageType::CALL, $self->{seqid});
4359 0         0 my $args = ThriftTest::ThriftTest_testMulti_args->new();
4360 0         0 $args->{arg0} = $arg0;
4361 0         0 $args->{arg1} = $arg1;
4362 0         0 $args->{arg2} = $arg2;
4363 0         0 $args->{arg3} = $arg3;
4364 0         0 $args->{arg4} = $arg4;
4365 0         0 $args->{arg5} = $arg5;
4366 0         0 $args->write($self->{output});
4367 0         0 $self->{output}->writeMessageEnd();
4368 0         0 $self->{output}->getTransport()->flush();
4369             }
4370              
4371             sub recv_testMulti{
4372 0     0   0 my $self = shift;
4373              
4374 0         0 my $rseqid = 0;
4375 0         0 my $fname;
4376 0         0 my $mtype = 0;
4377              
4378 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4379 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4380 0         0 my $x = Thrift::TApplicationException->new();
4381 0         0 $x->read($self->{input});
4382 0         0 $self->{input}->readMessageEnd();
4383 0         0 die $x;
4384             }
4385 0         0 my $result = ThriftTest::ThriftTest_testMulti_result->new();
4386 0         0 $result->read($self->{input});
4387 0         0 $self->{input}->readMessageEnd();
4388              
4389 0 0       0 if (defined $result->{success} ) {
4390 0         0 return $result->{success};
4391             }
4392 0         0 die "testMulti failed: unknown result";
4393             }
4394             sub testException{
4395 0     0   0 my $self = shift;
4396 0         0 my $arg = shift;
4397              
4398 0         0 $self->send_testException($arg);
4399 0         0 $self->recv_testException();
4400             }
4401              
4402             sub send_testException{
4403 0     0   0 my $self = shift;
4404 0         0 my $arg = shift;
4405              
4406 0         0 $self->{output}->writeMessageBegin('testException', Thrift::TMessageType::CALL, $self->{seqid});
4407 0         0 my $args = ThriftTest::ThriftTest_testException_args->new();
4408 0         0 $args->{arg} = $arg;
4409 0         0 $args->write($self->{output});
4410 0         0 $self->{output}->writeMessageEnd();
4411 0         0 $self->{output}->getTransport()->flush();
4412             }
4413              
4414             sub recv_testException{
4415 0     0   0 my $self = shift;
4416              
4417 0         0 my $rseqid = 0;
4418 0         0 my $fname;
4419 0         0 my $mtype = 0;
4420              
4421 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4422 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4423 0         0 my $x = Thrift::TApplicationException->new();
4424 0         0 $x->read($self->{input});
4425 0         0 $self->{input}->readMessageEnd();
4426 0         0 die $x;
4427             }
4428 0         0 my $result = ThriftTest::ThriftTest_testException_result->new();
4429 0         0 $result->read($self->{input});
4430 0         0 $self->{input}->readMessageEnd();
4431              
4432 0 0       0 if (defined $result->{err1}) {
4433 0         0 die $result->{err1};
4434             }
4435 0         0 return;
4436             }
4437             sub testMultiException{
4438 0     0   0 my $self = shift;
4439 0         0 my $arg0 = shift;
4440 0         0 my $arg1 = shift;
4441              
4442 0         0 $self->send_testMultiException($arg0, $arg1);
4443 0         0 return $self->recv_testMultiException();
4444             }
4445              
4446             sub send_testMultiException{
4447 0     0   0 my $self = shift;
4448 0         0 my $arg0 = shift;
4449 0         0 my $arg1 = shift;
4450              
4451 0         0 $self->{output}->writeMessageBegin('testMultiException', Thrift::TMessageType::CALL, $self->{seqid});
4452 0         0 my $args = ThriftTest::ThriftTest_testMultiException_args->new();
4453 0         0 $args->{arg0} = $arg0;
4454 0         0 $args->{arg1} = $arg1;
4455 0         0 $args->write($self->{output});
4456 0         0 $self->{output}->writeMessageEnd();
4457 0         0 $self->{output}->getTransport()->flush();
4458             }
4459              
4460             sub recv_testMultiException{
4461 0     0   0 my $self = shift;
4462              
4463 0         0 my $rseqid = 0;
4464 0         0 my $fname;
4465 0         0 my $mtype = 0;
4466              
4467 0         0 $self->{input}->readMessageBegin(\$fname, \$mtype, \$rseqid);
4468 0 0       0 if ($mtype == Thrift::TMessageType::EXCEPTION) {
4469 0         0 my $x = Thrift::TApplicationException->new();
4470 0         0 $x->read($self->{input});
4471 0         0 $self->{input}->readMessageEnd();
4472 0         0 die $x;
4473             }
4474 0         0 my $result = ThriftTest::ThriftTest_testMultiException_result->new();
4475 0         0 $result->read($self->{input});
4476 0         0 $self->{input}->readMessageEnd();
4477              
4478 0 0       0 if (defined $result->{success} ) {
4479 0         0 return $result->{success};
4480             }
4481 0 0       0 if (defined $result->{err1}) {
4482 0         0 die $result->{err1};
4483             }
4484 0 0       0 if (defined $result->{err2}) {
4485 0         0 die $result->{err2};
4486             }
4487 0         0 die "testMultiException failed: unknown result";
4488             }
4489             sub testOneway{
4490 0     0   0 my $self = shift;
4491 0         0 my $secondsToSleep = shift;
4492              
4493 0         0 $self->send_testOneway($secondsToSleep);
4494             }
4495              
4496             sub send_testOneway{
4497 0     0   0 my $self = shift;
4498 0         0 my $secondsToSleep = shift;
4499              
4500 0         0 $self->{output}->writeMessageBegin('testOneway', Thrift::TMessageType::ONEWAY, $self->{seqid});
4501 0         0 my $args = ThriftTest::ThriftTest_testOneway_args->new();
4502 0         0 $args->{secondsToSleep} = $secondsToSleep;
4503 0         0 $args->write($self->{output});
4504 0         0 $self->{output}->writeMessageEnd();
4505 0         0 $self->{output}->getTransport()->flush();
4506             }
4507             package ThriftTest::ThriftTestProcessor;
4508              
4509 1     1   23 use strict;
  1         1  
  1         2752  
4510              
4511              
4512             sub new {
4513 1     1   22 my ($classname, $handler) = @_;
4514 1         3 my $self = {};
4515 1         3 $self->{handler} = $handler;
4516 1         2 return bless ($self, $classname);
4517             }
4518              
4519             sub process {
4520 2     2   24 my ($self, $input, $output) = @_;
4521 2         4 my $rseqid = 0;
4522 2         3 my $fname = undef;
4523 2         4 my $mtype = 0;
4524              
4525 2         10 $input->readMessageBegin(\$fname, \$mtype, \$rseqid);
4526 2         5 my $methodname = 'process_'.$fname;
4527 2 50       14 if (!$self->can($methodname)) {
4528 0         0 $input->skip(Thrift::TType::STRUCT);
4529 0         0 $input->readMessageEnd();
4530 0         0 my $x = Thrift::TApplicationException->new('Function '.$fname.' not implemented.', Thrift::TApplicationException::UNKNOWN_METHOD);
4531 0         0 $output->writeMessageBegin($fname, Thrift::TMessageType::EXCEPTION, $rseqid);
4532 0         0 $x->write($output);
4533 0         0 $output->writeMessageEnd();
4534 0         0 $output->getTransport()->flush();
4535 0         0 return;
4536             }
4537 2         7 $self->$methodname($rseqid, $input, $output);
4538 2         6 return 1;
4539             }
4540              
4541             sub process_testVoid {
4542 0     0   0 my ($self, $seqid, $input, $output) = @_;
4543 0         0 my $args = ThriftTest::ThriftTest_testVoid_args->new();
4544 0         0 $args->read($input);
4545 0         0 $input->readMessageEnd();
4546 0         0 my $result = ThriftTest::ThriftTest_testVoid_result->new();
4547 0         0 $self->{handler}->testVoid();
4548 0         0 $output->writeMessageBegin('testVoid', Thrift::TMessageType::REPLY, $seqid);
4549 0         0 $result->write($output);
4550 0         0 $output->writeMessageEnd();
4551 0         0 $output->getTransport()->flush();
4552             }
4553              
4554             sub process_testString {
4555 2     2   6 my ($self, $seqid, $input, $output) = @_;
4556 2         4 my $args = ThriftTest::ThriftTest_testString_args->new();
4557 2         6 $args->read($input);
4558 2         6 $input->readMessageEnd();
4559 2         11 my $result = ThriftTest::ThriftTest_testString_result->new();
4560 2         13 $result->{success} = $self->{handler}->testString($args->thing);
4561 2         148 $output->writeMessageBegin('testString', Thrift::TMessageType::REPLY, $seqid);
4562 2         8 $result->write($output);
4563 2         6 $output->writeMessageEnd();
4564 2         6 $output->getTransport()->flush();
4565             }
4566              
4567             sub process_testBool {
4568 0     0     my ($self, $seqid, $input, $output) = @_;
4569 0           my $args = ThriftTest::ThriftTest_testBool_args->new();
4570 0           $args->read($input);
4571 0           $input->readMessageEnd();
4572 0           my $result = ThriftTest::ThriftTest_testBool_result->new();
4573 0           $result->{success} = $self->{handler}->testBool($args->thing);
4574 0           $output->writeMessageBegin('testBool', Thrift::TMessageType::REPLY, $seqid);
4575 0           $result->write($output);
4576 0           $output->writeMessageEnd();
4577 0           $output->getTransport()->flush();
4578             }
4579              
4580             sub process_testByte {
4581 0     0     my ($self, $seqid, $input, $output) = @_;
4582 0           my $args = ThriftTest::ThriftTest_testByte_args->new();
4583 0           $args->read($input);
4584 0           $input->readMessageEnd();
4585 0           my $result = ThriftTest::ThriftTest_testByte_result->new();
4586 0           $result->{success} = $self->{handler}->testByte($args->thing);
4587 0           $output->writeMessageBegin('testByte', Thrift::TMessageType::REPLY, $seqid);
4588 0           $result->write($output);
4589 0           $output->writeMessageEnd();
4590 0           $output->getTransport()->flush();
4591             }
4592              
4593             sub process_testI32 {
4594 0     0     my ($self, $seqid, $input, $output) = @_;
4595 0           my $args = ThriftTest::ThriftTest_testI32_args->new();
4596 0           $args->read($input);
4597 0           $input->readMessageEnd();
4598 0           my $result = ThriftTest::ThriftTest_testI32_result->new();
4599 0           $result->{success} = $self->{handler}->testI32($args->thing);
4600 0           $output->writeMessageBegin('testI32', Thrift::TMessageType::REPLY, $seqid);
4601 0           $result->write($output);
4602 0           $output->writeMessageEnd();
4603 0           $output->getTransport()->flush();
4604             }
4605              
4606             sub process_testI64 {
4607 0     0     my ($self, $seqid, $input, $output) = @_;
4608 0           my $args = ThriftTest::ThriftTest_testI64_args->new();
4609 0           $args->read($input);
4610 0           $input->readMessageEnd();
4611 0           my $result = ThriftTest::ThriftTest_testI64_result->new();
4612 0           $result->{success} = $self->{handler}->testI64($args->thing);
4613 0           $output->writeMessageBegin('testI64', Thrift::TMessageType::REPLY, $seqid);
4614 0           $result->write($output);
4615 0           $output->writeMessageEnd();
4616 0           $output->getTransport()->flush();
4617             }
4618              
4619             sub process_testDouble {
4620 0     0     my ($self, $seqid, $input, $output) = @_;
4621 0           my $args = ThriftTest::ThriftTest_testDouble_args->new();
4622 0           $args->read($input);
4623 0           $input->readMessageEnd();
4624 0           my $result = ThriftTest::ThriftTest_testDouble_result->new();
4625 0           $result->{success} = $self->{handler}->testDouble($args->thing);
4626 0           $output->writeMessageBegin('testDouble', Thrift::TMessageType::REPLY, $seqid);
4627 0           $result->write($output);
4628 0           $output->writeMessageEnd();
4629 0           $output->getTransport()->flush();
4630             }
4631              
4632             sub process_testBinary {
4633 0     0     my ($self, $seqid, $input, $output) = @_;
4634 0           my $args = ThriftTest::ThriftTest_testBinary_args->new();
4635 0           $args->read($input);
4636 0           $input->readMessageEnd();
4637 0           my $result = ThriftTest::ThriftTest_testBinary_result->new();
4638 0           $result->{success} = $self->{handler}->testBinary($args->thing);
4639 0           $output->writeMessageBegin('testBinary', Thrift::TMessageType::REPLY, $seqid);
4640 0           $result->write($output);
4641 0           $output->writeMessageEnd();
4642 0           $output->getTransport()->flush();
4643             }
4644              
4645             sub process_testStruct {
4646 0     0     my ($self, $seqid, $input, $output) = @_;
4647 0           my $args = ThriftTest::ThriftTest_testStruct_args->new();
4648 0           $args->read($input);
4649 0           $input->readMessageEnd();
4650 0           my $result = ThriftTest::ThriftTest_testStruct_result->new();
4651 0           $result->{success} = $self->{handler}->testStruct($args->thing);
4652 0           $output->writeMessageBegin('testStruct', Thrift::TMessageType::REPLY, $seqid);
4653 0           $result->write($output);
4654 0           $output->writeMessageEnd();
4655 0           $output->getTransport()->flush();
4656             }
4657              
4658             sub process_testNest {
4659 0     0     my ($self, $seqid, $input, $output) = @_;
4660 0           my $args = ThriftTest::ThriftTest_testNest_args->new();
4661 0           $args->read($input);
4662 0           $input->readMessageEnd();
4663 0           my $result = ThriftTest::ThriftTest_testNest_result->new();
4664 0           $result->{success} = $self->{handler}->testNest($args->thing);
4665 0           $output->writeMessageBegin('testNest', Thrift::TMessageType::REPLY, $seqid);
4666 0           $result->write($output);
4667 0           $output->writeMessageEnd();
4668 0           $output->getTransport()->flush();
4669             }
4670              
4671             sub process_testMap {
4672 0     0     my ($self, $seqid, $input, $output) = @_;
4673 0           my $args = ThriftTest::ThriftTest_testMap_args->new();
4674 0           $args->read($input);
4675 0           $input->readMessageEnd();
4676 0           my $result = ThriftTest::ThriftTest_testMap_result->new();
4677 0           $result->{success} = $self->{handler}->testMap($args->thing);
4678 0           $output->writeMessageBegin('testMap', Thrift::TMessageType::REPLY, $seqid);
4679 0           $result->write($output);
4680 0           $output->writeMessageEnd();
4681 0           $output->getTransport()->flush();
4682             }
4683              
4684             sub process_testStringMap {
4685 0     0     my ($self, $seqid, $input, $output) = @_;
4686 0           my $args = ThriftTest::ThriftTest_testStringMap_args->new();
4687 0           $args->read($input);
4688 0           $input->readMessageEnd();
4689 0           my $result = ThriftTest::ThriftTest_testStringMap_result->new();
4690 0           $result->{success} = $self->{handler}->testStringMap($args->thing);
4691 0           $output->writeMessageBegin('testStringMap', Thrift::TMessageType::REPLY, $seqid);
4692 0           $result->write($output);
4693 0           $output->writeMessageEnd();
4694 0           $output->getTransport()->flush();
4695             }
4696              
4697             sub process_testSet {
4698 0     0     my ($self, $seqid, $input, $output) = @_;
4699 0           my $args = ThriftTest::ThriftTest_testSet_args->new();
4700 0           $args->read($input);
4701 0           $input->readMessageEnd();
4702 0           my $result = ThriftTest::ThriftTest_testSet_result->new();
4703 0           $result->{success} = $self->{handler}->testSet($args->thing);
4704 0           $output->writeMessageBegin('testSet', Thrift::TMessageType::REPLY, $seqid);
4705 0           $result->write($output);
4706 0           $output->writeMessageEnd();
4707 0           $output->getTransport()->flush();
4708             }
4709              
4710             sub process_testList {
4711 0     0     my ($self, $seqid, $input, $output) = @_;
4712 0           my $args = ThriftTest::ThriftTest_testList_args->new();
4713 0           $args->read($input);
4714 0           $input->readMessageEnd();
4715 0           my $result = ThriftTest::ThriftTest_testList_result->new();
4716 0           $result->{success} = $self->{handler}->testList($args->thing);
4717 0           $output->writeMessageBegin('testList', Thrift::TMessageType::REPLY, $seqid);
4718 0           $result->write($output);
4719 0           $output->writeMessageEnd();
4720 0           $output->getTransport()->flush();
4721             }
4722              
4723             sub process_testEnum {
4724 0     0     my ($self, $seqid, $input, $output) = @_;
4725 0           my $args = ThriftTest::ThriftTest_testEnum_args->new();
4726 0           $args->read($input);
4727 0           $input->readMessageEnd();
4728 0           my $result = ThriftTest::ThriftTest_testEnum_result->new();
4729 0           $result->{success} = $self->{handler}->testEnum($args->thing);
4730 0           $output->writeMessageBegin('testEnum', Thrift::TMessageType::REPLY, $seqid);
4731 0           $result->write($output);
4732 0           $output->writeMessageEnd();
4733 0           $output->getTransport()->flush();
4734             }
4735              
4736             sub process_testTypedef {
4737 0     0     my ($self, $seqid, $input, $output) = @_;
4738 0           my $args = ThriftTest::ThriftTest_testTypedef_args->new();
4739 0           $args->read($input);
4740 0           $input->readMessageEnd();
4741 0           my $result = ThriftTest::ThriftTest_testTypedef_result->new();
4742 0           $result->{success} = $self->{handler}->testTypedef($args->thing);
4743 0           $output->writeMessageBegin('testTypedef', Thrift::TMessageType::REPLY, $seqid);
4744 0           $result->write($output);
4745 0           $output->writeMessageEnd();
4746 0           $output->getTransport()->flush();
4747             }
4748              
4749             sub process_testMapMap {
4750 0     0     my ($self, $seqid, $input, $output) = @_;
4751 0           my $args = ThriftTest::ThriftTest_testMapMap_args->new();
4752 0           $args->read($input);
4753 0           $input->readMessageEnd();
4754 0           my $result = ThriftTest::ThriftTest_testMapMap_result->new();
4755 0           $result->{success} = $self->{handler}->testMapMap($args->hello);
4756 0           $output->writeMessageBegin('testMapMap', Thrift::TMessageType::REPLY, $seqid);
4757 0           $result->write($output);
4758 0           $output->writeMessageEnd();
4759 0           $output->getTransport()->flush();
4760             }
4761              
4762             sub process_testInsanity {
4763 0     0     my ($self, $seqid, $input, $output) = @_;
4764 0           my $args = ThriftTest::ThriftTest_testInsanity_args->new();
4765 0           $args->read($input);
4766 0           $input->readMessageEnd();
4767 0           my $result = ThriftTest::ThriftTest_testInsanity_result->new();
4768 0           $result->{success} = $self->{handler}->testInsanity($args->argument);
4769 0           $output->writeMessageBegin('testInsanity', Thrift::TMessageType::REPLY, $seqid);
4770 0           $result->write($output);
4771 0           $output->writeMessageEnd();
4772 0           $output->getTransport()->flush();
4773             }
4774              
4775             sub process_testMulti {
4776 0     0     my ($self, $seqid, $input, $output) = @_;
4777 0           my $args = ThriftTest::ThriftTest_testMulti_args->new();
4778 0           $args->read($input);
4779 0           $input->readMessageEnd();
4780 0           my $result = ThriftTest::ThriftTest_testMulti_result->new();
4781 0           $result->{success} = $self->{handler}->testMulti($args->arg0, $args->arg1, $args->arg2, $args->arg3, $args->arg4, $args->arg5);
4782 0           $output->writeMessageBegin('testMulti', Thrift::TMessageType::REPLY, $seqid);
4783 0           $result->write($output);
4784 0           $output->writeMessageEnd();
4785 0           $output->getTransport()->flush();
4786             }
4787              
4788             sub process_testException {
4789 0     0     my ($self, $seqid, $input, $output) = @_;
4790 0           my $args = ThriftTest::ThriftTest_testException_args->new();
4791 0           $args->read($input);
4792 0           $input->readMessageEnd();
4793 0           my $result = ThriftTest::ThriftTest_testException_result->new();
4794 0           eval {
4795 0           $self->{handler}->testException($args->arg);
4796 0 0         }; if( UNIVERSAL::isa($@,'ThriftTest::Xception') ){
4797 0           $result->{err1} = $@;
4798 0           $@ = undef;
4799             }
4800 0 0         if ($@) {
4801 0           $@ =~ s/^\s+|\s+$//g;
4802 0           my $err = Thrift::TApplicationException->new("Unexpected Exception: " . $@, Thrift::TApplicationException::INTERNAL_ERROR);
4803 0           $output->writeMessageBegin('testException', Thrift::TMessageType::EXCEPTION, $seqid);
4804 0           $err->write($output);
4805 0           $output->writeMessageEnd();
4806 0           $output->getTransport()->flush();
4807 0           $@ = undef;
4808 0           return;
4809             }
4810 0           $output->writeMessageBegin('testException', Thrift::TMessageType::REPLY, $seqid);
4811 0           $result->write($output);
4812 0           $output->writeMessageEnd();
4813 0           $output->getTransport()->flush();
4814             }
4815              
4816             sub process_testMultiException {
4817 0     0     my ($self, $seqid, $input, $output) = @_;
4818 0           my $args = ThriftTest::ThriftTest_testMultiException_args->new();
4819 0           $args->read($input);
4820 0           $input->readMessageEnd();
4821 0           my $result = ThriftTest::ThriftTest_testMultiException_result->new();
4822 0           eval {
4823 0           $result->{success} = $self->{handler}->testMultiException($args->arg0, $args->arg1);
4824 0 0         }; if( UNIVERSAL::isa($@,'ThriftTest::Xception') ){
4825 0           $result->{err1} = $@;
4826 0           $@ = undef;
4827 0 0         }; if( UNIVERSAL::isa($@,'ThriftTest::Xception2') ){
4828 0           $result->{err2} = $@;
4829 0           $@ = undef;
4830             }
4831 0 0         if ($@) {
4832 0           $@ =~ s/^\s+|\s+$//g;
4833 0           my $err = Thrift::TApplicationException->new("Unexpected Exception: " . $@, Thrift::TApplicationException::INTERNAL_ERROR);
4834 0           $output->writeMessageBegin('testMultiException', Thrift::TMessageType::EXCEPTION, $seqid);
4835 0           $err->write($output);
4836 0           $output->writeMessageEnd();
4837 0           $output->getTransport()->flush();
4838 0           $@ = undef;
4839 0           return;
4840             }
4841 0           $output->writeMessageBegin('testMultiException', Thrift::TMessageType::REPLY, $seqid);
4842 0           $result->write($output);
4843 0           $output->writeMessageEnd();
4844 0           $output->getTransport()->flush();
4845             }
4846              
4847             sub process_testOneway {
4848 0     0     my ($self, $seqid, $input, $output) = @_;
4849 0           my $args = ThriftTest::ThriftTest_testOneway_args->new();
4850 0           $args->read($input);
4851 0           $input->readMessageEnd();
4852 0           $self->{handler}->testOneway($args->secondsToSleep);
4853 0           return;
4854             }
4855             1;