Sha256: a6b0d4e9bfae66a208e370430c57e2672214bf439658bd9a5697f9207bf51f29

Contents?: true

Size: 636 Bytes

Versions: 16

Compression:

Stored size: 636 Bytes

Contents

module ChildProcess
  module JRuby
    class Redirector
      BUFFER_SIZE = 2048

      def initialize(input, output)
        @input = input
        @output = output
        @buffer = Java.byte[BUFFER_SIZE].new
      end

      def run
        read, avail = 0, 0

        while(read != -1)
          avail = [@input.available, 1].max
          read  = @input.read(@buffer, 0, avail)

          if read > 0
            @output.write(@buffer, 0, read)
          end
        end
      rescue java.io.IOException => ex
        $stderr.puts ex.message, ex.backtrace if $DEBUG
      end

    end # Redirector
  end # JRuby
end # ChildProcess

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
resque-pool-0.3.0 vendor/bundle/ruby/1.8/gems/childprocess-0.1.7/lib/childprocess/jruby/redirector.rb
resque-pool-0.3.0.beta.2 vendor/bundle/ruby/1.8/gems/childprocess-0.1.7/lib/childprocess/jruby/redirector.rb
childprocess-0.2.3 lib/childprocess/jruby/redirector.rb
childprocess-0.2.2 lib/childprocess/jruby/redirector.rb
childprocess-0.2.1 lib/childprocess/jruby/redirector.rb
childprocess-0.2.0 lib/childprocess/jruby/redirector.rb
childprocess-0.1.9 lib/childprocess/jruby/redirector.rb
childprocess-0.1.8 lib/childprocess/jruby/redirector.rb
childprocess-0.1.8.pre lib/childprocess/jruby/redirector.rb
childprocess-0.1.7 lib/childprocess/jruby/redirector.rb
childprocess-0.1.6 lib/childprocess/jruby/redirector.rb
childprocess-0.1.5 lib/childprocess/jruby/redirector.rb
childprocess-0.1.4 lib/childprocess/jruby/redirector.rb
childprocess-0.1.3 lib/childprocess/jruby/redirector.rb
childprocess-0.1.2 lib/childprocess/jruby/redirector.rb
childprocess-0.1.1 lib/childprocess/jruby/redirector.rb