upfluence-thrift 2.3.0 → 2.4.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 (34) hide show
  1. checksums.yaml +4 -4
  2. data/benchmark/gen-rb/benchmark_constants.rb +11 -0
  3. data/benchmark/gen-rb/benchmark_service.rb +106 -0
  4. data/benchmark/gen-rb/benchmark_types.rb +10 -0
  5. data/ext/extconf.rb +1 -4
  6. data/lib/thrift/protocol/json_protocol.rb +65 -1
  7. data/spec/gen-rb/base/base_service.rb +106 -0
  8. data/spec/gen-rb/base/base_service_constants.rb +11 -0
  9. data/spec/gen-rb/base/base_service_types.rb +33 -0
  10. data/spec/gen-rb/extended/extended_service.rb +103 -0
  11. data/spec/gen-rb/extended/extended_service_constants.rb +11 -0
  12. data/spec/gen-rb/extended/extended_service_types.rb +12 -0
  13. data/spec/gen-rb/flat/namespaced_nonblocking_service.rb +343 -0
  14. data/spec/gen-rb/flat/referenced_constants.rb +11 -0
  15. data/spec/gen-rb/flat/referenced_types.rb +17 -0
  16. data/spec/gen-rb/flat/thrift_namespaced_spec_constants.rb +11 -0
  17. data/spec/gen-rb/flat/thrift_namespaced_spec_types.rb +35 -0
  18. data/spec/gen-rb/namespaced_spec_namespace/namespaced_nonblocking_service.rb +343 -0
  19. data/spec/gen-rb/namespaced_spec_namespace/thrift_namespaced_spec_constants.rb +11 -0
  20. data/spec/gen-rb/namespaced_spec_namespace/thrift_namespaced_spec_types.rb +35 -0
  21. data/spec/gen-rb/nonblocking_service.rb +343 -0
  22. data/spec/gen-rb/other_namespace/referenced_constants.rb +11 -0
  23. data/spec/gen-rb/other_namespace/referenced_types.rb +17 -0
  24. data/spec/gen-rb/thrift_spec_constants.rb +11 -0
  25. data/spec/gen-rb/thrift_spec_types.rb +699 -0
  26. data/spec/json_protocol_spec.rb +17 -0
  27. data/test/debug_proto/gen-rb/debug_proto_test_constants.rb +274 -0
  28. data/test/debug_proto/gen-rb/debug_proto_test_types.rb +936 -0
  29. data/test/debug_proto/gen-rb/empty_service.rb +39 -0
  30. data/test/debug_proto/gen-rb/inherited.rb +105 -0
  31. data/test/debug_proto/gen-rb/reverse_order_service.rb +107 -0
  32. data/test/debug_proto/gen-rb/service_for_exception_with_a_map.rb +106 -0
  33. data/test/debug_proto/gen-rb/srv.rb +410 -0
  34. metadata +150 -92
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ea7054176b376c94f565f2a9404599502b35853c1fcba1735d7153a16ccb1fa7
4
- data.tar.gz: d90c18cf190256af2d4a0240bb4867bcf7b6e53b2f29f021e90e9d8eb8976a4e
3
+ metadata.gz: c2a5d582754f7ba1078d44e62f4230d522de92b033172de5546f4b224d4f59f9
4
+ data.tar.gz: d2c0359abdd5dd5885930a854bb58a0280c28d4a8cfcd04885d6058d069b672f
5
5
  SHA512:
