# # Autogenerated by Thrift Compiler (2.4.0-upfluence) # # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING # require 'thrift' require 'thrift_namespaced_spec_types' module NamespacedSpecNamespace module NamespacedNonblockingService SERVICE = 'NamespacedNonblockingService'.freeze NAMESPACE = ''.freeze class Client def initialize(client) @client = ::Thrift.build_client(client) end def self.from_provider(provider) Client.new(provider.build(NAMESPACE, SERVICE)) end def greeting(english) result = @client.call_binary( 'greeting', Greeting_args.new(english: english), Greeting_result ) return result.success unless result.success.nil? raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'greeting failed: unknown result') result end def block() result = @client.call_binary( 'block', Block_args.new(), Block_result ) return result.success unless result.success.nil? raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'block failed: unknown result') result end def unblock(n) @client.call_unary( 'unblock', Unblock_args.new(n: n) ) end def shutdown() @client.call_unary( 'shutdown', Shutdown_args.new() ) end def sleep(seconds) result = @client.call_binary( 'sleep', Sleep_args.new(seconds: seconds), Sleep_result ) nil end end class Processor include ::Thrift::Processor def self.from_provider(handler, provider) provider.build(NAMESPACE, SERVICE, Processor, handler) end def process_greeting(seqid, iprot, oprot) args = read_args(iprot, Greeting_args) result = @middleware.handle_binary('greeting', args) do |args| result = Greeting_result.new() result.success = @handler.greeting(args.english) result end write_result(result, oprot, 'greeting', seqid) end def process_block(seqid, iprot, oprot) args = read_args(iprot, Block_args) result = @middleware.handle_binary('block', args) do |args| result = Block_result.new() result.success = @handler.block() result end write_result(result, oprot, 'block', seqid) end def process_unblock(seqid, iprot, oprot) args = read_args(iprot, Unblock_args) @middleware.handle_unary('unblock', args) do |args| @handler.unblock(args.n) nil end end def process_shutdown(seqid, iprot, oprot) args = read_args(iprot, Shutdown_args) @middleware.handle_unary('shutdown', args) do |args| @handler.shutdown() nil end end def process_sleep(seqid, iprot, oprot) args = read_args(iprot, Sleep_args) result = @middleware.handle_binary('sleep', args) do |args| result = Sleep_result.new() @handler.sleep(args.seconds) result end write_result(result, oprot, 'sleep', seqid) end end # HELPER FUNCTIONS AND STRUCTURES class Greeting_args include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'greeting_args'.freeze NAMESPACE = ''.freeze THRIFT_FIELD_INDEX_ENGLISH = 1 FIELDS = { THRIFT_FIELD_INDEX_ENGLISH => {type: ::Thrift::Types::BOOL, name: 'english'} } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Greeting_result include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'greeting_result'.freeze NAMESPACE = ''.freeze THRIFT_FIELD_INDEX_SUCCESS = 0 FIELDS = { THRIFT_FIELD_INDEX_SUCCESS => {type: ::Thrift::Types::STRUCT, name: 'success', class: ::NamespacedSpecNamespace::Hello} } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Block_args include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'block_args'.freeze NAMESPACE = ''.freeze FIELDS = { } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Block_result include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'block_result'.freeze NAMESPACE = ''.freeze THRIFT_FIELD_INDEX_SUCCESS = 0 FIELDS = { THRIFT_FIELD_INDEX_SUCCESS => {type: ::Thrift::Types::BOOL, name: 'success'} } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Unblock_args include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'unblock_args'.freeze NAMESPACE = ''.freeze THRIFT_FIELD_INDEX_N = 1 FIELDS = { THRIFT_FIELD_INDEX_N => {type: ::Thrift::Types::I32, name: 'n'} } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Unblock_result include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'unblock_result'.freeze NAMESPACE = ''.freeze FIELDS = { } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Shutdown_args include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'shutdown_args'.freeze NAMESPACE = ''.freeze FIELDS = { } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Shutdown_result include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'shutdown_result'.freeze NAMESPACE = ''.freeze FIELDS = { } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Sleep_args include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'sleep_args'.freeze NAMESPACE = ''.freeze THRIFT_FIELD_INDEX_SECONDS = 1 FIELDS = { THRIFT_FIELD_INDEX_SECONDS => {type: ::Thrift::Types::DOUBLE, name: 'seconds'} } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end class Sleep_result include ::Thrift::Struct, ::Thrift::Struct_Union NAME = 'sleep_result'.freeze NAMESPACE = ''.freeze FIELDS = { } def struct_fields; FIELDS; end def validate end ::Thrift::Struct.generate_accessors self ::Thrift.register_struct_type self end ::Thrift.register_service_type(self) end end