sparqcode_bunny 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. data/.gitignore +10 -0
  2. data/.rspec +3 -0
  3. data/.travis.yml +15 -0
  4. data/.yardopts +9 -0
  5. data/CHANGELOG +27 -0
  6. data/Gemfile +39 -0
  7. data/LICENSE +21 -0
  8. data/README.textile +82 -0
  9. data/Rakefile +14 -0
  10. data/bunny.gemspec +43 -0
  11. data/examples/simple_08.rb +32 -0
  12. data/examples/simple_09.rb +32 -0
  13. data/examples/simple_ack_08.rb +35 -0
  14. data/examples/simple_ack_09.rb +35 -0
  15. data/examples/simple_consumer_08.rb +55 -0
  16. data/examples/simple_consumer_09.rb +55 -0
  17. data/examples/simple_fanout_08.rb +41 -0
  18. data/examples/simple_fanout_09.rb +41 -0
  19. data/examples/simple_headers_08.rb +42 -0
  20. data/examples/simple_headers_09.rb +42 -0
  21. data/examples/simple_publisher_08.rb +29 -0
  22. data/examples/simple_publisher_09.rb +29 -0
  23. data/examples/simple_topic_08.rb +61 -0
  24. data/examples/simple_topic_09.rb +61 -0
  25. data/ext/amqp-0.8.json +616 -0
  26. data/ext/amqp-0.9.1.json +388 -0
  27. data/ext/config.yml +4 -0
  28. data/ext/qparser.rb +469 -0
  29. data/lib/bunny/channel08.rb +39 -0
  30. data/lib/bunny/channel09.rb +39 -0
  31. data/lib/bunny/client08.rb +472 -0
  32. data/lib/bunny/client09.rb +374 -0
  33. data/lib/bunny/consumer.rb +35 -0
  34. data/lib/bunny/exchange08.rb +171 -0
  35. data/lib/bunny/exchange09.rb +159 -0
  36. data/lib/bunny/queue08.rb +403 -0
  37. data/lib/bunny/queue09.rb +325 -0
  38. data/lib/bunny/subscription08.rb +87 -0
  39. data/lib/bunny/subscription09.rb +87 -0
  40. data/lib/bunny/system_timer.rb +14 -0
  41. data/lib/bunny/version.rb +5 -0
  42. data/lib/bunny.rb +109 -0
  43. data/lib/qrack/amq-client-url.rb +165 -0
  44. data/lib/qrack/channel.rb +20 -0
  45. data/lib/qrack/client.rb +235 -0
  46. data/lib/qrack/errors.rb +5 -0
  47. data/lib/qrack/protocol/protocol08.rb +134 -0
  48. data/lib/qrack/protocol/protocol09.rb +135 -0
  49. data/lib/qrack/protocol/spec08.rb +828 -0
  50. data/lib/qrack/protocol/spec09.rb +524 -0
  51. data/lib/qrack/qrack08.rb +20 -0
  52. data/lib/qrack/qrack09.rb +20 -0
  53. data/lib/qrack/queue.rb +40 -0
  54. data/lib/qrack/subscription.rb +112 -0
  55. data/lib/qrack/transport/buffer08.rb +278 -0
  56. data/lib/qrack/transport/buffer09.rb +280 -0
  57. data/lib/qrack/transport/frame08.rb +117 -0
  58. data/lib/qrack/transport/frame09.rb +97 -0
  59. data/spec/spec_08/bunny_spec.rb +77 -0
  60. data/spec/spec_08/connection_spec.rb +25 -0
  61. data/spec/spec_08/exchange_spec.rb +173 -0
  62. data/spec/spec_08/queue_spec.rb +235 -0
  63. data/spec/spec_09/amqp_url_spec.rb +19 -0
  64. data/spec/spec_09/bunny_spec.rb +76 -0
  65. data/spec/spec_09/connection_spec.rb +29 -0
  66. data/spec/spec_09/exchange_spec.rb +173 -0
  67. data/spec/spec_09/queue_spec.rb +248 -0
  68. metadata +151 -0
