java.lang.Object
org.teleal.cling.protocol.ReceivingAsync<IN>
org.teleal.cling.protocol.ReceivingSync<IN,OUT>
- Type Parameters:
IN
- The type of incoming UPnP message handled by this protocol.OUT
- The type of response UPnP message created by this protocol.
- All Implemented Interfaces:
- Runnable
- Direct Known Subclasses:
- ReceivingAction, ReceivingEvent, ReceivingRetrieval, ReceivingSubscribe, ReceivingUnsubscribe
public abstract class ReceivingSync<IN extends StreamRequestMessage,OUT extends StreamResponseMessage>
- extends ReceivingAsync<IN>
Supertype for all synchronously executing protocols, handling reception of UPnP messages and return a response.
After instantiation by the ProtocolFactory
, this protocol run()
s and
calls its own ReceivingAsync.waitBeforeExecution()
method. By default, the protocol does not wait
before then proceeding with executeSync()
.
The returned response will be available to the client of this protocol. The
client will then call either responseSent(org.teleal.cling.model.message.StreamResponseMessage)
or responseException(Throwable)
, depending on whether the response was successfully
delivered. The protocol can override these methods to decide if the whole procedure it is
implementing was successful or not, including not only creation but also delivery of the response.
- Author:
- Christian Bauer
outputMessage
protected OUT extends StreamResponseMessage outputMessage
ReceivingSync
protected ReceivingSync(UpnpService upnpService,
IN inputMessage)
getOutputMessage
public OUT getOutputMessage()
execute
protected final void execute()
- Specified by:
execute
in class ReceivingAsync<IN extends StreamRequestMessage>
executeSync
protected abstract OUT executeSync()
responseSent
public void responseSent(StreamResponseMessage responseMessage)
- Called by the client of this protocol after the returned response has been successfully delivered.
NOOP by default.
responseException
public void responseException(Throwable t)
- Called by the client of this protocol if the returned response was not delivered.
NOOP by default.
- Parameters:
t
- The reason why the response wasn't delivered.
toString
public String toString()
- Overrides:
toString
in class ReceivingAsync<IN extends StreamRequestMessage>
Copyright © 2010 Teleal GmbH, Switzerland. All Rights Reserved.