upfluence-thrift 2.6.1 → 2.7.4

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 (168) hide show
  1. checksums.yaml +4 -4
  2. data/benchmark/benchmark_constants.rb +11 -0
  3. data/benchmark/benchmark_service.rb +152 -0
  4. data/benchmark/benchmark_types.rb +10 -0
  5. data/ext/struct.c +5 -1
  6. data/lib/thrift/base_stream.rb +85 -0
  7. data/lib/thrift/bidi_stream.rb +183 -0
  8. data/lib/thrift/client.rb +84 -17
  9. data/lib/thrift/definition.rb +4 -0
  10. data/lib/thrift/inbound_stream.rb +72 -0
  11. data/lib/thrift/middleware.rb +42 -0
  12. data/lib/thrift/outbound_stream.rb +52 -0
  13. data/lib/thrift/processor.rb +287 -47
  14. data/lib/thrift/protocol/base_protocol.rb +35 -33
  15. data/lib/thrift/protocol/binary_protocol.rb +8 -1
  16. data/lib/thrift/protocol/binary_protocol_accelerated.rb +8 -0
  17. data/lib/thrift/protocol/compact_protocol.rb +8 -0
  18. data/lib/thrift/protocol/json_protocol.rb +21 -4
  19. data/lib/thrift/protocol/multiplexed_protocol.rb +5 -1
  20. data/lib/thrift/server/base_server.rb +8 -2
  21. data/lib/thrift/server/nonblocking_server.rb +5 -4
  22. data/lib/thrift/server/simple_server.rb +5 -1
  23. data/lib/thrift/server/thread_pool_server.rb +5 -1
  24. data/lib/thrift/server/threaded_server.rb +5 -1
  25. data/lib/thrift/transport/base_server_transport.rb +1 -1
  26. data/lib/thrift/transport/base_transport.rb +8 -0
  27. data/lib/thrift/transport/buffered_transport.rb +9 -1
  28. data/lib/thrift/transport/framed_transport.rb +9 -1
  29. data/lib/thrift/transport/http_client_transport.rb +4 -0
  30. data/lib/thrift/transport/io_stream_transport.rb +4 -1
  31. data/lib/thrift/transport/memory_buffer_transport.rb +4 -0
  32. data/lib/thrift/transport/server_socket.rb +5 -0
  33. data/lib/thrift/transport/socket.rb +21 -17
  34. data/lib/thrift/transport/ssl_server_socket.rb +41 -0
  35. data/lib/thrift/transport/ssl_socket.rb +51 -0
  36. data/lib/thrift/transport/unix_server_socket.rb +5 -1
  37. data/lib/thrift/transport/unix_socket.rb +5 -1
  38. data/lib/thrift/types/annotation/deprecation/deprecation_constants.rb +1 -1
  39. data/lib/thrift/types/annotation/deprecation/deprecation_types.rb +2 -2
  40. data/lib/thrift/types/annotation/exception/exception_constants.rb +17 -0
  41. data/lib/thrift/types/annotation/exception/exception_types.rb +44 -0
  42. data/lib/thrift/types/annotation/naming/naming_constants.rb +1 -1
  43. data/lib/thrift/types/annotation/naming/naming_types.rb +2 -2
  44. data/lib/thrift/types/annotation/rpc/rpc_constants.rb +17 -0
  45. data/lib/thrift/types/annotation/rpc/rpc_types.rb +74 -0
  46. data/lib/thrift/types/annotation_definition/annotation_definition_constants.rb +15 -0
  47. data/lib/thrift/types/annotation_definition/annotation_definition_types.rb +116 -0
  48. data/lib/thrift/types/constant_definition/constant_definition_constants.rb +15 -0
  49. data/lib/thrift/types/constant_definition/constant_definition_types.rb +292 -0
  50. data/lib/thrift/types/core/core_constants.rb +15 -0
  51. data/lib/thrift/types/core/core_types.rb +58 -0
  52. data/lib/thrift/types/enum_definition/enum_definition_constants.rb +15 -0
  53. data/lib/thrift/types/enum_definition/enum_definition_types.rb +106 -0
  54. data/lib/thrift/types/known/any/any_constants.rb +1 -1
  55. data/lib/thrift/types/known/any/any_types.rb +2 -2
  56. data/lib/thrift/types/known/duration/duration_constants.rb +1 -1
  57. data/lib/thrift/types/known/duration/duration_types.rb +2 -2
  58. data/lib/thrift/types/known/timestamp/timestamp_constants.rb +1 -1
  59. data/lib/thrift/types/known/timestamp/timestamp_types.rb +2 -2
  60. data/lib/thrift/types/plugin/plugin.rb +139 -0
  61. data/lib/thrift/types/plugin/plugin_constants.rb +15 -0
  62. data/lib/thrift/types/plugin/plugin_types.rb +106 -0
  63. data/lib/thrift/types/program_definition/program_definition_constants.rb +15 -0
  64. data/lib/thrift/types/program_definition/program_definition_types.rb +137 -0
  65. data/lib/thrift/types/service_definition/service_definition_constants.rb +15 -0
  66. data/lib/thrift/types/service_definition/service_definition_types.rb +160 -0
  67. data/lib/thrift/types/struct_definition/struct_definition_constants.rb +15 -0
  68. data/lib/thrift/types/struct_definition/struct_definition_types.rb +157 -0
  69. data/lib/thrift/types/type_definition/type_definition_constants.rb +15 -0
  70. data/lib/thrift/types/type_definition/type_definition_types.rb +242 -0
  71. data/lib/thrift/types/value/value_constants.rb +1 -1
  72. data/lib/thrift/types/value/value_types.rb +50 -51
  73. data/lib/thrift/types.rb +11 -3
  74. data/lib/thrift/union.rb +3 -6
  75. data/lib/thrift.rb +6 -0
  76. data/lib/types/annotation/deprecation/deprecation_constants.rb +16 -0
  77. data/lib/types/annotation/deprecation/deprecation_types.rb +42 -0
  78. data/lib/types/annotation/naming/naming_constants.rb +16 -0
  79. data/lib/types/annotation/naming/naming_types.rb +57 -0
  80. data/lib/types/annotation_definition/annotation_definition_constants.rb +14 -0
  81. data/lib/types/annotation_definition/annotation_definition_types.rb +114 -0
  82. data/lib/types/constant_definition/constant_definition_constants.rb +14 -0
  83. data/lib/types/constant_definition/constant_definition_types.rb +290 -0
  84. data/lib/types/core/core_constants.rb +14 -0
  85. data/lib/types/core/core_types.rb +56 -0
  86. data/lib/types/enum_definition/enum_definition_constants.rb +14 -0
  87. data/lib/types/enum_definition/enum_definition_types.rb +104 -0
  88. data/lib/types/known/any/any_constants.rb +16 -0
  89. data/lib/types/known/any/any_types.rb +59 -0
  90. data/lib/types/known/duration/duration_constants.rb +16 -0
  91. data/lib/types/known/duration/duration_types.rb +59 -0
  92. data/lib/types/known/timestamp/timestamp_constants.rb +16 -0
  93. data/lib/types/known/timestamp/timestamp_types.rb +59 -0
  94. data/lib/types/plugin/plugin.rb +137 -0
  95. data/lib/types/plugin/plugin_constants.rb +14 -0
  96. data/lib/types/plugin/plugin_types.rb +104 -0
  97. data/lib/types/program_definition/program_definition_constants.rb +14 -0
  98. data/lib/types/program_definition/program_definition_types.rb +135 -0
  99. data/lib/types/service_definition/service_definition_constants.rb +14 -0
  100. data/lib/types/service_definition/service_definition_types.rb +158 -0
  101. data/lib/types/struct_definition/struct_definition_constants.rb +14 -0
  102. data/lib/types/struct_definition/struct_definition_types.rb +155 -0
  103. data/lib/types/type_definition/type_definition_constants.rb +14 -0
  104. data/lib/types/type_definition/type_definition_types.rb +240 -0
  105. data/lib/types/value/value_constants.rb +14 -0
  106. data/lib/types/value/value_types.rb +330 -0
  107. data/spec/base/base_service.rb +152 -0
  108. data/spec/base/base_service_constants.rb +11 -0
  109. data/spec/base/base_service_types.rb +45 -0
  110. data/spec/base_protocol_spec.rb +79 -71
  111. data/spec/base_transport_spec.rb +155 -117
  112. data/spec/binary_protocol_accelerated_spec.rb +6 -2
  113. data/spec/binary_protocol_spec.rb +16 -8
  114. data/spec/binary_protocol_spec_shared.rb +77 -77
  115. data/spec/bytes_spec.rb +38 -38
  116. data/spec/client_spec.rb +48 -50
  117. data/spec/compact_protocol_spec.rb +59 -46
  118. data/spec/exception_spec.rb +54 -54
  119. data/spec/extended/extended_service.rb +137 -0
  120. data/spec/extended/extended_service_constants.rb +11 -0
  121. data/spec/extended/extended_service_types.rb +12 -0
  122. data/spec/flat_spec.rb +5 -5
  123. data/spec/gen-rb/flat/namespaced_nonblocking_service.rb +507 -0
  124. data/spec/gen-rb/flat/referenced_constants.rb +11 -0
  125. data/spec/gen-rb/flat/referenced_types.rb +17 -0
  126. data/spec/gen-rb/flat/thrift_namespaced_spec_constants.rb +11 -0
  127. data/spec/gen-rb/flat/thrift_namespaced_spec_types.rb +47 -0
  128. data/spec/http_client_spec.rb +96 -43
  129. data/spec/json_protocol_spec.rb +170 -131
  130. data/spec/namespaced_spec.rb +24 -27
  131. data/spec/namespaced_spec_namespace/namespaced_nonblocking_service.rb +507 -0
  132. data/spec/namespaced_spec_namespace/thrift_namespaced_spec_constants.rb +11 -0
  133. data/spec/namespaced_spec_namespace/thrift_namespaced_spec_types.rb +47 -0
  134. data/spec/nonblocking_server_spec.rb +16 -16
  135. data/spec/nonblocking_service.rb +507 -0
  136. data/spec/other_namespace/referenced_constants.rb +11 -0
  137. data/spec/other_namespace/referenced_types.rb +17 -0
  138. data/spec/processor_spec.rb +42 -31
  139. data/spec/rack_application_spec.rb +22 -26
  140. data/spec/serializer_spec.rb +20 -20
  141. data/spec/server_socket_spec.rb +27 -22
  142. data/spec/server_spec.rb +91 -51
  143. data/spec/socket_spec.rb +23 -16
  144. data/spec/socket_spec_shared.rb +31 -31
  145. data/spec/spec_helper.rb +17 -17
  146. data/spec/ssl_server_socket_spec.rb +34 -0
  147. data/spec/ssl_socket_spec.rb +78 -0
  148. data/spec/streaming_spec.rb +442 -0
  149. data/spec/struct_nested_containers_spec.rb +24 -24
  150. data/spec/struct_spec.rb +120 -120
  151. data/spec/thin_http_server_spec.rb +71 -28
  152. data/spec/thrift_spec_constants.rb +11 -0
  153. data/spec/thrift_spec_types.rb +1173 -0
  154. data/spec/types/known/any_spec.rb +2 -2
  155. data/spec/types/known/duration_spec.rb +1 -1
  156. data/spec/types/known/timestamp_spec.rb +1 -1
  157. data/spec/types/value_spec.rb +2 -1
  158. data/spec/types_spec.rb +56 -53
  159. data/spec/union_spec.rb +51 -40
  160. data/spec/unix_socket_spec.rb +43 -34
  161. data/test/debug_proto/gen-rb/debug_proto_test_constants.rb +281 -0
  162. data/test/debug_proto/gen-rb/debug_proto_test_types.rb +2033 -0
  163. data/test/debug_proto/gen-rb/empty_service.rb +52 -0
  164. data/test/debug_proto/gen-rb/inherited.rb +155 -0
  165. data/test/debug_proto/gen-rb/reverse_order_service.rb +169 -0
  166. data/test/debug_proto/gen-rb/service_for_exception_with_a_map.rb +150 -0
  167. data/test/debug_proto/gen-rb/srv.rb +718 -0
  168. metadata +202 -7
