public class LocalResponseCoordinatorCallback extends DefaultResponseCallback
| Modifier and Type | Field and Description |
|---|---|
static int |
TYPE_GET |
static int |
TYPE_GETMETADATA |
static int |
TYPE_RESOLVE |
targetXAddressInfo| Constructor and Description |
|---|
LocalResponseCoordinatorCallback(XAddressInfo targetXAddressInfo,
ResponseCallback callback,
AttributedURI[] optionalMessageIDs,
int messageType) |
| Modifier and Type | Method and Description |
|---|---|
OperationDescription |
getOperation() |
void |
handle(GetMessage get,
GetResponseMessage getResponse,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
Receives a
GetResponseMessage. |
void |
handle(GetMetadataMessage getMetadata,
GetMetadataResponseMessage getMetadataResponse,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
Receives a
GetMetadataResponseMessage. |
void |
handle(Message request,
FaultMessage fault,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
Receives a
FaultMessage in response to a previously sent request
message. |
void |
handle(ResolveMessage resolve,
ResolveMatchesMessage resolveMatches,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
|
void |
handleMalformedResponseException(Message request,
java.lang.Exception exception,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
Called when an exception occurs while receiving, decoding or processing the response message to
a previously sent
request. |
void |
handleNoContent(Message request,
java.lang.String reason,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId) |
void |
handleTimeout(Message request,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
Called when an attempt to receive responses to a previously sent request message passed to
CommunicationManager.send(Message, ProtocolInfo, DataStructure, ResponseCallback)
timeouted. |
void |
handleTransmissionException(Message request,
java.lang.Exception exception,
ConnectionInfo connectionInfo,
AttributedURI optionalMessageId)
Called when an exception arises while sending the
request message. |
getEvent, getTargetAddress, handle, handle, handle, handle, handle, handle, logResponse, requestStartedWithTimeout, setTargetAddresspublic static final int TYPE_RESOLVE
public static final int TYPE_GET
public static final int TYPE_GETMETADATA
public LocalResponseCoordinatorCallback(XAddressInfo targetXAddressInfo, ResponseCallback callback, AttributedURI[] optionalMessageIDs, int messageType)
public void handle(ResolveMessage resolve, ResolveMatchesMessage resolveMatches, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackResolveMatchesMessage in response to a previously sent ResolveMessage. This receiving ResponseCallback instance is the one passed as
fourth argument to the send method.CommunicationManager in use) to receive none or exactly one ResolveMatchesMessage in response to a single sent ResolveMessage. This method would
thus accordingly either not get called at all, or get called once.
If no responses to the sent resolve message are received within a protocol-specific time
period, method ResponseCallback.handleTimeout(Message, ConnectionInfo, AttributedURI) will be called.
handle in interface ResponseCallbackhandle in class DefaultResponseCallbackresolve - the original request messageresolveMatches - a message containing a response to the previously sent requestconnectionInfo - protocol (aka. technology) specific addressing information attached to the received message; this is
especially useful when sending resolve request messages over multiple different technologies like DPWS,UPNP,
Bluetooth, etc. (which can be done by specifying respective DiscoveryDomains); the supplied
connectionInfo enables in such cases the requester to distinguish which technology the
result was obtained overpublic void handle(GetMessage get, GetResponseMessage getResponse, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackGetResponseMessage. The corresponding GetMessage has previously been
sent by passing this ResponseCallback instance as the fourth argument to the
send
method.
Each GetMessage may result in a call to either this method (in case of successful
two-way communication), or to methods:
ResponseCallback.handleTransmissionException(Message, Exception, ConnectionInfo, AttributedURI)
in case of a failure while sending the request message
ResponseCallback.handle(Message, FaultMessage, ConnectionInfo, AttributedURI) in case of a
failure during request processing on the server side
ResponseCallback.handleMalformedResponseException(Message, Exception, ConnectionInfo,
AttributedURI) in case of a failure during response processing on this side
ResponseCallback.handleTimeout(Message, ConnectionInfo, AttributedURI) in case of a timeout while
waiting for responses to the sent request.
handle in interface ResponseCallbackhandle in class DefaultResponseCallbackget - the original request messagegetResponse - a message containing the response to the previously sent requestconnectionInfo - protocol (aka. technology) specific addressing information attached to the received messagepublic void handle(GetMetadataMessage getMetadata, GetMetadataResponseMessage getMetadataResponse, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackGetMetadataResponseMessage. The corresponding GetMetadataMessage has
previously been sent by passing this ResponseCallback instance as the fourth
argument to the send method.
Each GetMetadataMessage may result in a call to either this method (in case of
successful two-way communication), or to methods:
ResponseCallback.handleTransmissionException(Message, Exception, ConnectionInfo, AttributedURI)
in case of a failure while sending the request message
ResponseCallback.handle(Message, FaultMessage, ConnectionInfo, AttributedURI) in case of a
failure during request processing on the server side
ResponseCallback.handleMalformedResponseException(Message, Exception, ConnectionInfo,
AttributedURI) in case of a failure during response processing on this side
ResponseCallback.handleTimeout(Message, ConnectionInfo, AttributedURI) in case of a timeout while
waiting for responses to the sent request.
handle in interface ResponseCallbackhandle in class DefaultResponseCallbackgetMetadata - the original request messagegetMetadataResponse - a message containing the response to the previously sent requestconnectionInfo - protocol (aka. technology) specific addressing information attached to the received messagepublic void handle(Message request, FaultMessage fault, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackFaultMessage in response to a previously sent request
message.
A fault is raised on the responding side while processing the request message and then sent
back to the requester (aka. this side). It is explicitly NOT created on this
side while processing the received response (see method ResponseCallback.handleMalformedResponseException(Message, Exception, ConnectionInfo, AttributedURI) for the
latter case).
handle in interface ResponseCallbackhandle in class DefaultResponseCallbackrequest - the original request messagefault - the fault generated by the responding sideconnectionInfo - protocol (aka. technology) specific addressing information attached to the received messagepublic void handleTimeout(Message request, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackCommunicationManager.send(Message, ProtocolInfo, DataStructure, ResponseCallback)
timeouted. This can only happen when using an unreliable connectionless transport layer for
message transmission, such as UDP. Note that any other error related to sending the original
request message is notified by the callback method ResponseCallback.handleTransmissionException(Message,
Exception, ConnectionInfo, AttributedURI) . The original (request) message that was meant to
be sent is passed as argument request.handleTimeout in interface ResponseCallbackhandleTimeout in class DefaultResponseCallbackrequest - the message meant to be sent, which resulted in a timeoutconnectionInfo - protocol (aka. technology) specific addressing information attached to the received messagepublic void handleTransmissionException(Message request, java.lang.Exception exception, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackrequest message. This could be
e.g. due to network reachability reasons, an IO problem within the transport connection, an
invalid message construct, etc.handleTransmissionException in interface ResponseCallbackhandleTransmissionException in class DefaultResponseCallbackrequest - the request message which was meant to be sent when the exception occurredexception - the exception cause while sending the request messageconnectionInfo - protocol (aka. technology) specific addressing information related to the transmission exceptionpublic void handleMalformedResponseException(Message request, java.lang.Exception exception, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
ResponseCallbackrequest. The exception is passed to argument exception
handleMalformedResponseException in interface ResponseCallbackhandleMalformedResponseException in class DefaultResponseCallbackrequest - the original request messageexception - the exception caused during processing the responseconnectionInfo - protocol (aka. technology) specific addressing information related to the malformed responsepublic void handleNoContent(Message request, java.lang.String reason, ConnectionInfo connectionInfo, AttributedURI optionalMessageId)
handleNoContent in interface ResponseCallbackhandleNoContent in class DefaultResponseCallbackpublic OperationDescription getOperation()
getOperation in interface ResponseCallbackgetOperation in class DefaultResponseCallback