commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin Seguin" <seg...@motive.com>
Subject RE: [net] Re: problem with RCommandClient
Date Tue, 29 Oct 2002 21:13:25 GMT
yeah, sorry, it is j-c-net.

> -----Original Message-----
> From: Henri Yandell [mailto:bayard@generationjava.com] 
> Sent: Tuesday, October 29, 2002 2:55 PM
> To: Jakarta Commons Developers List
> Subject: [???] Re: problem with RCommandClient
> 
> 
> 
> Not to be mean, but could you prefix the mail subject with 
> the name of the component if it's a mail to the Dev list Kevin?
> 
> I'm not sure what this refers to. Looks like it could be 
> [net] but dunno. I assume someone does :)
> 
> Thanks,
> 
> Hen
> 
> On Tue, 29 Oct 2002, Kevin Seguin wrote:
> 
> > hi,
> >
> > I'm trying to use RCommandClient as an rsh client.  it seems to be 
> > working fine, except for when I want to pipe input to a 
> remote process 
> > through the output stream retrieved from 
> > RCommandClient.getOutputStream().  the problem is that I can't send 
> > and EOF to the the remote process by closing this stream, 
> because that 
> > results in the socket getting closed.  so the remote process never 
> > completes - it hangs waiting for an EOF - or it ends when I 
> close the 
> > stream, but I can't read its output because the socket gets closed. 
> > rock and a hard place, so to speak :)
> >
> > I can "fix" this by subclassing RCommandClient and returning a an 
> > output stream proxy that actually does a Socket.shutdownOutput() 
> > rather than
> > OutputStream.close() (see code below), but this seems like something
> > that ought to work out of the box.  I am just missing something?
> >
> > thanks,
> > kevin.
> >
> > --- workaround class ---
> >
> >     class Rsh
> >         extends RCommandClient
> >     {
> >         class OutputProxy extends OutputStreamProxy
> >         {
> >             private Socket mySocket;
> >
> >             OutputProxy(OutputStream target, Socket socket)
> >             {
> >                 super(target);
> >                 mySocket = socket;
> >             }
> >
> >             public void close()
> >                 throws IOException
> >             {
> >                 mySocket.shutdownOutput();
> >             }
> >         }
> >
> >         OutputStream myOutput;
> >
> >         Rsh()
> >         {
> >         }
> >
> >         public OutputStream getOutputStream()
> >         {
> >             if (myOutput == null)
> >             {
> >                 myOutput = new OutputProxy(_output_, _socket_);
> >             }
> >             return myOutput;
> >         }
> >     }
> >
> > --
> > To unsubscribe, e-mail:   
> <mailto:commons-dev-> unsubscribe@jakarta.apache.org>
> > For 
> additional commands, 
> e-mail: 
> > <mailto:commons-dev-help@jakarta.apache.org>
> >
> >
> 
> 
> --
> To unsubscribe, e-mail:   
> <mailto:commons-dev-> unsubscribe@jakarta.apache.org>
> For 
> additional commands, 
> e-mail: <mailto:commons-dev-help@jakarta.apache.org>
> 
> 

--
To unsubscribe, e-mail:   <mailto:commons-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:commons-dev-help@jakarta.apache.org>


Mime
View raw message