6
- metadata.gz: 41c69f0f716a5f5be7d9ee0a8e06c5d66463dc5ba5a7714c3f6e8db51248933d06d78c0b32b7217112358a0dcfc9e973195efd412e6b2cac526134074af228d7
7
- data.tar.gz: 0c6b50c4e0b91776991f82f4b80d053685a1f9c09e16ef5bb1efea0dbec866ebde4dc1c2a0dac26cd1c05d9f1d7c7afb3131078d47f2380e963767c4c4c7e78e
6
+ metadata.gz: 802f5da057755d933d88fce3e065f5af8dd172b775ba53f3f512736333ff5c9ca2db2547c269c0156c42c901576119290a43e94fa66db6aa8935fd968571619b
7
+ data.tar.gz: cb47abbb20ed8078060d11e572358913a2807a4b5c0723a53f526446425505672d179a8ea9c1e0c832e631ce49e972794b2a4c9cd61bfaf46b9a42ff0cd6f47b
@@ -0,0 +1,11 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'benchmark_types'
9
+
10
+ module ThriftBenchmark
11
+ end
@@ -0,0 +1,106 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'benchmark_types'
9
+
10
+ module ThriftBenchmark
11
+ module BenchmarkService
12
+ SERVICE = 'BenchmarkService'.freeze
13
+ NAMESPACE = ''.freeze
14
+
15
+ class Client
16
+ def initialize(client)
17
+ @client = ::Thrift.build_client(client)
18
+ end
19
+
20
+ def self.from_provider(provider)
21
+ Client.new(provider.build(NAMESPACE, SERVICE))
22
+ end
23
+
24
+ def fibonacci(n)
25
+ result = @client.call_binary(
26
+ 'fibonacci',
27
+ Fibonacci_args.new(n: n),
28
+ Fibonacci_result
29
+ )
30
+
31
+ return result.success unless result.success.nil?
32
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'fibonacci failed: unknown result')
33
+ result
34
+ end
35
+
36
+ end
37
+
38
+ class Processor
39
+ include ::Thrift::Processor
40
+
41
+ def self.from_provider(handler, provider)
42
+ provider.build(NAMESPACE, SERVICE, Processor, handler)
43
+ end
44
+
45
+ def process_fibonacci(seqid, iprot, oprot)
46
+ args = read_args(iprot, Fibonacci_args)
47
+ result = @middleware.handle_binary('fibonacci', args) do |args|
48
+ result = Fibonacci_result.new()
49
+ result.success = @handler.fibonacci(args.n)
50
+ result
51
+ end
52
+
53
+ write_result(result, oprot, 'fibonacci', seqid)
54
+ end
55
+
56
+ end
57
+
58
+ # HELPER FUNCTIONS AND STRUCTURES
59
+
60
+ class Fibonacci_args
61
+ include ::Thrift::Struct, ::Thrift::Struct_Union
62
+
63
+ NAME = 'fibonacci_args'.freeze
64
+ NAMESPACE = ''.freeze
65
+
66
+ THRIFT_FIELD_INDEX_N = 1
67
+
68
+ FIELDS = {
69
+ THRIFT_FIELD_INDEX_N => {type: ::Thrift::Types::BYTE, name: 'n'}
70
+ }
71
+
72
+ def struct_fields; FIELDS; end
73
+
74
+ def validate
75
+ end
76
+
77
+ ::Thrift::Struct.generate_accessors self
78
+ ::Thrift.register_struct_type self
79
+ end
80
+
81
+ class Fibonacci_result
82
+ include ::Thrift::Struct, ::Thrift::Struct_Union
83
+
84
+ NAME = 'fibonacci_result'.freeze
85
+ NAMESPACE = ''.freeze
86
+
87
+ THRIFT_FIELD_INDEX_SUCCESS = 0
88
+
89
+ FIELDS = {
90
+ THRIFT_FIELD_INDEX_SUCCESS => {type: ::Thrift::Types::I32, name: 'success'}
91
+ }
92
+
93
+ def struct_fields; FIELDS; end
94
+
95
+ def validate
96
+ end
97
+
98
+ ::Thrift::Struct.generate_accessors self
99
+ ::Thrift.register_struct_type self
100
+ end
101
+
102
+ ::Thrift.register_service_type(self)
103
+
104
+ end
105
+
106
+ end
@@ -0,0 +1,10 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+
9
+ module ThriftBenchmark
10
+ end
data/ext/extconf.rb CHANGED
@@ -23,10 +23,7 @@ else
23
23
  require 'mkmf'
24
24
  require 'rbconfig'
25
25
 
26
- $ARCH_FLAGS = RbConfig::CONFIG['CFLAGS'].scan( /(-arch )(\S+)/ ).map{|x,y| x + y + ' ' }.join('')
27
-
28
-
29
- $CFLAGS = "-fsigned-char -g -O2 -Wall -Werror " + $ARCH_FLAGS
26
+ $CFLAGS += " -fsigned-char"
30
27
 
31
28
  have_func("strlcpy", "string.h")
32
29
 
@@ -761,9 +761,73 @@ module Thrift
761
761
  end
762
762
  end
763
763
 
