Sha256: b0d5a67c1367845646094b99a54575712c95745e1275b7813ab0c0f5b6a4ed55

Contents?: true

Size: 747 Bytes

Versions: 2

Compression:

Stored size: 747 Bytes

Contents

module Debugger
  class << self
    attr_accessor :wait_for_start

    def start_remote_ide(host, port)
      return if @control_thread
      @mutex = Mutex.new
      @proceed = ConditionVariable.new
      start
      @control_thread = DebugThread.new do
        server = TCPServer.new(host, port)
        while (session = server.accept)
          interface = IdeInterface.new(session)
          processor = IdeControlCommandProcessor.new(interface)
          self.handler = IdeProcessor.new(interface)
          processor.process_commands
        end
      end
      @mutex.synchronize { @proceed.wait(@mutex) } if wait_for_start
    end

    def proceed
      return unless @mutex
      @mutex.synchronize { @proceed.signal }
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
debugger-xml-0.0.2 lib/debugger/xml/extensions/debugger.rb
debugger-xml-0.0.1 lib/debugger/xml/extensions/debugger.rb