Class ChannelGetFieldRequestImpl
- java.lang.Object
-
- org.epics.pvaccess.client.impl.remote.ChannelGetFieldRequestImpl
-
- All Implemented Interfaces:
Lockable
,DataResponse
,ResponseRequest
,TransportSender
public class ChannelGetFieldRequestImpl extends Object implements DataResponse, TransportSender
PVA get field request.- Version:
- $Id$
- Author:
- Matej Sekoranja
-
-
Field Summary
Fields Modifier and Type Field Description protected GetFieldRequester
callback
Response callback listener.protected ChannelImpl
channel
Channel.protected ClientContextImpl
context
Context.protected boolean
destroyed
Destroyed flag.protected int
ioid
I/O ID given by the context when registered.protected String
subField
Sub-field name.
-
Constructor Summary
Constructors Modifier Constructor Description protected
ChannelGetFieldRequestImpl(ChannelImpl channel, GetFieldRequester callback, String subField)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
activate()
void
cancel()
Cancel response request.static ChannelGetFieldRequestImpl
create(ChannelImpl channel, GetFieldRequester callback, String subField)
void
destroy()
int
getIOID()
Get I/O ID.org.epics.pvdata.pv.Requester
getRequester()
Get request requester.void
lock()
void
reportStatus(org.epics.pvdata.pv.Status status)
Report status to clients (e.g.void
response(Transport transport, byte version, ByteBuffer payloadBuffer)
Notification response.void
send(ByteBuffer buffer, TransportSendControl control)
Called by transport.void
timeout()
Timeout notification.void
unlock()
-
-
-
Field Detail
-
channel
protected final ChannelImpl channel
Channel.
-
context
protected final ClientContextImpl context
Context.
-
ioid
protected final int ioid
I/O ID given by the context when registered.
-
callback
protected final GetFieldRequester callback
Response callback listener.
-
subField
protected final String subField
Sub-field name.
-
destroyed
protected volatile boolean destroyed
Destroyed flag.
-
-
Constructor Detail
-
ChannelGetFieldRequestImpl
protected ChannelGetFieldRequestImpl(ChannelImpl channel, GetFieldRequester callback, String subField)
-
-
Method Detail
-
create
public static ChannelGetFieldRequestImpl create(ChannelImpl channel, GetFieldRequester callback, String subField)
-
activate
protected void activate()
-
send
public void send(ByteBuffer buffer, TransportSendControl control)
Description copied from interface:TransportSender
Called by transport. By this call transport gives callee ownership over the buffer. Calls onTransportSendControl
instance must be made from calling thread. Moreover, ownership is valid only for the time of call of this method. NOTE: these limitations allow efficient implementation.- Specified by:
send
in interfaceTransportSender
- Parameters:
buffer
- buffer to send.control
- transport send control instance.
-
getIOID
public int getIOID()
Description copied from interface:ResponseRequest
Get I/O ID.- Specified by:
getIOID
in interfaceResponseRequest
- Returns:
- ioid
-
getRequester
public org.epics.pvdata.pv.Requester getRequester()
Description copied from interface:ResponseRequest
Get request requester.- Specified by:
getRequester
in interfaceResponseRequest
- Returns:
- request requester.
-
response
public void response(Transport transport, byte version, ByteBuffer payloadBuffer)
Description copied from interface:DataResponse
Notification response.- Specified by:
response
in interfaceDataResponse
- Parameters:
transport
- transport to use.version
- protocol version.payloadBuffer
- the data.
-
cancel
public void cancel()
Description copied from interface:ResponseRequest
Cancel response request.- Specified by:
cancel
in interfaceResponseRequest
-
destroy
public void destroy()
-
timeout
public void timeout()
Description copied from interface:ResponseRequest
Timeout notification.- Specified by:
timeout
in interfaceResponseRequest
-
reportStatus
public void reportStatus(org.epics.pvdata.pv.Status status)
Description copied from interface:ResponseRequest
Report status to clients (e.g. disconnected).- Specified by:
reportStatus
in interfaceResponseRequest
- Parameters:
status
- to report.
-
-