![]() |
This is Unofficial EPICS BASE Doxygen Site
|
#include "responseHandlers.h"
Public Types | |
typedef std::tr1::shared_ptr< ServerChannelRequesterImpl > | shared_pointer |
typedef std::tr1::shared_ptr< const ServerChannelRequesterImpl > | const_shared_pointer |
![]() | |
typedef Channel | operation_type |
Public Member Functions | |
virtual | ~ServerChannelRequesterImpl () |
virtual void | channelCreated (const epics::pvData::Status &status, Channel::shared_pointer const &channel) OVERRIDE FINAL |
virtual void | channelStateChange (Channel::shared_pointer const &c, const Channel::ConnectionState isConnected) OVERRIDE FINAL |
virtual std::tr1::shared_ptr< const PeerInfo > | getPeerInfo () OVERRIDE FINAL |
Return information on connected peer if applicable. More... | |
virtual std::string | getRequesterName () OVERRIDE FINAL |
virtual void | message (std::string const &message, epics::pvData::MessageType messageType) OVERRIDE FINAL |
virtual void | send (epics::pvData::ByteBuffer *buffer, TransportSendControl *control) OVERRIDE FINAL |
![]() | |
POINTER_DEFINITIONS (ChannelRequester) | |
ChannelRequester () | |
virtual | ~ChannelRequester () |
![]() | |
POINTER_DEFINITIONS (Requester) | |
virtual | ~Requester () |
virtual void | message (std::string const &message, MessageType messageType=errorMessage) |
![]() | |
POINTER_DEFINITIONS (TransportSender) | |
TransportSender () | |
virtual | ~TransportSender () |
![]() | |
POINTER_DEFINITIONS (Lockable) | |
virtual | ~Lockable () |
virtual void | lock () |
virtual void | unlock () |
![]() | |
entry () | |
~entry () | |
Static Public Member Functions | |
static ChannelRequester::shared_pointer | create (ChannelProvider::shared_pointer const &provider, Transport::shared_pointer const &transport, const std::string channelName, const pvAccessID cid) |
Protected Member Functions | |
ServerChannelRequesterImpl (Transport::shared_pointer const &transport, const std::string channelName, const pvAccessID cid) | |
Friends | |
class | ServerCreateChannelHandler |
Additional Inherited Members | |
![]() | |
size_t | bytesTX |
size_t | bytesRX |
![]() | |
static size_t | num_instances |
Definition at line 199 of file responseHandlers.h.
typedef std::tr1::shared_ptr<const ServerChannelRequesterImpl> epics::pvAccess::ServerChannelRequesterImpl::const_shared_pointer |
Definition at line 207 of file responseHandlers.h.
typedef std::tr1::shared_ptr<ServerChannelRequesterImpl> epics::pvAccess::ServerChannelRequesterImpl::shared_pointer |
Definition at line 206 of file responseHandlers.h.
|
protected |
Definition at line 791 of file responseHandlers.cpp.
|
inlinevirtual |
Definition at line 213 of file responseHandlers.h.
|
virtual |
The request made with ChannelProvider::createChannel() is satisfied.
Will be called at most once for each call to createChannel().
The Channel passed here must be the same as was returned by createChannel(), if it has returned. Note that this method may be called before createChanel() returns.
Status::isOk() indicates that the Channel is valid. Calls to Channel methods can be made from this method, and later until Channel::destroy() is called.
!Status::isOk() indicates that the Channel is not available. No calls to the Channel are permitted. channelStateChange() will never be called.
Caller must hold no locks.
status | Completion status. |
channel | The channel. |
Implements epics::pvAccess::ChannelRequester.
Definition at line 813 of file responseHandlers.cpp.
|
virtual |
Called occasionally after channelCreated() with Status::isOk() to give notification of connection state changes.
Caller must hold no locks.
c | The channel. |
connectionState | The new connection state. |
Implements epics::pvAccess::ChannelRequester.
Definition at line 877 of file responseHandlers.cpp.
|
static |
Definition at line 801 of file responseHandlers.cpp.
|
virtual |
Return information on connected peer if applicable.
A server-type ChannelProvider will use this method to discover if a remote client has provided credentials which may be used in access control decisions.
Default implementation returns NULL.
isConnected()==true and getPeerInfo()==NULL when the ChannelProvider does not provide information about the peer. This should be treated as an unauthenticated, anonymous, peer.
The returned instance must not change, and a different instance should be returned if/when peer information changes (eg. after reconnect).
May return !NULL when !isConnected(). getPeerInfo() must be called before testing isConnected() in situations where connection state is being polled.
Reimplemented from epics::pvAccess::ChannelRequester.
Definition at line 906 of file responseHandlers.cpp.
|
virtual |
The requester must have a name.
Implements epics::pvAccess::Requester.
Definition at line 917 of file responseHandlers.cpp.
|
virtual |
Definition at line 926 of file responseHandlers.cpp.
|
virtual |
Called by transport. By this call transport gives callee ownership over the buffer. Calls on TransportSendControl
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.
Implements epics::pvAccess::TransportSender.
Definition at line 931 of file responseHandlers.cpp.
|
friend |
Definition at line 204 of file responseHandlers.h.