764
+ class SimpleJsonProtocol < JsonProtocol
765
+ READ_EXCEPTION = ProtocolException.new(
766
+ ProtocolException::NOT_IMPLEMENTED,
767
+ 'op not implemented'
768
+ )
769
+
770
+ def write_message_begin(name, _type, _seqid)
771
+ write_json_object_start
772
+ write_json_string(name)
773
+ end
774
+
775
+ def read_message_begin
776
+ raise READ_EXCEPTION
777
+ end
778
+
779
+ def write_message_end
780
+ write_json_object_end
781
+ end
782
+
783
+ def write_field_begin(name, _type, _id)
784
+ write_json_string(name)
785
+ end
786
+
787
+ def read_field_begin
788
+ raise READ_EXCEPTION
789
+ end
790
+
791
+ def write_field_end; end
792
+
793
+ def write_map_begin(_ktype, _vtype, _size)
794
+ write_json_object_start
795
+ end
796
+
797
+ def read_map_begin
798
+ raise READ_EXCEPTION
799
+ end
800
+
801
+ def write_map_end
802
+ write_json_object_end
803
+ end
804
+
805
+ def write_list_begin(_etype, _size)
806
+ write_json_array_start
807
+ end
808
+
809
+ def read_list_begin
810
+ raise READ_EXCEPTION
811
+ end
812
+
813
+ def write_set_begin(_etype, _size)
814
+ write_json_array_start
815
+ end
816
+
817
+ def read_set_begin
818
+ raise READ_EXCEPTION
819
+ end
820
+ end
821
+
822
+ class SimpleJsonProtocolFactory < BaseProtocolFactory
823
+ def get_protocol(trans)
824
+ Thrift::SimpleJsonProtocol.new(trans)
825
+ end
826
+ end
827
+
764
828
  class JsonProtocolFactory < BaseProtocolFactory
765
829
  def get_protocol(trans)
766
- return Thrift::JsonProtocol.new(trans)
830
+ Thrift::JsonProtocol.new(trans)
767
831
  end
768
832
  end
769
833
  end
