An abstract class representing a writable stream on a channel. This is subclassed by SSHStdoutPipe and SSHStderrPipe.

Methods
Attributes
[R] channel The channel used by this pipe.
Public Class methods
new( channel )

Create a new output pipe on the given channel.

     # File lib/net/ssh/service/process/popen3.rb, line 106
106:             def initialize( channel )
107:               @channel = channel
108:               @data = ""
109:             end
Public Instance methods
data_available?()

Returns true if there are any bytes available on this pipe. This will do a non-blocking read on the connection to determine if there

     # File lib/net/ssh/service/process/popen3.rb, line 114
114:             def data_available?
115:               if @data.length == 0
116:                 connection = @channel.connection
117:                 connection.process while connection.reader_ready?
118:               end
119:               @data.length > 0
120:             end
read()

Read all available bytes from the pipe. If there are no available bytes, then this will block until data becomes available.

     # File lib/net/ssh/service/process/popen3.rb, line 124
124:             def read
125:               if @data.length < 1
126:                 @channel.connection.process while @data.length < 1
127:               end
128: 
129:               data, @data = @data, ""
130:               return data
131:             end