org.eclipse.net4j.signal
Class RequestWithConfirmation<RESULT>

java.lang.Object
  extended by org.eclipse.net4j.signal.Signal
      extended by org.eclipse.net4j.signal.SignalActor<RESULT>
          extended by org.eclipse.net4j.signal.RequestWithConfirmation<RESULT>
All Implemented Interfaces:
java.lang.Runnable

public abstract class RequestWithConfirmation<RESULT>
extends SignalActor<RESULT>


Field Summary
 
Fields inherited from class org.eclipse.net4j.signal.SignalActor
NO_TIMEOUT
 
Constructor Summary
protected RequestWithConfirmation(IChannel channel)
           
 
Method Summary
protected abstract  RESULT confirming(ExtendedDataInputStream in)
          Important Note: The confirmation must not be empty, i.e. the stream must be used at least to read a boolean.
protected  void execute(BufferInputStream in, BufferOutputStream out)
           
protected abstract  void requesting(ExtendedDataOutputStream out)
           
 
Methods inherited from class org.eclipse.net4j.signal.SignalActor
send, send, setResult, toString
 
Methods inherited from class org.eclipse.net4j.signal.Signal
finishInputStream, finishOutputStream, getBufferInputStream, getBufferOutputStream, getCorrelationID, getProtocol, getSignalID, run, runSync, wrapInputStream, wrapOutputStream
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RequestWithConfirmation

protected RequestWithConfirmation(IChannel channel)
Method Detail

execute

protected final void execute(BufferInputStream in,
                             BufferOutputStream out)
                      throws java.lang.Exception
Specified by:
execute in class Signal
Throws:
java.lang.Exception

requesting

protected abstract void requesting(ExtendedDataOutputStream out)
                            throws java.io.IOException
Throws:
java.io.IOException

confirming

protected abstract RESULT confirming(ExtendedDataInputStream in)
                              throws java.io.IOException
Important Note: The confirmation must not be empty, i.e. the stream must be used at least to read a boolean. Otherwise synchronization problems will result!

Throws:
java.io.IOException

Copyright (c) 2004 - 2008 Eike Stepper, Germany.
All Rights Reserved.