com.cosylab.epics.caj.cas.handlers
Class AbstractCASResponseHandler

java.lang.Object
  extended by com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler
      extended by com.cosylab.epics.caj.cas.handlers.AbstractCASResponseHandler
All Implemented Interfaces:
ResponseHandler
Direct Known Subclasses:
BadResponse, ClearChannelResponse, CreateChannelResponse, EchoResponse, EventAddResponse, EventCancelResponse, EventsOffResponse, EventsOnResponse, HostnameResponse, NoopResponse, ReadNotifyResponse, SearchResponse, UsernameResponse, VersionResponse, WriteNotifyResponse, WriteResponse

public abstract class AbstractCASResponseHandler
extends AbstractCAResponseHandler

Version:
$id$
Author:
Matej Sekoranja

Field Summary
protected  CAJServerContext context
          Context instance.
 
Fields inherited from class com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler
command, dataCount, dataType, debug, description, parameter1, parameter2, payloadSize
 
Constructor Summary
AbstractCASResponseHandler(CAJServerContext context, String description)
           
 
Method Summary
static gov.aps.jca.dbr.DBR createDBRforReading(gov.aps.jca.cas.ProcessVariable processVariable)
          Create appropriate DBR structure for reading (of PV type).
static gov.aps.jca.dbr.DBR createDBRforReading(gov.aps.jca.cas.ProcessVariable processVariable, int dataCount)
          Create appropriate DBR structure for reading (of PV type).
static gov.aps.jca.dbr.DBR createDBRforReading(gov.aps.jca.cas.ProcessVariable processVariable, short dataType, int dataCount)
          Create appropriate DBR structure for reading (of PV type).
static String extractString(ByteBuffer buffer, int start, int maxSize, boolean setToEnd)
          Extract string from payload.
protected  void sendException(Transport transport, int cid, gov.aps.jca.CAStatus errorStatus, ByteBuffer previousHeader, String message)
          Send error (exception) response.
 
Methods inherited from class com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler
handleResponse, internalHandleResponse, parseHeader
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

context

protected CAJServerContext context
Context instance.

Constructor Detail

AbstractCASResponseHandler

public AbstractCASResponseHandler(CAJServerContext context,
                                  String description)
Parameters:
context -
description -
Method Detail

extractString

public static final String extractString(ByteBuffer buffer,
                                         int start,
                                         int maxSize,
                                         boolean setToEnd)
Extract string from payload.

Parameters:
buffer - buffer to use.
start - buffer offset to use, if negative current buffer position will be used
maxSize - maximum payload size reserved for string.
setToEnd - set to the end of string flag (after zero char)
Returns:
extracted string.

sendException

protected void sendException(Transport transport,
                             int cid,
                             gov.aps.jca.CAStatus errorStatus,
                             ByteBuffer previousHeader,
                             String message)
Send error (exception) response.

Parameters:
transport - transport to use.
cid - channel ID.
errorStatus - error status.
previousHeader - header of the request messages causing this error.
message - string message, can be null.

createDBRforReading

public static final gov.aps.jca.dbr.DBR createDBRforReading(gov.aps.jca.cas.ProcessVariable processVariable)
Create appropriate DBR structure for reading (of PV type). Returned DBR structure will be the most complete one (CTRL usually)., PV array length.

Parameters:
processVariable - process variable to be read.
Returns:
requested DBR.

createDBRforReading

public static final gov.aps.jca.dbr.DBR createDBRforReading(gov.aps.jca.cas.ProcessVariable processVariable,
                                                            int dataCount)
Create appropriate DBR structure for reading (of PV type). Returned DBR structure will be the most complete one (CTRL usually).

Parameters:
processVariable - process variable to be read.
dataCount - requested data count (returned DBR will have this count).
Returns:
requested DBR.

createDBRforReading

public static final gov.aps.jca.dbr.DBR createDBRforReading(gov.aps.jca.cas.ProcessVariable processVariable,
                                                            short dataType,
                                                            int dataCount)
Create appropriate DBR structure for reading (of PV type).

Parameters:
processVariable - process variable to be read.
dataType - data type requested from client (not necessary equals to PV type)
dataCount - requested data count (returned DBR will have this count).
Returns:
requested DBR.


Copyright © 2004-2013 Cosylab. All Rights Reserved.