@@ -0,0 +1,828 @@
1
+
2
+ # encoding: utf-8
3
+
4
+
5
+ #:stopdoc:
6
+ # this file was autogenerated on 2011-07-21 07:15:33 +0100
7
+ # using amqp-0.8.json (mtime: 2011-07-20 19:11:32 +0100)
8
+ #
9
+ # DO NOT EDIT! (edit ext/qparser.rb and config.yml instead, and run 'ruby qparser.rb')
10
+
11
+ module Qrack
12
+ module Protocol
13
+ HEADER = "AMQP".freeze
14
+ VERSION_MAJOR = 8
15
+ VERSION_MINOR = 0
16
+ REVISION = 0
17
+ PORT = 5672
18
+
19
+ RESPONSES = {
20
+ 200 => :REPLY_SUCCESS,
21
+ 310 => :NOT_DELIVERED,
22
+ 311 => :CONTENT_TOO_LARGE,
23
+ 312 => :NO_ROUTE,
24
+ 313 => :NO_CONSUMERS,
25
+ 320 => :CONNECTION_FORCED,
26
+ 402 => :INVALID_PATH,
27
+ 403 => :ACCESS_REFUSED,
28
+ 404 => :NOT_FOUND,
29
+ 405 => :RESOURCE_LOCKED,
30
+ 406 => :PRECONDITION_FAILED,
31
+ 502 => :SYNTAX_ERROR,
32
+ 503 => :COMMAND_INVALID,
33
+ 504 => :CHANNEL_ERROR,
34
+ 506 => :RESOURCE_ERROR,
35
+ 530 => :NOT_ALLOWED,
36
+ 540 => :NOT_IMPLEMENTED,
37
+ 541 => :INTERNAL_ERROR,
38
+ }
39
+
40
+ FIELDS = [
41
+ :bit,
42
+ :long,
43
+ :longlong,
44
+ :longstr,
45
+ :octet,
46
+ :short,
47
+ :shortstr,
48
+ :table,
49
+ :timestamp,
50
+ ]
51
+
52
+ class Class
53
+ class << self
54
+ FIELDS.each do |f|
55
+ class_eval %[
56
+ def #{f} name
57
+ properties << [ :#{f}, name ] unless properties.include?([:#{f}, name])
58
+ attr_accessor name
59
+ end
60
+ ]
61
+ end
62
+
63
+ def properties() @properties ||= [] end
64
+
65
+ def id() self::ID end
66
+ def name() self::NAME.to_s end
67
+ end
68
+
69
+ class Method
70
+ class << self
71
+ FIELDS.each do |f|
72
+ class_eval %[
73
+ def #{f} name
74
+ arguments << [ :#{f}, name ] unless arguments.include?([:#{f}, name])
75
+ attr_accessor name
76
+ end
77
+ ]
78
+ end
79
+
80
+ def arguments() @arguments ||= [] end
81
+
82
+ def parent() Protocol.const_get(self.to_s[/Protocol::(.+?)::/,1]) end
83
+ def id() self::ID end
84
+ def name() self::NAME.to_s end
85
+ end
86
+
87
+ def == b
88
+ self.class.arguments.inject(true) do |eql, (type, name)|
89
+ eql and __send__("#{name}") == b.__send__("#{name}")
90
+ end
91
+ end
92
+ end
93
+
94
+ def self.methods() @methods ||= {} end
95
+
96
+ def self.Method(id, name)
97
+ @_base_methods ||= {}
98
+ @_base_methods[id] ||= ::Class.new(Method) do
99
+ class_eval %[
100
+ def self.inherited klass
101
+ klass.const_set(:ID, #{id})
102
+ klass.const_set(:NAME, :#{name.to_s})
103
+ klass.parent.methods[#{id}] = klass
104
+ klass.parent.methods[klass::NAME] = klass
105
+ end
106
+ ]
107
+ end
108
+ end
109
+ end
110
+
111
+ def self.classes() @classes ||= {} end
112
+
113
+ def self.Class(id, name)
114
+ @_base_classes ||= {}
115
+ @_base_classes[id] ||= ::Class.new(Class) do
116
+ class_eval %[
117
+ def self.inherited klass
118
+ klass.const_set(:ID, #{id})
119
+ klass.const_set(:NAME, :#{name.to_s})
120
+ Protocol.classes[#{id}] = klass
121
+ Protocol.classes[klass::NAME] = klass
122
+ end
123
+ ]
124
+ end
125
+ end
126
+ end
127
+ end
128
+
129
+ module Qrack
130
+ module Protocol
131
+ class Connection < Class( 10, :connection ); end
132
+ class Channel < Class( 20, :channel ); end
133
+ class Access < Class( 30, :access ); end
134
+ class Exchange < Class( 40, :exchange ); end
135
+ class Queue < Class( 50, :queue ); end
136
+ class Basic < Class( 60, :basic ); end
137
+ class File < Class( 70, :file ); end
138
+ class Stream < Class( 80, :stream ); end
139
+ class Tx < Class( 90, :tx ); end
140
+ class Dtx < Class( 100, :dtx ); end
141
+ class Tunnel < Class( 110, :tunnel ); end
142
+ class Test < Class( 120, :test ); end
143
+
144
+ class Connection
145
+
146
+ class Start < Method( 10, :start ); end
147
+ class StartOk < Method( 11, :start_ok ); end
148
+ class Secure < Method( 20, :secure ); end
149
+ class SecureOk < Method( 21, :secure_ok ); end
150
+ class Tune < Method( 30, :tune ); end
151
+ class TuneOk < Method( 31, :tune_ok ); end
152
+ class Open < Method( 40, :open ); end
153
+ class OpenOk < Method( 41, :open_ok ); end
154
+ class Redirect < Method( 50, :redirect ); end
155
+ class Close < Method( 60, :close ); end
156
+ class CloseOk < Method( 61, :close_ok ); end
157
+
158
+
159
+ class Start
160
+ octet :version_major
161
+ octet :version_minor
162
+ table :server_properties
163
+ longstr :mechanisms
164
+ longstr :locales
165
+ end
166
+
167
+ class StartOk
168
+ table :client_properties
169
+ shortstr :mechanism
170
+ longstr :response
171
+ shortstr :locale
172
+ end
173
+
174
+ class Secure
175
+ longstr :challenge
176
+ end
177
+
178
+ class SecureOk
179
+ longstr :response
180
+ end
181
+
182
+ class Tune
183
+ short :channel_max
184
+ long :frame_max
185
+ short :heartbeat
186
+ end
187
+
188
+ class TuneOk
189
+ short :channel_max
190
+ long :frame_max
191
+ short :heartbeat
192
+ end
193
+
194
+ class Open
195
+ shortstr :virtual_host
196
+ shortstr :capabilities
197
+ bit :insist
198
+ end
199
+
200
+ class OpenOk
201
+ shortstr :known_hosts
202
+ end
203
+
204
+ class Redirect
205
+ shortstr :host
206
+ shortstr :known_hosts
207
+ end
208
+
209
+ class Close
210
+ short :reply_code
211
+ shortstr :reply_text
212
+ short :class_id
213
+ short :method_id
214
+ end
215
+
216
+ class CloseOk
217
+ end
218
+
219
+ end
220
+
221
+ class Channel
222
+
223
+ class Open < Method( 10, :open ); end
224
+ class OpenOk < Method( 11, :open_ok ); end
225
+ class Flow < Method( 20, :flow ); end
226
+ class FlowOk < Method( 21, :flow_ok ); end
227
+ class Alert < Method( 30, :alert ); end
228
+ class Close < Method( 40, :close ); end
229
+ class CloseOk < Method( 41, :close_ok ); end
230
+
231
+
232
+ class Open
233
+ shortstr :out_of_band
234
+ end
235
+
236
+ class OpenOk
237
+ end
238
+
239
+ class Flow
240
+ bit :active
241
+ end
242
+
243
+ class FlowOk
244
+ bit :active
245
+ end
246
+
247
+ class Alert
248
+ short :reply_code
249
+ shortstr :reply_text
250
+ table :details
251
+ end
252
+
253
+ class Close
254
+ short :reply_code
255
+ shortstr :reply_text
256
+ short :class_id
257
+ short :method_id
258
+ end
259
+
260
+ class CloseOk
261
+ end
262
+
263
+ end
264
+
265
+ class Access
266
+
267
+ class Request < Method( 10, :request ); end
268
+ class RequestOk < Method( 11, :request_ok ); end
269
+
270
+
271
+ class Request
272
+ shortstr :realm
273
+ bit :exclusive
274
+ bit :passive
275
+ bit :active
276
+ bit :write
277
+ bit :read
278
+ end
279
+
280
+ class RequestOk
281
+ short :ticket
282
+ end
283
+
284
+ end
285
+
286
+ class Exchange
287
+
288
+ class Declare < Method( 10, :declare ); end
289
+ class DeclareOk < Method( 11, :declare_ok ); end
290
+ class Delete < Method( 20, :delete ); end
291
+ class DeleteOk < Method( 21, :delete_ok ); end
292
+
293
+
294
+ class Declare
295
+ short :ticket
296
+ shortstr :exchange
297
+ shortstr :type
298
+ bit :passive
299
+ bit :durable
300
+ bit :auto_delete
301
+ bit :internal
302
+ bit :nowait
303
+ table :arguments
304
+ end
305
+
306
+ class DeclareOk
307
+ end
308
+
309
+ class Delete
310
+ short :ticket
311
+ shortstr :exchange
312
+ bit :if_unused
313
+ bit :nowait
314
+ end
315
+
316
+ class DeleteOk
317
+ end
318
+
319
+ end
320
+
321
+ class Queue
322
+
323
+ class Declare < Method( 10, :declare ); end
324
+ class DeclareOk < Method( 11, :declare_ok ); end
325
+ class Bind < Method( 20, :bind ); end
326
+ class BindOk < Method( 21, :bind_ok ); end
327
+ class Purge < Method( 30, :purge ); end
328
+ class PurgeOk < Method( 31, :purge_ok ); end
329
+ class Delete < Method( 40, :delete ); end
330
+ class DeleteOk < Method( 41, :delete_ok ); end
331
+ class Unbind < Method( 50, :unbind ); end
332
+ class UnbindOk < Method( 51, :unbind_ok ); end
333
+
334
+
335
+ class Declare
336
+ short :ticket
337
+ shortstr :queue
338
+ bit :passive
339
+ bit :durable
340
+ bit :exclusive
341
+ bit :auto_delete
342
+ bit :nowait
343
+ table :arguments
344
+ end
345
+
346
+ class DeclareOk
347
+ shortstr :queue
348
+ long :message_count
349
+ long :consumer_count
350
+ end
351
+
352
+ class Bind
353
+ short :ticket
354
+ shortstr :queue
355
+ shortstr :exchange
356
+ shortstr :routing_key
357
+ bit :nowait
358
+ table :arguments
359
+ end
360
+
361
+ class BindOk
362
+ end
363
+
364
+ class Purge
365
+ short :ticket
366
+ shortstr :queue
367
+ bit :nowait
368
+ end
369
+
370
+ class PurgeOk
371
+ long :message_count
372
+ end
373
+
374
+ class Delete
375
+ short :ticket
376
+ shortstr :queue
377
+ bit :if_unused
378
+ bit :if_empty
379
+ bit :nowait
380
+ end
381
+
382
+ class DeleteOk
383
+ long :message_count
384
+ end
385
+
386
+ class Unbind
387
+ short :ticket
388
+ shortstr :queue
389
+ shortstr :exchange
390
+ shortstr :routing_key
391
+ table :arguments
392
+ end
393
+
394
+ class UnbindOk
395
+ end
396
+
397
+ end
398
+
399
+ class Basic
400
+ shortstr :content_type
401
+ shortstr :content_encoding
402
+ table :headers
403
+ octet :delivery_mode
404
+ octet :priority
405
+ shortstr :correlation_id
406
+ shortstr :reply_to
407
+ shortstr :expiration
408
+ shortstr :message_id
409
+ timestamp :timestamp
410
+ shortstr :type
411
+ shortstr :user_id
412
+ shortstr :app_id
413
+ shortstr :cluster_id
414
+
415
+ class Qos < Method( 10, :qos ); end
416
+ class QosOk < Method( 11, :qos_ok ); end
417
+ class Consume < Method( 20, :consume ); end
418
+ class ConsumeOk < Method( 21, :consume_ok ); end
419
+ class Cancel < Method( 30, :cancel ); end
420
+ class CancelOk < Method( 31, :cancel_ok ); end
421
+ class Publish < Method( 40, :publish ); end
422
+ class Return < Method( 50, :return ); end
423
+ class Deliver < Method( 60, :deliver ); end
424
+ class Get < Method( 70, :get ); end
425
+ class GetOk < Method( 71, :get_ok ); end
426
+ class GetEmpty < Method( 72, :get_empty ); end
427
+ class Ack < Method( 80, :ack ); end
428
+ class Reject < Method( 90, :reject ); end
429
+ class Recover < Method( 100, :recover ); end
430
+
431
+
432
+ class Qos
433
+ long :prefetch_size
434
+ short :prefetch_count
435
+ bit :global
436
+ end
437
+
438
+ class QosOk
439
+ end
440
+
441
+ class Consume
442
+ short :ticket
443
+ shortstr :queue
444
+ shortstr :consumer_tag
445
+ bit :no_local
446
+ bit :no_ack
447
+ bit :exclusive
448
+ bit :nowait
449
+ end
450
+
451
+ class ConsumeOk
452
+ shortstr :consumer_tag
453
+ end
454
+
455
+ class Cancel
456
+ shortstr :consumer_tag
457
+ bit :nowait
458
+ end
459
+
460
+ class CancelOk
461
+ shortstr :consumer_tag
462
+ end
463
+
464
+ class Publish
465
+ short :ticket
466
+ shortstr :exchange
467
+ shortstr :routing_key
468
+ bit :mandatory
469
+ bit :immediate
470
+ end
471
+
472
+ class Return
473
+ short :reply_code
474
+ shortstr :reply_text
475
+ shortstr :exchange
476
+ shortstr :routing_key
477
+ end
478
+
479
+ class Deliver
480
+ shortstr :consumer_tag
481
+ longlong :delivery_tag
482
+ bit :redelivered
483
+ shortstr :exchange
484
+ shortstr :routing_key
485
+ end
486
+
487
+ class Get
488
+ short :ticket
489
+ shortstr :queue
490
+ bit :no_ack
491
+ end
492
+
493
+ class GetOk
494
+ longlong :delivery_tag
495
+ bit :redelivered
496
+ shortstr :exchange
497
+ shortstr :routing_key
498
+ long :message_count
499
+ end
500
+
501
+ class GetEmpty
502
+ shortstr :cluster_id
503
+ end
504
+
505
+ class Ack
506
+ longlong :delivery_tag
507
+ bit :multiple
508
+ end
509
+
510
+ class Reject
511
+ longlong :delivery_tag
512
+ bit :requeue
513
+ end
514
+
515
+ class Recover
516
+ bit :requeue
517
+ end
518
+
519
+ end
520
+
521
+ class File
522
+ shortstr :content_type
523
+ shortstr :content_encoding
524
+ table :headers
525
+ octet :priority
526
+ shortstr :reply_to
527
+ shortstr :message_id
528
+ shortstr :filename
529
+ timestamp :timestamp
530
+ shortstr :cluster_id
531
+
532
+ class Qos < Method( 10, :qos ); end
533
+ class QosOk < Method( 11, :qos_ok ); end
534
+ class Consume < Method( 20, :consume ); end
535
+ class ConsumeOk < Method( 21, :consume_ok ); end
536
+ class Cancel < Method( 30, :cancel ); end
537
+ class CancelOk < Method( 31, :cancel_ok ); end
538
+ class Open < Method( 40, :open ); end
539
+ class OpenOk < Method( 41, :open_ok ); end
540
+ class Stage < Method( 50, :stage ); end
541
+ class Publish < Method( 60, :publish ); end
542
+ class Return < Method( 70, :return ); end
543
+ class Deliver < Method( 80, :deliver ); end
544
+ class Ack < Method( 90, :ack ); end
545
+ class Reject < Method( 100, :reject ); end
546
+
547
+
548
+ class Qos
549
+ long :prefetch_size
550
+ short :prefetch_count
551
+ bit :global
552
+ end
553
+
554
+ class QosOk
555
+ end
556
+
557
+ class Consume
558
+ short :ticket
559
+ shortstr :queue
560
+ shortstr :consumer_tag
561
+ bit :no_local
562
+ bit :no_ack
563
+ bit :exclusive
564
+ bit :nowait
565
+ end
566
+
567
+ class ConsumeOk
568
+ shortstr :consumer_tag
569
+ end
570
+
571
+ class Cancel
572
+ shortstr :consumer_tag
573
+ bit :nowait
574
+ end
575
+
576
+ class CancelOk
577
+ shortstr :consumer_tag
578
+ end
579
+
580
+ class Open
581
+ shortstr :identifier
582
+ longlong :content_size
583
+ end
584
+
585
+ class OpenOk
586
+ longlong :staged_size
587
+ end
588
+
589
+ class Stage
590
+ end
591
+
592
+ class Publish
593
+ short :ticket
594
+ shortstr :exchange
595
+ shortstr :routing_key
596
+ bit :mandatory
597
+ bit :immediate
598
+ shortstr :identifier
599
+ end
600
+
601
+ class Return
602
+ short :reply_code
603
+ shortstr :reply_text
604
+ shortstr :exchange
605
+ shortstr :routing_key
606
+ end
607
+
608
+ class Deliver
609
+ shortstr :consumer_tag
610
+ longlong :delivery_tag
611
+ bit :redelivered
612
+ shortstr :exchange
613
+ shortstr :routing_key
614
+ shortstr :identifier
615
+ end
616
+
617
+ class Ack
618
+ longlong :delivery_tag
619
+ bit :multiple
620
+ end
621
+
622
+ class Reject
623
+ longlong :delivery_tag
624
+ bit :requeue
625
+ end
626
+
627
+ end
628
+
629
+ class Stream
630
+ shortstr :content_type
631
+ shortstr :content_encoding
632
+ table :headers
633
+ octet :priority
634
+ timestamp :timestamp
635
+
636
+ class Qos < Method( 10, :qos ); end
637
+ class QosOk < Method( 11, :qos_ok ); end
638
+ class Consume < Method( 20, :consume ); end
639
+ class ConsumeOk < Method( 21, :consume_ok ); end
640
+ class Cancel < Method( 30, :cancel ); end
641
+ class CancelOk < Method( 31, :cancel_ok ); end
642
+ class Publish < Method( 40, :publish ); end
643
+ class Return < Method( 50, :return ); end
644
+ class Deliver < Method( 60, :deliver ); end
645
+
646
+
647
+ class Qos
648
+ long :prefetch_size
649
+ short :prefetch_count
650
+ long :consume_rate
651
+ bit :global
652
+ end
653
+
654
+ class QosOk
655
+ end
656
+
657
+ class Consume
658
+ short :ticket
659
+ shortstr :queue
660
+ shortstr :consumer_tag
661
+ bit :no_local
662
+ bit :exclusive
663
+ bit :nowait
664
+ end
665
+
666
+ class ConsumeOk
667
+ shortstr :consumer_tag
668
+ end
669
+
670
+ class Cancel
671
+ shortstr :consumer_tag
672
+ bit :nowait
673
+ end
674
+
675
+ class CancelOk
676
+ shortstr :consumer_tag
677
+ end
678
+
679
+ class Publish
680
+ short :ticket
681
+ shortstr :exchange
682
+ shortstr :routing_key
683
+ bit :mandatory
684
+ bit :immediate
685
+ end
686
+
687
+ class Return
688
+ short :reply_code
689
+ shortstr :reply_text
690
+ shortstr :exchange
691
+ shortstr :routing_key
692
+ end
693
+
694
+ class Deliver
695
+ shortstr :consumer_tag
696
+ longlong :delivery_tag
697
+ shortstr :exchange
698
+ shortstr :queue
699
+ end
700
+
701
+ end
702
+
703
+ class Tx
704
+
705
+ class Select < Method( 10, :select ); end
706
+ class SelectOk < Method( 11, :select_ok ); end
707
+ class Commit < Method( 20, :commit ); end
708
+ class CommitOk < Method( 21, :commit_ok ); end
709
+ class Rollback < Method( 30, :rollback ); end
710
+ class RollbackOk < Method( 31, :rollback_ok ); end
711
+
712
+
713
+ class Select
714
+ end
715
+
716
+ class SelectOk
717
+ end
718
+
719
+ class Commit
720
+ end
721
+
722
+ class CommitOk
723
+ end
724
+
725
+ class Rollback
726
+ end
727
+
728
+ class RollbackOk
729
+ end
730
+
731
+ end
732
+
733
+ class Dtx
734
+
735
+ class Select < Method( 10, :select ); end
736
+ class SelectOk < Method( 11, :select_ok ); end
737
+ class Start < Method( 20, :start ); end
738
+ class StartOk < Method( 21, :start_ok ); end
739
+
740
+
741
+ class Select
742
+ end
743
+
744
+ class SelectOk
745
+ end
746
+
747
+ class Start
748
+ shortstr :dtx_identifier
749
+ end
750
+
751
+ class StartOk
752
+ end
753
+
754
+ end
755
+
756
+ class Tunnel
757
+ table :headers
758
+ shortstr :proxy_name
759
+ shortstr :data_name
760
+ octet :durable
761
+ octet :broadcast
762
+
763
+ class Request < Method( 10, :request ); end
764
+
765
+
766
+ class Request
767
+ table :meta_data
768
+ end
769
+
770
+ end
771
+
772
+ class Test
773
+
774
+ class Integer < Method( 10, :integer ); end
775
+ class IntegerOk < Method( 11, :integer_ok ); end
776
+ class String < Method( 20, :string ); end
777
+ class StringOk < Method( 21, :string_ok ); end
778
+ class Table < Method( 30, :table ); end
779
+ class TableOk < Method( 31, :table_ok ); end
780
+ class Content < Method( 40, :content ); end
781
+ class ContentOk < Method( 41, :content_ok ); end
782
+
783
+
784
+ class Integer
785
+ octet :integer_1
786
+ short :integer_2
787
+ long :integer_3
788
+ longlong :integer_4
789
+ octet :operation
790
+ end
791
+
792
+ class IntegerOk
793
+ longlong :result
794
+ end
795
+
796
+ class String
797
+ shortstr :string_1
798
+ longstr :string_2
799
+ octet :operation
800
+ end
801
+
802
+ class StringOk
803
+ longstr :result
804
+ end
805
+
806
+ class Table
807
+ table :table
808
+ octet :integer_op
809
+ octet :string_op
810
+ end
811
+
812
+ class TableOk
813
+ longlong :integer_result
814
+ longstr :string_result
815
+ end
816
+
817
+ class Content
818
+ end
819
+
820
+ class ContentOk
821
+ long :content_checksum
822
+ end
823
+
824
+ end
825
+
826
+ end
827
+
828
+ end