Sha256: 631eacb270dd547d14d35080583899d668222e76f844c5bc2dcceba5400da23c

Contents?: true

Size: 568 Bytes

Versions: 1

Compression:

Stored size: 568 Bytes

Contents

module Legion::Transport::Messages
  class Dynamic < Legion::Transport::Message
    attr_accessor :options
    def type
      'task'
    end

    def message
      { args: @options[:args] || @options }
    end

    def routing_key
      "#{function.runner.extension.values[:name]}.#{function.runner.values[:name]}.#{function.values[:name]}"
    end

    def exchange
      Legion::Transport::Exchange.new(function.runner.extension.values[:exchange])
    end

    def function
      @function ||= Legion::Data::Model::Function[@options[:function_id]]
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
legion-transport-1.0.0 lib/legion/transport/messages/dynamic.rb