Sha256: bfec32e981817309d12b350a6ad347f3280a09dfbf611e06a15464c12249bdac

Contents?: true

Size: 836 Bytes

Versions: 4

Compression:

Stored size: 836 Bytes

Contents

# frozen_string_literal: true

$stdout.sync = true

require 'dapr/proto/runtime/v1/appcallback_services_pb'

class InvokeReceiverService < Dapr::Proto::Runtime::V1::AppCallback::Service
  Any = Google::Protobuf::Any

  def on_invoke(invoke, _call)
    content_type = 'text/plain; charset=UTF-8'
    puts "Invoked method '#{invoke['method']}' with value '#{invoke['data']['value']}'"
    data = if invoke['method'] == 'my-method'
             Any.new(value: 'INVOKE_RECEIVED')
           else
             Any.new(value: 'unsupported method')
           end

    Dapr::Proto::Common::V1::InvokeResponse.new(data:, content_type:)
  end
end

server = GRPC::RpcServer.new
server.add_http2_port('0.0.0.0:50051', :this_port_is_insecure)
server.handle(InvokeReceiverService)

server.run_till_terminated_or_interrupted([1, +'int', +'SIGQUIT'])

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dapr-ruby-1.14.4 examples/invoke-simple/invoke-receiver.rb
dapr-ruby-0.4.5 examples/invoke-simple/invoke-receiver.rb
dapr-ruby-0.4.4 examples/invoke-simple/invoke-receiver.rb
dapr-ruby-0.4.3 examples/invoke-simple/invoke-receiver.rb