public abstract class RequestWithConfirmation<RESULT> extends SignalActor
signal
, i.e., one with a response.NO_TIMEOUT
Constructor and Description |
---|
RequestWithConfirmation(SignalProtocol<?> protocol,
Enum<?> literal) |
RequestWithConfirmation(SignalProtocol<?> protocol,
short signalID) |
RequestWithConfirmation(SignalProtocol<?> protocol,
short id,
String name) |
Modifier and Type | Method and Description |
---|---|
protected abstract RESULT |
confirming(ExtendedDataInputStream in)
Important Note: The confirmation must not be empty, i.e.
|
protected ExecutorService |
getAsyncExecutorService() |
protected abstract void |
requesting(ExtendedDataOutputStream out) |
RESULT |
send() |
RESULT |
send(long timeout) |
Future<RESULT> |
sendAsync() |
execute
closeChannelAfterMe, closeInputStreamAfterMe, closeOutputStreamAfterMe, finishInputStream, finishOutputStream, flush, getAdditionalInfo, getBufferInputStream, getBufferOutputStream, getCorrelationID, getCurrentInputStream, getCurrentOutputStream, getID, getName, getProtocol, run, toString, wrapInputStream, wrapOutputStream
public RequestWithConfirmation(SignalProtocol<?> protocol, short id, String name)
public RequestWithConfirmation(SignalProtocol<?> protocol, short signalID)
public RequestWithConfirmation(SignalProtocol<?> protocol, Enum<?> literal)
public RESULT send() throws Exception, RemoteException
Exception
RemoteException
public RESULT send(long timeout) throws Exception, RemoteException
Exception
RemoteException
protected ExecutorService getAsyncExecutorService()
protected abstract void requesting(ExtendedDataOutputStream out) throws Exception
Exception
protected abstract RESULT confirming(ExtendedDataInputStream in) throws Exception
boolean
. Otherwise synchronization problems will result!Exception
Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html