Sha256: a5cb5a33826d661b4c5f59b230f8b92866db36798de84d20372b971bf43f9bea

Contents?: true

Size: 598 Bytes

Versions: 2

Compression:

Stored size: 598 Bytes

Contents

# frozen_string_literal: true

module Wamp
  module Type
    # Invocation Type
    class Invocation
      attr_writer :connection, :request_id
      attr_reader :args, :kwargs, :details

      def initialize(args: [], kwargs: {}, details: {})
        @args = args
        @kwargs = kwargs
        @details = details
      end

      def progress(result)
        @connection.transmit @connection.session.send_message(response(result))
      end

      def response(result)
        Wampproto::Message::Yield.new(@request_id, result.details, *result.args, **result.kwargs)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
xconn-0.1.2 lib/wamp/type/invocation.rb
xconn-0.1.1 lib/wamp/type/invocation.rb