Class ChannelPutRequestImpl
- java.lang.Object
-
- org.epics.pvaccess.client.impl.remote.BaseRequestImpl
-
- org.epics.pvaccess.client.impl.remote.ChannelPutRequestImpl
-
- All Implemented Interfaces:
ChannelPut
,ChannelRequest
,Lockable
,DataResponse
,ResponseRequest
,SubscriptionRequest
,TransportSender
,org.epics.pvdata.misc.Destroyable
public class ChannelPutRequestImpl extends BaseRequestImpl implements ChannelPut
PVA put request.- Version:
- $Id$
- Author:
- Matej Sekoranja
-
-
Field Summary
Fields Modifier and Type Field Description protected org.epics.pvdata.misc.BitSet
bitSet
protected ChannelPutRequester
callback
Response callback listener.protected org.epics.pvdata.pv.PVStructure
data
protected org.epics.pvdata.misc.BitSet
putBitSet
protected org.epics.pvdata.pv.PVStructure
pvPutStructure
-
Fields inherited from class org.epics.pvaccess.client.impl.remote.BaseRequestImpl
channel, channelDestroyed, channelNotConnected, context, destroyed, destroyedStatus, invalidBitSetLengthStatus, invalidPutArrayStatus, invalidPutStructureStatus, ioid, lastRequest, lock, NULL_REQUEST, okStatus, otherRequestPendingStatus, pendingRequest, PURE_CANCEL_REQUEST, PURE_DESTROY_REQUEST, pvDataCreate, pvRequest, remotelyDestroyed, requester, statusCreate, subscribed
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ChannelPutRequestImpl(ChannelImpl channel, ChannelPutRequester callback, org.epics.pvdata.pv.PVStructure pvRequest)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
activate()
static ChannelPutRequestImpl
create(ChannelImpl channel, ChannelPutRequester callback, org.epics.pvdata.pv.PVStructure pvRequest)
void
get()
Get the current data.void
put(org.epics.pvdata.pv.PVStructure pvPutStructure, org.epics.pvdata.misc.BitSet bitSet)
Put data to a channel.void
send(ByteBuffer buffer, TransportSendControl control)
Called by transport.-
Methods inherited from class org.epics.pvaccess.client.impl.remote.BaseRequestImpl
cancel, createBitSetFor, destroy, destroy, getChannel, getIOID, getPendingRequest, getRequester, lastRequest, lock, reportStatus, response, resubscribeSubscription, reuseOrCreatePVField, startRequest, stopRequest, timeout, unlock, updateSubscription
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.epics.pvaccess.client.ChannelRequest
cancel, getChannel, lastRequest
-
-
-
-
Field Detail
-
callback
protected final ChannelPutRequester callback
Response callback listener.
-
data
protected org.epics.pvdata.pv.PVStructure data
-
bitSet
protected org.epics.pvdata.misc.BitSet bitSet
-
pvPutStructure
protected org.epics.pvdata.pv.PVStructure pvPutStructure
-
putBitSet
protected org.epics.pvdata.misc.BitSet putBitSet
-
-
Constructor Detail
-
ChannelPutRequestImpl
protected ChannelPutRequestImpl(ChannelImpl channel, ChannelPutRequester callback, org.epics.pvdata.pv.PVStructure pvRequest)
-
-
Method Detail
-
create
public static ChannelPutRequestImpl create(ChannelImpl channel, ChannelPutRequester callback, org.epics.pvdata.pv.PVStructure pvRequest)
-
activate
protected void activate()
- Overrides:
activate
in classBaseRequestImpl
-
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
- Overrides:
send
in classBaseRequestImpl
- Parameters:
buffer
- buffer to send.control
- transport send control instance.
-
get
public void get()
Description copied from interface:ChannelPut
Get the current data.- Specified by:
get
in interfaceChannelPut
-
put
public void put(org.epics.pvdata.pv.PVStructure pvPutStructure, org.epics.pvdata.misc.BitSet bitSet)
Description copied from interface:ChannelPut
Put data to a channel. Completion status is reported by calling ChannelPutRequester.putDone() callback.- Specified by:
put
in interfaceChannelPut
- Parameters:
pvPutStructure
- The PVStructure that holds the putData.bitSet
- selects what fields to put.
-
-