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 GetFieldRequestercallbackResponse callback listener.protected ChannelImplchannelChannel.protected ClientContextImplcontextContext.protected booleandestroyedDestroyed flag.protected intioidI/O ID given by the context when registered.protected StringsubFieldSub-field name.
-
Constructor Summary
Constructors Modifier Constructor Description protectedChannelGetFieldRequestImpl(ChannelImpl channel, GetFieldRequester callback, String subField)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidactivate()voidcancel()Cancel response request.static ChannelGetFieldRequestImplcreate(ChannelImpl channel, GetFieldRequester callback, String subField)voiddestroy()intgetIOID()Get I/O ID.org.epics.pvdata.pv.RequestergetRequester()Get request requester.voidlock()voidreportStatus(org.epics.pvdata.pv.Status status)Report status to clients (e.g.voidresponse(Transport transport, byte version, ByteBuffer payloadBuffer)Notification response.voidsend(ByteBuffer buffer, TransportSendControl control)Called by transport.voidtimeout()Timeout notification.voidunlock()
-
-
-
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:TransportSenderCalled by transport. By this call transport gives callee ownership over the buffer. Calls onTransportSendControlinstance 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:
sendin interfaceTransportSender- Parameters:
buffer- buffer to send.control- transport send control instance.
-
getIOID
public int getIOID()
Description copied from interface:ResponseRequestGet I/O ID.- Specified by:
getIOIDin interfaceResponseRequest- Returns:
- ioid
-
getRequester
public org.epics.pvdata.pv.Requester getRequester()
Description copied from interface:ResponseRequestGet request requester.- Specified by:
getRequesterin interfaceResponseRequest- Returns:
- request requester.
-
response
public void response(Transport transport, byte version, ByteBuffer payloadBuffer)
Description copied from interface:DataResponseNotification response.- Specified by:
responsein interfaceDataResponse- Parameters:
transport- transport to use.version- protocol version.payloadBuffer- the data.
-
cancel
public void cancel()
Description copied from interface:ResponseRequestCancel response request.- Specified by:
cancelin interfaceResponseRequest
-
destroy
public void destroy()
-
timeout
public void timeout()
Description copied from interface:ResponseRequestTimeout notification.- Specified by:
timeoutin interfaceResponseRequest
-
reportStatus
public void reportStatus(org.epics.pvdata.pv.Status status)
Description copied from interface:ResponseRequestReport status to clients (e.g. disconnected).- Specified by:
reportStatusin interfaceResponseRequest- Parameters:
status- to report.
-
-