Sha256: a64cbe29e5b41076e3953f5bee54baa772fd9a8f79f44fbdcc790e4ab3709fee

Contents?: true

Size: 1.04 KB

Versions: 6

Compression:

Stored size: 1.04 KB

Contents

module Vedeu

  module Bindings

    # System events relating to the DRb server implementation.
    #
    # @api public
    # {include:file:docs/events/drb.md}
    # :nocov:
    module DRB

      Vedeu.bind(:_drb_input_) do |data, type|
        Vedeu.log(type: :drb, message: "Sending input (#{type})")

        case type
        when :command then Vedeu.trigger(:_command_, data)
        else Vedeu.trigger(:_keypress_, data)
        end
      end

      # @todo This event queries Vedeu. Events should only be commands.
      Vedeu.bind(:_drb_retrieve_output_) { Vedeu::VirtualBuffer.retrieve }

      Vedeu.bind(:_drb_store_output_) do |data|
        Vedeu::VirtualBuffer.store(Vedeu::Terminal.virtual.output(data))
      end

      Vedeu.bind(:_drb_restart_) { Vedeu::Distributed::Server.restart }
      Vedeu.bind(:_drb_start_) { Vedeu::Distributed::Server.start }
      Vedeu.bind(:_drb_status_) { Vedeu::Distributed::Server.status }
      Vedeu.bind(:_drb_stop_) { Vedeu::Distributed::Server.stop }

    end # DRB
    # :nocov:

  end # Bindings

end # Vedeu

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
vedeu-0.4.52 lib/vedeu/bindings/drb.rb
vedeu-0.4.51 lib/vedeu/bindings/drb.rb
vedeu-0.4.50 lib/vedeu/bindings/drb.rb
vedeu-0.4.49 lib/vedeu/bindings/drb.rb
vedeu-0.4.48 lib/vedeu/bindings/drb.rb
vedeu-0.4.47 lib/vedeu/bindings/drb.rb