Class AbstractCAResponseHandler
- java.lang.Object
-
- com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler
-
- All Implemented Interfaces:
ResponseHandler
- Direct Known Subclasses:
AbstractCAJResponseHandler,AbstractCASResponseHandler
public abstract class AbstractCAResponseHandler extends Object implements ResponseHandler
- Version:
- $id$
- Author:
- Matej Sekoranja
-
-
Field Summary
Fields Modifier and Type Field Description protected shortcommandCommand field of the header.protected intdataCountData count field of the header.protected shortdataTypeData type field of the header.protected booleandebugDebug flag.protected StringdescriptionCA response description.protected intparameter1Parameter 1 field of the header.protected intparameter2Parameter 2 field of the header.protected intpayloadSizePayload size field of the header.
-
Constructor Summary
Constructors Constructor Description AbstractCAResponseHandler(String description)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidhandleResponse(InetSocketAddress responseFrom, Transport transport, ByteBuffer[] response)NOTE: (Extended) header buffer size validation should have been already done.protected abstract voidinternalHandleResponse(InetSocketAddress responseFrom, Transport transport, ByteBuffer[] response)Called after header is parsed byparseHeader()method.protected voidparseHeader(ByteBuffer headerBuffer)Parse CA response header.
-
-
-
Field Detail
-
description
protected String description
CA response description.
-
command
protected short command
Command field of the header.
-
payloadSize
protected int payloadSize
Payload size field of the header.
-
dataType
protected short dataType
Data type field of the header.
-
dataCount
protected int dataCount
Data count field of the header. NOTE: extended
-
parameter1
protected int parameter1
Parameter 1 field of the header.
-
parameter2
protected int parameter2
Parameter 2 field of the header.
-
debug
protected boolean debug
Debug flag.
-
-
Constructor Detail
-
AbstractCAResponseHandler
public AbstractCAResponseHandler(String description)
- Parameters:
description-
-
-
Method Detail
-
handleResponse
public void handleResponse(InetSocketAddress responseFrom, Transport transport, ByteBuffer[] response)
NOTE: (Extended) header buffer size validation should have been already done.responseis array of maximum of 2 elments: #UDP: contains whole response #TCP: first element contains complete standard or extended response message header, second whole payload. No buffer size checking is done.- Specified by:
handleResponsein interfaceResponseHandler- Parameters:
responseFrom- remove address of the responder,nullif unknown.transport- response source transport.response- array of response messages to handle. First buffer in array has to contain whole (extended) message header.- See Also:
ResponseHandler.handleResponse(java.net.InetSocketAddress, com.cosylab.epics.caj.impl.Transport, java.nio.ByteBuffer[])
-
internalHandleResponse
protected abstract void internalHandleResponse(InetSocketAddress responseFrom, Transport transport, ByteBuffer[] response)
Called after header is parsed byparseHeader()method.
-
parseHeader
protected void parseHeader(ByteBuffer headerBuffer)
Parse CA response header.- Parameters:
headerBuffer- response header to be parsed.
-
-