upfluence-thrift 1.0.12 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/benchmark/gen-rb/benchmark_constants.rb +1 -1
- data/benchmark/gen-rb/benchmark_service.rb +21 -10
- data/benchmark/gen-rb/benchmark_types.rb +1 -1
- data/lib/thrift/server/rack_application.rb +30 -19
- data/spec/gen-rb/base/base_service.rb +21 -10
- data/spec/gen-rb/base/base_service_constants.rb +1 -1
- data/spec/gen-rb/base/base_service_types.rb +1 -1
- data/spec/gen-rb/extended/extended_service.rb +21 -10
- data/spec/gen-rb/extended/extended_service_constants.rb +1 -1
- data/spec/gen-rb/extended/extended_service_types.rb +1 -1
- data/spec/gen-rb/flat/namespaced_nonblocking_service.rb +67 -40
- data/spec/gen-rb/flat/referenced_constants.rb +1 -1
- data/spec/gen-rb/flat/referenced_types.rb +1 -1
- data/spec/gen-rb/flat/thrift_namespaced_spec_constants.rb +1 -1
- data/spec/gen-rb/flat/thrift_namespaced_spec_types.rb +1 -1
- data/spec/gen-rb/namespaced_spec_namespace/namespaced_nonblocking_service.rb +67 -40
- data/spec/gen-rb/namespaced_spec_namespace/thrift_namespaced_spec_constants.rb +1 -1
- data/spec/gen-rb/namespaced_spec_namespace/thrift_namespaced_spec_types.rb +1 -1
- data/spec/gen-rb/nonblocking_service.rb +67 -40
- data/spec/gen-rb/other_namespace/referenced_constants.rb +1 -1
- data/spec/gen-rb/other_namespace/referenced_types.rb +1 -1
- data/spec/gen-rb/thrift_spec_constants.rb +1 -1
- data/spec/gen-rb/thrift_spec_types.rb +1 -1
- data/spec/rack_application_spec.rb +1 -1
- data/test/debug_proto/gen-rb/debug_proto_test_constants.rb +44 -44
- data/test/debug_proto/gen-rb/debug_proto_test_types.rb +1 -1
- data/test/debug_proto/gen-rb/empty_service.rb +8 -1
- data/test/debug_proto/gen-rb/inherited.rb +21 -10
- data/test/debug_proto/gen-rb/reverse_order_service.rb +21 -10
- data/test/debug_proto/gen-rb/service_for_exception_with_a_map.rb +24 -13
- data/test/debug_proto/gen-rb/srv.rb +83 -52
- metadata +11 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 86be9e073b58c320330f5ac9f55b33d9886939785ae72282dc54d1682060352a
|
4
|
+
data.tar.gz: 3f057f5442bc6e9faf3a35e276210ffd4789bf561f1e70a934cfbb747b8dfa29
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 477fa6678b03f067306dc38d4041a505963666a4575c25a81b3fa4796239e21cb7c473fbc16413b9e90b0c17ba8a539685429274f851167bb6af88d1f1313891
|
7
|
+
data.tar.gz: 5ae56c20604b78f69176f4b4e9b7ad8e7af0484f51b3ec1895220801c4bed08dcae3dc788b596479910d25e0ee3df884008d547d855da099e046b2184a0badae
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Autogenerated by Thrift Compiler (
|
2
|
+
# Autogenerated by Thrift Compiler (2.0.1-upfluence)
|
3
3
|
#
|
4
4
|
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
5
|
#
|
@@ -9,19 +9,28 @@ require 'benchmark_types'
|
|
9
9
|
|
10
10
|
module ThriftBenchmark
|
11
11
|
module BenchmarkService
|
12
|
+
SERVICE_NAME = "BenchmarkService"
|
13
|
+
PROGRAM_NAME = ""
|
14
|
+
|
12
15
|
class Client
|
13
16
|
include ::Thrift::Client
|
14
17
|
|
15
|
-
def
|
16
|
-
|
17
|
-
|
18
|
+
def self.from_provider(provider)
|
19
|
+
Client.new(*provider.build(", BenchmarkService"))
|
20
|
+
end
|
21
|
+
|
22
|
+
def fibonacci(ctx, n)
|
23
|
+
@middleware.handle_binary(ctx, 'fibonacci', Fibonacci_args.new(:n => n)) do |ctx, args|
|
24
|
+
send_fibonacci(ctx, args.n)
|
25
|
+
return recv_fibonacci(ctx)
|
26
|
+
end
|
18
27
|
end
|
19
28
|
|
20
|
-
def send_fibonacci(n)
|
29
|
+
def send_fibonacci(ctx, n)
|
21
30
|
send_message('fibonacci', Fibonacci_args, :n => n)
|
22
31
|
end
|
23
32
|
|
24
|
-
def recv_fibonacci()
|
33
|
+
def recv_fibonacci(ctx)
|
25
34
|
result = receive_message(Fibonacci_result)
|
26
35
|
return result.success unless result.success.nil?
|
27
36
|
raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'fibonacci failed: unknown result')
|
@@ -32,11 +41,13 @@ module ThriftBenchmark
|
|
32
41
|
class Processor
|
33
42
|
include ::Thrift::Processor
|
34
43
|
|
35
|
-
def process_fibonacci(seqid, iprot, oprot)
|
44
|
+
def process_fibonacci(ctx, seqid, iprot, oprot)
|
36
45
|
args = read_args(iprot, Fibonacci_args)
|
37
|
-
|
38
|
-
|
39
|
-
|
46
|
+
@middleware.handle_binary(ctx, 'fibonacci', args) do |ctx, args|
|
47
|
+
result = Fibonacci_result.new()
|
48
|
+
result.success = @handler.fibonacci(ctx, args.n)
|
49
|
+
write_result(result, oprot, 'fibonacci', seqid)
|
50
|
+
end
|
40
51
|
end
|
41
52
|
|
42
53
|
end
|
@@ -21,37 +21,48 @@ require 'rack'
|
|
21
21
|
|
22
22
|
module Thrift
|
23
23
|
class RackApplication
|
24
|
-
THRIFT_HEADER =
|
24
|
+
THRIFT_HEADER = 'application/x-thrift'.freeze
|
25
25
|
|
26
26
|
def self.for(path, processor, protocol_factory)
|
27
27
|
Rack::Builder.new do
|
28
28
|
map path do
|
29
|
-
run
|
30
|
-
request = Rack::Request.new(env)
|
31
|
-
if RackApplication.valid_thrift_request?(request)
|
32
|
-
RackApplication.successful_request(request, processor, protocol_factory)
|
33
|
-
else
|
34
|
-
RackApplication.failed_request
|
35
|
-
end
|
36
|
-
}
|
29
|
+
run Thrift::RackApplication.new(processor, protocol_factory)
|
37
30
|
end
|
38
31
|
end
|
39
32
|
end
|
40
33
|
|
41
|
-
def
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
processor.process protocol, protocol
|
46
|
-
response
|
34
|
+
def initialize(processor, protocol_factory)
|
35
|
+
@processor = processor
|
36
|
+
@protocol_factory = protocol_factory
|
37
|
+
@headers = { 'Content-Type' => THRIFT_HEADER }
|
47
38
|
end
|
48
39
|
|
49
|
-
def
|
50
|
-
Rack::
|
40
|
+
def call(env)
|
41
|
+
req = Rack::Request.new(env)
|
42
|
+
|
43
|
+
if valid_thrift_request?(req)
|
44
|
+
successful_request(req)
|
45
|
+
else
|
46
|
+
failed_request
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def successful_request(req)
|
51
|
+
resp = Rack::Response.new([], 200, @headers)
|
52
|
+
transport = IOStreamTransport.new req.body, resp
|
53
|
+
protocol = @protocol_factory.get_protocol transport
|
54
|
+
|
55
|
+
@processor.process protocol, protocol
|
56
|
+
|
57
|
+
[resp.status, resp.headers, resp.body]
|
58
|
+
end
|
59
|
+
|
60
|
+
def failed_request
|
61
|
+
[404, @headers, 'Not found']
|
51
62
|
end
|
52
63
|
|
53
|
-
def
|
54
|
-
|
64
|
+
def valid_thrift_request?(req)
|
65
|
+
req.post? && req.env['CONTENT_TYPE'] == THRIFT_HEADER
|
55
66
|
end
|
56
67
|
end
|
57
68
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Autogenerated by Thrift Compiler (
|
2
|
+
# Autogenerated by Thrift Compiler (2.0.1-upfluence)
|
3
3
|
#
|
4
4
|
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
5
|
#
|
@@ -9,19 +9,28 @@ require 'base/base_service_types'
|
|
9
9
|
|
10
10
|
module Base
|
11
11
|
module BaseService
|
12
|
+
SERVICE_NAME = "BaseService"
|
13
|
+
PROGRAM_NAME = ""
|
14
|
+
|
12
15
|
class Client
|
13
16
|
include ::Thrift::Client
|
14
17
|
|
15
|
-
def
|
16
|
-
|
17
|
-
|
18
|
+
def self.from_provider(provider)
|
19
|
+
Client.new(*provider.build(", BaseService"))
|
20
|
+
end
|
21
|
+
|
22
|
+
def greeting(ctx, english)
|
23
|
+
@middleware.handle_binary(ctx, 'greeting', Greeting_args.new(:english => english)) do |ctx, args|
|
24
|
+
send_greeting(ctx, args.english)
|
25
|
+
return recv_greeting(ctx)
|
26
|
+
end
|
18
27
|
end
|
19
28
|
|
20
|
-
def send_greeting(english)
|
29
|
+
def send_greeting(ctx, english)
|
21
30
|
send_message('greeting', Greeting_args, :english => english)
|
22
31
|
end
|
23
32
|
|
24
|
-
def recv_greeting()
|
33
|
+
def recv_greeting(ctx)
|
25
34
|
result = receive_message(Greeting_result)
|
26
35
|
return result.success unless result.success.nil?
|
27
36
|
raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'greeting failed: unknown result')
|
@@ -32,11 +41,13 @@ module Base
|
|
32
41
|
class Processor
|
33
42
|
include ::Thrift::Processor
|
34
43
|
|
35
|
-
def process_greeting(seqid, iprot, oprot)
|
44
|
+
def process_greeting(ctx, seqid, iprot, oprot)
|
36
45
|
args = read_args(iprot, Greeting_args)
|
37
|
-
|
38
|
-
|
39
|
-
|
46
|
+
@middleware.handle_binary(ctx, 'greeting', args) do |ctx, args|
|
47
|
+
result = Greeting_result.new()
|
48
|
+
result.success = @handler.greeting(ctx, args.english)
|
49
|
+
write_result(result, oprot, 'greeting', seqid)
|
50
|
+
end
|
40
51
|
end
|
41
52
|
|
42
53
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Autogenerated by Thrift Compiler (
|
2
|
+
# Autogenerated by Thrift Compiler (2.0.1-upfluence)
|
3
3
|
#
|
4
4
|
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
5
|
#
|
@@ -10,19 +10,28 @@ require 'extended/extended_service_types'
|
|
10
10
|
|
11
11
|
module Extended
|
12
12
|
module ExtendedService
|
13
|
+
SERVICE_NAME = "ExtendedService"
|
14
|
+
PROGRAM_NAME = ""
|
15
|
+
|
13
16
|
class Client < ::Base::BaseService::Client
|
14
17
|
include ::Thrift::Client
|
15
18
|
|
16
|
-
def
|
17
|
-
|
18
|
-
|
19
|
+
def self.from_provider(provider)
|
20
|
+
Client.new(*provider.build(", ExtendedService"))
|
21
|
+
end
|
22
|
+
|
23
|
+
def ping(ctx)
|
24
|
+
@middleware.handle_binary(ctx, 'ping', Ping_args.new()) do |ctx, args|
|
25
|
+
send_ping(ctx, )
|
26
|
+
recv_ping(ctx)
|
27
|
+
end
|
19
28
|
end
|
20
29
|
|
21
|
-
def send_ping()
|
30
|
+
def send_ping(ctx)
|
22
31
|
send_message('ping', Ping_args)
|
23
32
|
end
|
24
33
|
|
25
|
-
def recv_ping()
|
34
|
+
def recv_ping(ctx)
|
26
35
|
result = receive_message(Ping_result)
|
27
36
|
return
|
28
37
|
end
|
@@ -32,11 +41,13 @@ module Extended
|
|
32
41
|
class Processor < ::Base::BaseService::Processor
|
33
42
|
include ::Thrift::Processor
|
34
43
|
|
35
|
-
def process_ping(seqid, iprot, oprot)
|
44
|
+
def process_ping(ctx, seqid, iprot, oprot)
|
36
45
|
args = read_args(iprot, Ping_args)
|
37
|
-
|
38
|
-
|
39
|
-
|
46
|
+
@middleware.handle_binary(ctx, 'ping', args) do |ctx, args|
|
47
|
+
result = Ping_result.new()
|
48
|
+
@handler.ping(ctx, )
|
49
|
+
write_result(result, oprot, 'ping', seqid)
|
50
|
+
end
|
40
51
|
end
|
41
52
|
|
42
53
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Autogenerated by Thrift Compiler (
|
2
|
+
# Autogenerated by Thrift Compiler (2.0.1-upfluence)
|
3
3
|
#
|
4
4
|
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
|
5
5
|
#
|
@@ -9,63 +9,80 @@ require 'thrift_namespaced_spec_types'
|
|
9
9
|
|
10
10
|
module NamespacedSpecNamespace
|
11
11
|
module NamespacedNonblockingService
|
12
|
+
SERVICE_NAME = "NamespacedNonblockingService"
|
13
|
+
PROGRAM_NAME = ""
|
14
|
+
|
12
15
|
class Client
|
13
16
|
include ::Thrift::Client
|
14
17
|
|
15
|
-
def
|
16
|
-
|
17
|
-
|
18
|
+
def self.from_provider(provider)
|
19
|
+
Client.new(*provider.build(", NamespacedNonblockingService"))
|
20
|
+
end
|
21
|
+
|
22
|
+
def greeting(ctx, english)
|
23
|
+
@middleware.handle_binary(ctx, 'greeting', Greeting_args.new(:english => english)) do |ctx, args|
|
24
|
+
send_greeting(ctx, args.english)
|
25
|
+
return recv_greeting(ctx)
|
26
|
+
end
|
18
27
|
end
|
19
28
|
|
20
|
-
def send_greeting(english)
|
29
|
+
def send_greeting(ctx, english)
|
21
30
|
send_message('greeting', Greeting_args, :english => english)
|
22
31
|
end
|
23
32
|
|
24
|
-
def recv_greeting()
|
33
|
+
def recv_greeting(ctx)
|
25
34
|
result = receive_message(Greeting_result)
|
26
35
|
return result.success unless result.success.nil?
|
27
36
|
raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'greeting failed: unknown result')
|
28
37
|
end
|
29
38
|
|
30
|
-
def block()
|
31
|
-
|
32
|
-
|
39
|
+
def block(ctx)
|
40
|
+
@middleware.handle_binary(ctx, 'block', Block_args.new()) do |ctx, args|
|
41
|
+
send_block(ctx, )
|
42
|
+
return recv_block(ctx)
|
43
|
+
end
|
33
44
|
end
|
34
45
|
|
35
|
-
def send_block()
|
46
|
+
def send_block(ctx)
|
36
47
|
send_message('block', Block_args)
|
37
48
|
end
|
38
49
|
|
39
|
-
def recv_block()
|
50
|
+
def recv_block(ctx)
|
40
51
|
result = receive_message(Block_result)
|
41
52
|
return result.success unless result.success.nil?
|
42
53
|
raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'block failed: unknown result')
|
43
54
|
end
|
44
55
|
|
45
|
-
def unblock(n)
|
46
|
-
|
56
|
+
def unblock(ctx, n)
|
57
|
+
@middleware.handle_unary(ctx, 'unblock', Unblock_args.new(:n => n)) do |ctx, args|
|
58
|
+
send_unblock(ctx, args.n)
|
59
|
+
end
|
47
60
|
end
|
48
61
|
|
49
|
-
def send_unblock(n)
|
62
|
+
def send_unblock(ctx, n)
|
50
63
|
send_oneway_message('unblock', Unblock_args, :n => n)
|
51
64
|
end
|
52
|
-
def shutdown()
|
53
|
-
|
65
|
+
def shutdown(ctx)
|
66
|
+
@middleware.handle_unary(ctx, 'shutdown', Shutdown_args.new()) do |ctx, args|
|
67
|
+
send_shutdown(ctx, )
|
68
|
+
end
|
54
69
|
end
|
55
70
|
|
56
|
-
def send_shutdown()
|
71
|
+
def send_shutdown(ctx)
|
57
72
|
send_oneway_message('shutdown', Shutdown_args)
|
58
73
|
end
|
59
|
-
def sleep(seconds)
|
60
|
-
|
61
|
-
|
74
|
+
def sleep(ctx, seconds)
|
75
|
+
@middleware.handle_binary(ctx, 'sleep', Sleep_args.new(:seconds => seconds)) do |ctx, args|
|
76
|
+
send_sleep(ctx, args.seconds)
|
77
|
+
recv_sleep(ctx)
|
78
|
+
end
|
62
79
|
end
|
63
80
|
|
64
|
-
def send_sleep(seconds)
|
81
|
+
def send_sleep(ctx, seconds)
|
65
82
|
send_message('sleep', Sleep_args, :seconds => seconds)
|
66
83
|
end
|
67
84
|
|
68
|
-
def recv_sleep()
|
85
|
+
def recv_sleep(ctx)
|
69
86
|
result = receive_message(Sleep_result)
|
70
87
|
return
|
71
88
|
end
|
@@ -75,37 +92,47 @@ module NamespacedSpecNamespace
|
|
75
92
|
class Processor
|
76
93
|
include ::Thrift::Processor
|
77
94
|
|
78
|
-
def process_greeting(seqid, iprot, oprot)
|
95
|
+
def process_greeting(ctx, seqid, iprot, oprot)
|
79
96
|
args = read_args(iprot, Greeting_args)
|
80
|
-
|
81
|
-
|
82
|
-
|
97
|
+
@middleware.handle_binary(ctx, 'greeting', args) do |ctx, args|
|
98
|
+
result = Greeting_result.new()
|
99
|
+
result.success = @handler.greeting(ctx, args.english)
|
100
|
+
write_result(result, oprot, 'greeting', seqid)
|
101
|
+
end
|
83
102
|
end
|
84
103
|
|
85
|
-
def process_block(seqid, iprot, oprot)
|
104
|
+
def process_block(ctx, seqid, iprot, oprot)
|
86
105
|
args = read_args(iprot, Block_args)
|
87
|
-
|
88
|
-
|
89
|
-
|
106
|
+
@middleware.handle_binary(ctx, 'block', args) do |ctx, args|
|
107
|
+
result = Block_result.new()
|
108
|
+
result.success = @handler.block(ctx, )
|
109
|
+
write_result(result, oprot, 'block', seqid)
|
110
|
+
end
|
90
111
|
end
|
91
112
|
|
92
|
-
def process_unblock(seqid, iprot, oprot)
|
113
|
+
def process_unblock(ctx, seqid, iprot, oprot)
|
93
114
|
args = read_args(iprot, Unblock_args)
|
94
|
-
@
|
95
|
-
|
115
|
+
@middleware.handle_unary(ctx, 'unblock', args) do |ctx, args|
|
116
|
+
@handler.unblock(ctx, args.n)
|
117
|
+
return
|
118
|
+
end
|
96
119
|
end
|
97
120
|
|
98
|
-
def process_shutdown(seqid, iprot, oprot)
|
121
|
+
def process_shutdown(ctx, seqid, iprot, oprot)
|
99
122
|
args = read_args(iprot, Shutdown_args)
|
100
|
-
@
|
101
|
-
|
123
|
+
@middleware.handle_unary(ctx, 'shutdown', args) do |ctx, args|
|
124
|
+
@handler.shutdown(ctx, )
|
125
|
+
return
|
126
|
+
end
|
102
127
|
end
|
103
128
|
|
104
|
-
def process_sleep(seqid, iprot, oprot)
|
129
|
+
def process_sleep(ctx, seqid, iprot, oprot)
|
105
130
|
args = read_args(iprot, Sleep_args)
|
106
|
-
|
107
|
-
|
108
|
-
|
131
|
+
@middleware.handle_binary(ctx, 'sleep', args) do |ctx, args|
|
132
|
+
result = Sleep_result.new()
|
133
|
+
@handler.sleep(ctx, args.seconds)
|
134
|
+
write_result(result, oprot, 'sleep', seqid)
|
135
|
+
end
|
109
136
|
end
|
110
137
|
|
111
138
|
end
|