@@ -0,0 +1,160 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.7.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+ require 'thrift/thrift/types/core/core_types'
9
+ require 'thrift/types/annotation_definition/annotation_definition_types'
10
+ require 'thrift/types/type_definition/type_definition_types'
11
+ require 'thrift/types/struct_definition/struct_definition_types'
12
+
13
+
14
+ module Thrift
15
+ module Types
16
+ module Service_definition
17
+ class FunctionDefinition; end
18
+
19
+ class ServiceDefinition; end
20
+
21
+ class FunctionDefinition
22
+ include ::Thrift::Struct, ::Thrift::Struct_Union
23
+
24
+ NAME = 'FunctionDefinition'.freeze
25
+ NAMESPACE = 'types.service_definition'.freeze
26
+
27
+ LEGACY_ANNOTATIONS = {
28
+ }.freeze
29
+
30
+ STRUCTURED_ANNOTATIONS = [
31
+ ].freeze
32
+
33
+ THRIFT_FIELD_INDEX_ANNOTATION = 1
34
+ THRIFT_FIELD_INDEX_ARGUMENTS = 2
35
+ THRIFT_FIELD_INDEX_RETURN_TYPE = 3
36
+ THRIFT_FIELD_INDEX_EXCEPTIONS = 4
37
+ THRIFT_FIELD_INDEX_ONEWAY_ = 5
38
+ THRIFT_FIELD_INDEX_SINK_TYPE = 6
39
+ THRIFT_FIELD_INDEX_STREAM_TYPE = 7
40
+
41
+ THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS = {
42
+ }.freeze
43
+
44
+ THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS = [
45
+ ].freeze
46
+
47
+ THRIFT_FIELD_ARGUMENTS_LEGACY_ANNOTATIONS = {
48
+ }.freeze
49
+
50
+ THRIFT_FIELD_ARGUMENTS_STRUCTURED_ANNOTATIONS = [
51
+ ].freeze
52
+
53
+ THRIFT_FIELD_RETURN_TYPE_LEGACY_ANNOTATIONS = {
54
+ }.freeze
55
+
56
+ THRIFT_FIELD_RETURN_TYPE_STRUCTURED_ANNOTATIONS = [
57
+ ].freeze
58
+
59
+ THRIFT_FIELD_EXCEPTIONS_LEGACY_ANNOTATIONS = {
60
+ }.freeze
61
+
62
+ THRIFT_FIELD_EXCEPTIONS_STRUCTURED_ANNOTATIONS = [
63
+ ].freeze
64
+
65
+ THRIFT_FIELD_ONEWAY__LEGACY_ANNOTATIONS = {
66
+ }.freeze
67
+
68
+ THRIFT_FIELD_ONEWAY__STRUCTURED_ANNOTATIONS = [
69
+ ].freeze
70
+
71
+ THRIFT_FIELD_SINK_TYPE_LEGACY_ANNOTATIONS = {
72
+ }.freeze
73
+
74
+ THRIFT_FIELD_SINK_TYPE_STRUCTURED_ANNOTATIONS = [
75
+ ].freeze
76
+
77
+ THRIFT_FIELD_STREAM_TYPE_LEGACY_ANNOTATIONS = {
78
+ }.freeze
79
+
80
+ THRIFT_FIELD_STREAM_TYPE_STRUCTURED_ANNOTATIONS = [
81
+ ].freeze
82
+
83
+ FIELDS = {
84
+ THRIFT_FIELD_INDEX_ANNOTATION => {type: ::Thrift::Types::STRUCT, name: 'annotation', class: ::Thrift::Types::Annotation_definition::AnnotationDefinition, legacy_annotations: THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS},
85
+ THRIFT_FIELD_INDEX_ARGUMENTS => {type: ::Thrift::Types::LIST, name: 'arguments', element: {type: ::Thrift::Types::STRUCT, class: ::Thrift::Types::Struct_definition::FieldDefinition}, legacy_annotations: THRIFT_FIELD_ARGUMENTS_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ARGUMENTS_STRUCTURED_ANNOTATIONS},
86
+ THRIFT_FIELD_INDEX_RETURN_TYPE => {type: ::Thrift::Types::STRUCT, name: 'return_type', class: ::Thrift::Types::Type_definition::TypeDefinition, legacy_annotations: THRIFT_FIELD_RETURN_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_RETURN_TYPE_STRUCTURED_ANNOTATIONS},
87
+ THRIFT_FIELD_INDEX_EXCEPTIONS => {type: ::Thrift::Types::LIST, name: 'exceptions', element: {type: ::Thrift::Types::STRUCT, class: ::Thrift::Thrift::Types::Core::Reference}, legacy_annotations: THRIFT_FIELD_EXCEPTIONS_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_EXCEPTIONS_STRUCTURED_ANNOTATIONS},
88
+ THRIFT_FIELD_INDEX_ONEWAY_ => {type: ::Thrift::Types::BOOL, name: 'oneway_', legacy_annotations: THRIFT_FIELD_ONEWAY__LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ONEWAY__STRUCTURED_ANNOTATIONS},
89
+ THRIFT_FIELD_INDEX_SINK_TYPE => {type: ::Thrift::Types::STRUCT, name: 'sink_type', class: ::Thrift::Types::Type_definition::TypeDefinition, optional: true, legacy_annotations: THRIFT_FIELD_SINK_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_SINK_TYPE_STRUCTURED_ANNOTATIONS},
90
+ THRIFT_FIELD_INDEX_STREAM_TYPE => {type: ::Thrift::Types::STRUCT, name: 'stream_type', class: ::Thrift::Types::Type_definition::TypeDefinition, optional: true, legacy_annotations: THRIFT_FIELD_STREAM_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_STREAM_TYPE_STRUCTURED_ANNOTATIONS}
91
+ }.freeze
92
+
93
+ def struct_fields; FIELDS; end
94
+
95
+ def validate
96
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field annotation is unset!') unless @annotation
97
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field arguments is unset!') unless @arguments
98
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field return_type is unset!') unless @return_type
99
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field exceptions is unset!') unless @exceptions
100
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field oneway_ is unset!') if @oneway_.nil?
101
+ end
102
+
103
+ ::Thrift::Struct.generate_accessors self
104
+ ::Thrift.register_struct_type self
105
+ end
106
+
107
+ class ServiceDefinition
108
+ include ::Thrift::Struct, ::Thrift::Struct_Union
109
+
110
+ NAME = 'ServiceDefinition'.freeze
111
+ NAMESPACE = 'types.service_definition'.freeze
112
+
113
+ LEGACY_ANNOTATIONS = {
114
+ }.freeze
115
+
116
+ STRUCTURED_ANNOTATIONS = [
117
+ ].freeze
118
+
119
+ THRIFT_FIELD_INDEX_ANNOTATION = 1
120
+ THRIFT_FIELD_INDEX_EXTENDS_ = 2
121
+ THRIFT_FIELD_INDEX_FUNCTIONS = 3
122
+
123
+ THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS = {
124
+ }.freeze
125
+
126
+ THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS = [
127
+ ].freeze
128
+
129
+ THRIFT_FIELD_EXTENDS__LEGACY_ANNOTATIONS = {
130
+ }.freeze
131
+
132
+ THRIFT_FIELD_EXTENDS__STRUCTURED_ANNOTATIONS = [
133
+ ].freeze
134
+
135
+ THRIFT_FIELD_FUNCTIONS_LEGACY_ANNOTATIONS = {
136
+ }.freeze
137
+
138
+ THRIFT_FIELD_FUNCTIONS_STRUCTURED_ANNOTATIONS = [
139
+ ].freeze
140
+
141
+ FIELDS = {
142
+ THRIFT_FIELD_INDEX_ANNOTATION => {type: ::Thrift::Types::STRUCT, name: 'annotation', class: ::Thrift::Types::Annotation_definition::AnnotationDefinition, legacy_annotations: THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS},
143
+ THRIFT_FIELD_INDEX_EXTENDS_ => {type: ::Thrift::Types::STRUCT, name: 'extends_', class: ::Thrift::Thrift::Types::Core::Reference, optional: true, legacy_annotations: THRIFT_FIELD_EXTENDS__LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_EXTENDS__STRUCTURED_ANNOTATIONS},
144
+ THRIFT_FIELD_INDEX_FUNCTIONS => {type: ::Thrift::Types::LIST, name: 'functions', element: {type: ::Thrift::Types::STRUCT, class: ::Thrift::Types::Service_definition::FunctionDefinition}, legacy_annotations: THRIFT_FIELD_FUNCTIONS_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_FUNCTIONS_STRUCTURED_ANNOTATIONS}
145
+ }.freeze
146
+
147
+ def struct_fields; FIELDS; end
148
+
149
+ def validate
150
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field annotation is unset!') unless @annotation
151
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field functions is unset!') unless @functions
152
+ end
153
+
154
+ ::Thrift::Struct.generate_accessors self
155
+ ::Thrift.register_struct_type self
156
+ end
157
+
158
+ end
159
+ end
160
+ end
@@ -0,0 +1,15 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.7.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+ require 'thrift/types/struct_definition/struct_definition_types'
9
+
10
+ module Thrift
11
+ module Types
12
+ module Struct_definition
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,157 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.7.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+ require 'thrift/types/annotation_definition/annotation_definition_types'
9
+ require 'thrift/types/type_definition/type_definition_types'
10
+
11
+
12
+ module Thrift
13
+ module Types
14
+ module Struct_definition
15
+ module Requiredness
16
+ Unknown = 0
17
+ Optional = 1
18
+ Required = 2
19
+ VALUE_MAP = {0 => "Unknown", 1 => "Optional", 2 => "Required"}
20
+ VALID_VALUES = Set.new([Unknown, Optional, Required]).freeze
21
+ end
22
+
23
+ module StructKind
24
+ Unknown = 0
25
+ Struct = 1
26
+ Exception = 2
27
+ Union = 3
28
+ VALUE_MAP = {0 => "Unknown", 1 => "Struct", 2 => "Exception", 3 => "Union"}
29
+ VALID_VALUES = Set.new([Unknown, Struct, Exception, Union]).freeze
30
+ end
31
+
32
+ class FieldDefinition; end
33
+
34
+ class StructDefinition; end
35
+
36
+ class FieldDefinition
37
+ include ::Thrift::Struct, ::Thrift::Struct_Union
38
+
39
+ NAME = 'FieldDefinition'.freeze
40
+ NAMESPACE = 'types.struct_definition'.freeze
41
+
42
+ LEGACY_ANNOTATIONS = {
43
+ }.freeze
44
+
45
+ STRUCTURED_ANNOTATIONS = [
46
+ ].freeze
47
+
48
+ THRIFT_FIELD_INDEX_ANNOTATION = 1
49
+ THRIFT_FIELD_INDEX_ID = 2
50
+ THRIFT_FIELD_INDEX_TYPE = 3
51
+ THRIFT_FIELD_INDEX_REQUIREDNESS = 4
52
+
53
+ THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS = {
54
+ }.freeze
55
+
56
+ THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS = [
57
+ ].freeze
58
+
59
+ THRIFT_FIELD_ID_LEGACY_ANNOTATIONS = {
60
+ }.freeze
61
+
62
+ THRIFT_FIELD_ID_STRUCTURED_ANNOTATIONS = [
63
+ ].freeze
64
+
65
+ THRIFT_FIELD_TYPE_LEGACY_ANNOTATIONS = {
66
+ }.freeze
67
+
68
+ THRIFT_FIELD_TYPE_STRUCTURED_ANNOTATIONS = [
69
+ ].freeze
70
+
71
+ THRIFT_FIELD_REQUIREDNESS_LEGACY_ANNOTATIONS = {
72
+ }.freeze
73
+
74
+ THRIFT_FIELD_REQUIREDNESS_STRUCTURED_ANNOTATIONS = [
75
+ ].freeze
76
+
77
+ FIELDS = {
78
+ THRIFT_FIELD_INDEX_ANNOTATION => {type: ::Thrift::Types::STRUCT, name: 'annotation', class: ::Thrift::Types::Annotation_definition::AnnotationDefinition, legacy_annotations: THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS},
79
+ THRIFT_FIELD_INDEX_ID => {type: ::Thrift::Types::I32, name: 'id', legacy_annotations: THRIFT_FIELD_ID_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ID_STRUCTURED_ANNOTATIONS},
80
+ THRIFT_FIELD_INDEX_TYPE => {type: ::Thrift::Types::STRUCT, name: 'type', class: ::Thrift::Types::Type_definition::TypeDefinition, legacy_annotations: THRIFT_FIELD_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_TYPE_STRUCTURED_ANNOTATIONS},
81
+ THRIFT_FIELD_INDEX_REQUIREDNESS => {type: ::Thrift::Types::I32, name: 'requiredness', enum_class: ::Thrift::Types::Struct_definition::Requiredness, legacy_annotations: THRIFT_FIELD_REQUIREDNESS_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_REQUIREDNESS_STRUCTURED_ANNOTATIONS}
82
+ }.freeze
83
+
84
+ def struct_fields; FIELDS; end
85
+
86
+ def validate
87
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field annotation is unset!') unless @annotation
88
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field id is unset!') unless @id
89
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field type is unset!') unless @type
90
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field requiredness is unset!') unless @requiredness
91
+ unless @requiredness.nil? || ::Thrift::Types::Struct_definition::Requiredness::VALID_VALUES.include?(@requiredness)
92
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field requiredness!')
93
+ end
94
+ end
95
+
96
+ ::Thrift::Struct.generate_accessors self
97
+ ::Thrift.register_struct_type self
98
+ end
99
+
100
+ class StructDefinition
101
+ include ::Thrift::Struct, ::Thrift::Struct_Union
102
+
103
+ NAME = 'StructDefinition'.freeze
104
+ NAMESPACE = 'types.struct_definition'.freeze
105
+
106
+ LEGACY_ANNOTATIONS = {
107
+ }.freeze
108
+
109
+ STRUCTURED_ANNOTATIONS = [
110
+ ].freeze
111
+
112
+ THRIFT_FIELD_INDEX_ANNOTATION = 1
113
+ THRIFT_FIELD_INDEX_KIND = 2
114
+ THRIFT_FIELD_INDEX_FIELDS = 3
115
+
116
+ THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS = {
117
+ }.freeze
118
+
119
+ THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS = [
120
+ ].freeze
121
+
122
+ THRIFT_FIELD_KIND_LEGACY_ANNOTATIONS = {
123
+ }.freeze
124
+
125
+ THRIFT_FIELD_KIND_STRUCTURED_ANNOTATIONS = [
126
+ ].freeze
127
+
128
+ THRIFT_FIELD_FIELDS_LEGACY_ANNOTATIONS = {
129
+ }.freeze
130
+
131
+ THRIFT_FIELD_FIELDS_STRUCTURED_ANNOTATIONS = [
132
+ ].freeze
133
+
134
+ FIELDS = {
135
+ THRIFT_FIELD_INDEX_ANNOTATION => {type: ::Thrift::Types::STRUCT, name: 'annotation', class: ::Thrift::Types::Annotation_definition::AnnotationDefinition, legacy_annotations: THRIFT_FIELD_ANNOTATION_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ANNOTATION_STRUCTURED_ANNOTATIONS},
136
+ THRIFT_FIELD_INDEX_KIND => {type: ::Thrift::Types::I32, name: 'kind', enum_class: ::Thrift::Types::Struct_definition::StructKind, legacy_annotations: THRIFT_FIELD_KIND_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_KIND_STRUCTURED_ANNOTATIONS},
137
+ THRIFT_FIELD_INDEX_FIELDS => {type: ::Thrift::Types::LIST, name: 'fields', element: {type: ::Thrift::Types::STRUCT, class: ::Thrift::Types::Struct_definition::FieldDefinition}, legacy_annotations: THRIFT_FIELD_FIELDS_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_FIELDS_STRUCTURED_ANNOTATIONS}
138
+ }.freeze
139
+
140
+ def struct_fields; FIELDS; end
141
+
142
+ def validate
143
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field annotation is unset!') unless @annotation
144
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field kind is unset!') unless @kind
145
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field fields is unset!') unless @fields
146
+ unless @kind.nil? || ::Thrift::Types::Struct_definition::StructKind::VALID_VALUES.include?(@kind)
147
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field kind!')
148
+ end
149
+ end
150
+
151
+ ::Thrift::Struct.generate_accessors self
152
+ ::Thrift.register_struct_type self
153
+ end
154
+
155
+ end
156
+ end
157
+ end
@@ -0,0 +1,15 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.7.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+ require 'thrift/types/type_definition/type_definition_types'
9
+
10
+ module Thrift
11
+ module Types
12
+ module Type_definition
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,242 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.7.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+ require 'thrift/thrift/types/core/core_types'
9
+ require 'thrift/types/annotation_definition/annotation_definition_types'
10
+
11
+
12
+ module Thrift
13
+ module Types
14
+ module Type_definition
15
+ module ScalarType
16
+ Unknown = 0
17
+ String = 1
18
+ Binary = 2
19
+ Bool = 3
20
+ I16 = 4
21
+ I32 = 5
22
+ I64 = 6
23
+ Double = 7
24
+ I8 = 8
25
+ Void = 9
26
+ VALUE_MAP = {0 => "Unknown", 1 => "String", 2 => "Binary", 3 => "Bool", 4 => "I16", 5 => "I32", 6 => "I64", 7 => "Double", 8 => "I8", 9 => "Void"}
27
+ VALID_VALUES = Set.new([Unknown, String, Binary, Bool, I16, I32, I64, Double, I8, Void]).freeze
28
+ end
29
+
30
+ class ListTypeDefinition; end
31
+
32
+ class MapTypeDefinition; end
33
+
34
+ class SetTypeDefinition; end
35
+
36
+ class TypeDefinition < ::Thrift::Union; end
37
+
38
+ class ListTypeDefinition
39
+ include ::Thrift::Struct, ::Thrift::Struct_Union
40
+
41
+ NAME = 'ListTypeDefinition'.freeze
42
+ NAMESPACE = 'types.type_definition'.freeze
43
+
44
+ LEGACY_ANNOTATIONS = {
45
+ }.freeze
46
+
47
+ STRUCTURED_ANNOTATIONS = [
48
+ ].freeze
49
+
50
+ THRIFT_FIELD_INDEX_ELEMENT_TYPE = 1
51
+
52
+ THRIFT_FIELD_ELEMENT_TYPE_LEGACY_ANNOTATIONS = {
53
+ }.freeze
54
+
55
+ THRIFT_FIELD_ELEMENT_TYPE_STRUCTURED_ANNOTATIONS = [
56
+ ].freeze
57
+
58
+ FIELDS = {
59
+ THRIFT_FIELD_INDEX_ELEMENT_TYPE => {type: ::Thrift::Types::STRUCT, name: 'element_type', class: ::Thrift::Types::Type_definition::TypeDefinition, legacy_annotations: THRIFT_FIELD_ELEMENT_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ELEMENT_TYPE_STRUCTURED_ANNOTATIONS}
60
+ }.freeze
61
+
62
+ def struct_fields; FIELDS; end
63
+
64
+ def validate
65
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field element_type is unset!') unless @element_type
66
+ end
67
+
68
+ ::Thrift::Struct.generate_accessors self
69
+ ::Thrift.register_struct_type self
70
+ end
71
+
72
+ class MapTypeDefinition
73
+ include ::Thrift::Struct, ::Thrift::Struct_Union
74
+
75
+ NAME = 'MapTypeDefinition'.freeze
76
+ NAMESPACE = 'types.type_definition'.freeze
77
+
78
+ LEGACY_ANNOTATIONS = {
79
+ }.freeze
80
+
81
+ STRUCTURED_ANNOTATIONS = [
82
+ ].freeze
83
+
84
+ THRIFT_FIELD_INDEX_KEY_TYPE = 1
85
+ THRIFT_FIELD_INDEX_VALUE_TYPE = 2
86
+
87
+ THRIFT_FIELD_KEY_TYPE_LEGACY_ANNOTATIONS = {
88
+ }.freeze
89
+
90
+ THRIFT_FIELD_KEY_TYPE_STRUCTURED_ANNOTATIONS = [
91
+ ].freeze
92
+
93
+ THRIFT_FIELD_VALUE_TYPE_LEGACY_ANNOTATIONS = {
94
+ }.freeze
95
+
96
+ THRIFT_FIELD_VALUE_TYPE_STRUCTURED_ANNOTATIONS = [
97
+ ].freeze
98
+
99
+ FIELDS = {
100
+ THRIFT_FIELD_INDEX_KEY_TYPE => {type: ::Thrift::Types::STRUCT, name: 'key_type', class: ::Thrift::Types::Type_definition::TypeDefinition, legacy_annotations: THRIFT_FIELD_KEY_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_KEY_TYPE_STRUCTURED_ANNOTATIONS},
101
+ THRIFT_FIELD_INDEX_VALUE_TYPE => {type: ::Thrift::Types::STRUCT, name: 'value_type', class: ::Thrift::Types::Type_definition::TypeDefinition, legacy_annotations: THRIFT_FIELD_VALUE_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_VALUE_TYPE_STRUCTURED_ANNOTATIONS}
102
+ }.freeze
103
+
104
+ def struct_fields; FIELDS; end
105
+
106
+ def validate
107
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field key_type is unset!') unless @key_type
108
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field value_type is unset!') unless @value_type
109
+ end
110
+
111
+ ::Thrift::Struct.generate_accessors self
112
+ ::Thrift.register_struct_type self
113
+ end
114
+
115
+ class SetTypeDefinition
116
+ include ::Thrift::Struct, ::Thrift::Struct_Union
117
+
118
+ NAME = 'SetTypeDefinition'.freeze
119
+ NAMESPACE = 'types.type_definition'.freeze
120
+
121
+ LEGACY_ANNOTATIONS = {
122
+ }.freeze
123
+
124
+ STRUCTURED_ANNOTATIONS = [
125
+ ].freeze
126
+
127
+ THRIFT_FIELD_INDEX_ELEMENT_TYPE = 1
128
+
129
+ THRIFT_FIELD_ELEMENT_TYPE_LEGACY_ANNOTATIONS = {
130
+ }.freeze
131
+
132
+ THRIFT_FIELD_ELEMENT_TYPE_STRUCTURED_ANNOTATIONS = [
133
+ ].freeze
134
+
135
+ FIELDS = {
136
+ THRIFT_FIELD_INDEX_ELEMENT_TYPE => {type: ::Thrift::Types::STRUCT, name: 'element_type', class: ::Thrift::Types::Type_definition::TypeDefinition, legacy_annotations: THRIFT_FIELD_ELEMENT_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_ELEMENT_TYPE_STRUCTURED_ANNOTATIONS}
137
+ }.freeze
138
+
139
+ def struct_fields; FIELDS; end
140
+
141
+ def validate
142
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field element_type is unset!') unless @element_type
143
+ end
144
+
145
+ ::Thrift::Struct.generate_accessors self
146
+ ::Thrift.register_struct_type self
147
+ end
148
+
149
+ class TypeDefinition < ::Thrift::Union
150
+ include ::Thrift::Struct_Union
151
+
152
+ NAME = 'TypeDefinition'.freeze
153
+ NAMESPACE = 'types.type_definition'.freeze
154
+
155
+ LEGACY_ANNOTATIONS = {
156
+ }.freeze
157
+
158
+ STRUCTURED_ANNOTATIONS = [
159
+ ].freeze
160
+
161
+ class << self
162
+ def scalar_type(val)
163
+ TypeDefinition.new(:scalar_type, val)
164
+ end
165
+
166
+ def list_type(val)
167
+ TypeDefinition.new(:list_type, val)
168
+ end
169
+
170
+ def map_type(val)
171
+ TypeDefinition.new(:map_type, val)
172
+ end
173
+
174
+ def set_type(val)
175
+ TypeDefinition.new(:set_type, val)
176
+ end
177
+
178
+ def reference_type(val)
179
+ TypeDefinition.new(:reference_type, val)
180
+ end
181
+ end
182
+
183
+ THRIFT_FIELD_INDEX_SCALAR_TYPE = 1
184
+ THRIFT_FIELD_INDEX_LIST_TYPE = 2
185
+ THRIFT_FIELD_INDEX_MAP_TYPE = 3
186
+ THRIFT_FIELD_INDEX_SET_TYPE = 4
187
+ THRIFT_FIELD_INDEX_REFERENCE_TYPE = 8
188
+
189
+ THRIFT_FIELD_SCALAR_TYPE_LEGACY_ANNOTATIONS = {
190
+ }.freeze
191
+
192
+ THRIFT_FIELD_SCALAR_TYPE_STRUCTURED_ANNOTATIONS = [
193
+ ].freeze
194
+
195
+ THRIFT_FIELD_LIST_TYPE_LEGACY_ANNOTATIONS = {
196
+ }.freeze
197
+
198
+ THRIFT_FIELD_LIST_TYPE_STRUCTURED_ANNOTATIONS = [
199
+ ].freeze
200
+
201
+ THRIFT_FIELD_MAP_TYPE_LEGACY_ANNOTATIONS = {
202
+ }.freeze
203
+
204
+ THRIFT_FIELD_MAP_TYPE_STRUCTURED_ANNOTATIONS = [
205
+ ].freeze
206
+
207
+ THRIFT_FIELD_SET_TYPE_LEGACY_ANNOTATIONS = {
208
+ }.freeze
209
+
210
+ THRIFT_FIELD_SET_TYPE_STRUCTURED_ANNOTATIONS = [
211
+ ].freeze
212
+
213
+ THRIFT_FIELD_REFERENCE_TYPE_LEGACY_ANNOTATIONS = {
214
+ }.freeze
215
+
216
+ THRIFT_FIELD_REFERENCE_TYPE_STRUCTURED_ANNOTATIONS = [
217
+ ].freeze
218
+
219
+ FIELDS = {
220
+ THRIFT_FIELD_INDEX_SCALAR_TYPE => {type: ::Thrift::Types::I32, name: 'scalar_type', optional: true, enum_class: ::Thrift::Types::Type_definition::ScalarType, legacy_annotations: THRIFT_FIELD_SCALAR_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_SCALAR_TYPE_STRUCTURED_ANNOTATIONS},
221
+ THRIFT_FIELD_INDEX_LIST_TYPE => {type: ::Thrift::Types::STRUCT, name: 'list_type', class: ::Thrift::Types::Type_definition::ListTypeDefinition, optional: true, legacy_annotations: THRIFT_FIELD_LIST_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_LIST_TYPE_STRUCTURED_ANNOTATIONS},
222
+ THRIFT_FIELD_INDEX_MAP_TYPE => {type: ::Thrift::Types::STRUCT, name: 'map_type', class: ::Thrift::Types::Type_definition::MapTypeDefinition, optional: true, legacy_annotations: THRIFT_FIELD_MAP_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_MAP_TYPE_STRUCTURED_ANNOTATIONS},
223
+ THRIFT_FIELD_INDEX_SET_TYPE => {type: ::Thrift::Types::STRUCT, name: 'set_type', class: ::Thrift::Types::Type_definition::SetTypeDefinition, optional: true, legacy_annotations: THRIFT_FIELD_SET_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_SET_TYPE_STRUCTURED_ANNOTATIONS},
224
+ THRIFT_FIELD_INDEX_REFERENCE_TYPE => {type: ::Thrift::Types::STRUCT, name: 'reference_type', class: ::Thrift::Thrift::Types::Core::Reference, optional: true, legacy_annotations: THRIFT_FIELD_REFERENCE_TYPE_LEGACY_ANNOTATIONS, structured_annotations: THRIFT_FIELD_REFERENCE_TYPE_STRUCTURED_ANNOTATIONS}
225
+ }.freeze
226
+
227
+ def struct_fields; FIELDS; end
228
+
229
+ def validate
230
+ raise(StandardError, 'Union fields are not set.') if get_set_field.nil? || get_value.nil?
231
+ if get_set_field == :scalar_type
232
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field scalar_type!') unless ::Thrift::Types::Type_definition::ScalarType::VALID_VALUES.include?(get_value)
233
+ end
234
+ end
235
+
236
+ ::Thrift::Union.generate_accessors self
237
+ ::Thrift.register_struct_type self
238
+ end
239
+
240
+ end
241
+ end
242
+ end
@@ -1,5 +1,5 @@
1
1
  #
2
- # Autogenerated by Thrift Compiler (2.5.4-upfluence)
2
+ # Autogenerated by Thrift Compiler (2.7.0-upfluence)
3
3
  #
4
4
  # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
5
  #