@@ -0,0 +1,106 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'base/base_service_types'
9
+
10
+ module Base
11
+ module BaseService
12
+ SERVICE = 'BaseService'.freeze
13
+ NAMESPACE = ''.freeze
14
+
15
+ class Client
16
+ def initialize(client)
17
+ @client = ::Thrift.build_client(client)
18
+ end
19
+
20
+ def self.from_provider(provider)
21
+ Client.new(provider.build(NAMESPACE, SERVICE))
22
+ end
23
+
24
+ def greeting(english)
25
+ result = @client.call_binary(
26
+ 'greeting',
27
+ Greeting_args.new(english: english),
28
+ Greeting_result
29
+ )
30
+
31
+ return result.success unless result.success.nil?
32
+ raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'greeting failed: unknown result')
33
+ result
34
+ end
35
+
36
+ end
37
+
38
+ class Processor
39
+ include ::Thrift::Processor
40
+
41
+ def self.from_provider(handler, provider)
42
+ provider.build(NAMESPACE, SERVICE, Processor, handler)
43
+ end
44
+
45
+ def process_greeting(seqid, iprot, oprot)
46
+ args = read_args(iprot, Greeting_args)
47
+ result = @middleware.handle_binary('greeting', args) do |args|
48
+ result = Greeting_result.new()
49
+ result.success = @handler.greeting(args.english)
50
+ result
51
+ end
52
+
53
+ write_result(result, oprot, 'greeting', seqid)
54
+ end
55
+
56
+ end
57
+
58
+ # HELPER FUNCTIONS AND STRUCTURES
59
+
60
+ class Greeting_args
61
+ include ::Thrift::Struct, ::Thrift::Struct_Union
62
+
63
+ NAME = 'greeting_args'.freeze
64
+ NAMESPACE = ''.freeze
65
+
66
+ THRIFT_FIELD_INDEX_ENGLISH = 1
67
+
68
+ FIELDS = {
69
+ THRIFT_FIELD_INDEX_ENGLISH => {type: ::Thrift::Types::BOOL, name: 'english'}
70
+ }
71
+
72
+ def struct_fields; FIELDS; end
73
+
74
+ def validate
75
+ end
76
+
77
+ ::Thrift::Struct.generate_accessors self
78
+ ::Thrift.register_struct_type self
79
+ end
80
+
81
+ class Greeting_result
82
+ include ::Thrift::Struct, ::Thrift::Struct_Union
83
+
84
+ NAME = 'greeting_result'.freeze
85
+ NAMESPACE = ''.freeze
86
+
87
+ THRIFT_FIELD_INDEX_SUCCESS = 0
88
+
89
+ FIELDS = {
90
+ THRIFT_FIELD_INDEX_SUCCESS => {type: ::Thrift::Types::STRUCT, name: 'success', class: ::Base::Hello}
91
+ }
92
+
93
+ def struct_fields; FIELDS; end
94
+
95
+ def validate
96
+ end
97
+
98
+ ::Thrift::Struct.generate_accessors self
99
+ ::Thrift.register_struct_type self
100
+ end
101
+
102
+ ::Thrift.register_service_type(self)
103
+
104
+ end
105
+
106
+ end
@@ -0,0 +1,11 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'base/base_service_types'
9
+
10
+ module Base
11
+ end
@@ -0,0 +1,33 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.0-upfluence)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'thrift'
8
+
9
+ module Base
10
+ class Hello; end
11
+
12
+ class Hello
13
+ include ::Thrift::Struct, ::Thrift::Struct_Union
14
+
15
+ NAME = 'Hello'.freeze
16
+ NAMESPACE = ''.freeze
17
+
18
+ THRIFT_FIELD_INDEX_GREETING = 1
19
+
20
+ FIELDS = {
21
+ THRIFT_FIELD_INDEX_GREETING => {type: ::Thrift::Types::STRING, name: 'greeting', default: %q"hello world"}
22
+ }
23
+
24
+ def struct_fields; FIELDS; end
25
+
26
+ def validate
27
+ end
28
+
29
+ ::Thrift::Struct.generate_accessors self
30
+ ::Thrift.register_struct_type self
31
+ end
32
+
33
+ end
@@ -0,0 +1,103 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'base/base_service'
9
+ require 'extended/extended_service_types'
10
+
11
+ module Extended
12
+ module ExtendedService
13
+ SERVICE = 'ExtendedService'.freeze
14
+ NAMESPACE = ''.freeze
15
+
16
+ class Client < ::Base::BaseService::Client
17
+ def initialize(client)
18
+ @client = ::Thrift.build_client(client)
19
+ end
20
+
21
+ def self.from_provider(provider)
22
+ Client.new(provider.build(NAMESPACE, SERVICE))
23
+ end
24
+
25
+ def ping()
26
+ result = @client.call_binary(
27
+ 'ping',
28
+ Ping_args.new(),
29
+ Ping_result
30
+ )
31
+
32
+ nil
33
+ end
34
+
35
+ end
36
+
37
+ class Processor < ::Base::BaseService::Processor
38
+ include ::Thrift::Processor
39
+
40
+ def self.from_provider(handler, provider)
41
+ provider.build(NAMESPACE, SERVICE, Processor, handler)
42
+ end
43
+
44
+ def process_ping(seqid, iprot, oprot)
45
+ args = read_args(iprot, Ping_args)
46
+ result = @middleware.handle_binary('ping', args) do |args|
47
+ result = Ping_result.new()
48
+ @handler.ping()
49
+ result
50
+ end
51
+
52
+ write_result(result, oprot, 'ping', seqid)
53
+ end
54
+
55
+ end
56
+
57
+ # HELPER FUNCTIONS AND STRUCTURES
58
+
59
+ class Ping_args
60
+ include ::Thrift::Struct, ::Thrift::Struct_Union
61
+
62
+ NAME = 'ping_args'.freeze
63
+ NAMESPACE = ''.freeze
64
+
65
+
66
+ FIELDS = {
67
+
68
+ }
69
+
70
+ def struct_fields; FIELDS; end
71
+
72
+ def validate
73
+ end
74
+
75
+ ::Thrift::Struct.generate_accessors self
76
+ ::Thrift.register_struct_type self
77
+ end
78
+
79
+ class Ping_result
80
+ include ::Thrift::Struct, ::Thrift::Struct_Union
81
+
82
+ NAME = 'ping_result'.freeze
83
+ NAMESPACE = ''.freeze
84
+
85
+
86
+ FIELDS = {
87
+
88
+ }
89
+
90
+ def struct_fields; FIELDS; end
91
+
92
+ def validate
93
+ end
94
+
95
+ ::Thrift::Struct.generate_accessors self
96
+ ::Thrift.register_struct_type self
97
+ end
98
+
99
+ ::Thrift.register_service_type(self)
100
+
101
+ end
102
+
103
+ end
@@ -0,0 +1,11 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'extended/extended_service_types'
9
+
10
+ module Extended
11
+ end
@@ -0,0 +1,12 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (2.4.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 'base/base_service_types'
9
+
10
+
11
+ module Extended
12
+ end