BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback > Class Template Reference

#include <bulkDataSendRecvImpl.h>

Inheritance diagram for BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >:
Inheritance graph
[legend]
Collaboration diagram for BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 BulkDataSendRecvImpl (const ACE_CString &name, maci::ContainerServices *containerServices)
virtual ~BulkDataSendRecvImpl ()
void cleanUp ()
virtual void connect (bulkdata::BulkDataReceiver_ptr receiverObj_p)
virtual void disconnect ()
virtual void startSend ()
virtual void paceData ()
virtual void stopSend ()
virtual void openReceiver ()
bulkdata::BulkDataReceiverConfig * getReceiverConfig ()
virtual void closeReceiver ()
virtual ACSErr::CompletiongetCbStatus (CORBA::ULong flowNumber)
virtual void setTimeout (CORBA::ULong flowNumber, CORBA::ULong timeout)
virtual void setRecvName (const char *recvName)
virtual void subscribeNotification (ACS::CBvoid_ptr notifCb)

Private Attributes

AcsBulkdata::BulkDataSender
< TSenderCallback > 
sender
AcsBulkdata::BulkDataReceiver
< TReceiverCallback > 
receiver
maci::ContainerServicescontainerServices_p
CDB::DAL_ptr dal_p
CDB::DAO_ptr dao_p

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
class BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >


Constructor & Destructor Documentation

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::BulkDataSendRecvImpl ( const ACE_CString &  name,
maci::ContainerServices containerServices 
)

Constructor

Parameters:
poa poa which will activate this and also all other components
name component name
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::~BulkDataSendRecvImpl (  )  [virtual]

Destructor


Member Function Documentation

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::cleanUp (  )  [virtual]

Called after the last functional call to the component has finished. The component should then orderly release resources etc. If this method is overwritten in a subclass, the developer has to make sure that all cleanup performed by the implementation of the base class take place. The best way to do this is to call the implementation of the base itself explicitly, as would be done implicitly in a destructor chain.

Returns:
void

Reimplemented from acscomponent::ACSComponentImpl.

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::closeReceiver (  )  [virtual]
Exceptions:
ACSBulkDataError::AVCloseReceiverErrorEx 
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::connect ( bulkdata::BulkDataReceiver_ptr  receiverObj_p  )  [virtual]

Negotiate and initialize connection with the SendRecv object.

Parameters:
receiver reference of the Receiver Component.
Exceptions:
ACSBulkDataError::AVConnectErrorEx 
Returns:
void

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::disconnect (  )  [virtual]
Exceptions:
ACSBulkDataError::AVDisconnectErrorEx 
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual ACSErr::Completion* BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::getCbStatus ( CORBA::ULong  flowNumber  )  [inline, virtual]
Exceptions:
ACSBulkDataError::AVInvalidFlowNumberEx 

References ACS_TRACE.

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
bulkdata::BulkDataReceiverConfig* BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::getReceiverConfig (  ) 
Exceptions:
ACSBulkDataError::AVReceiverConfigErrorEx 
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::openReceiver (  )  [virtual]

Opens connection creating an out-of-bound channel using TAO A/V services. It creates the Receiver Stream End Point and Flow End Point for the connection with the Sender. The Receiver Stream End Point can be retrieved as an attribute.

Exceptions:
ACSBulkDataError::AVOpenReceiverErrorEx 
Returns:
void

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::paceData (  )  [virtual]

Sends data to the Receiver calling the receive_frame() method on the Receiver side. This method must be overriden by the user to send his own data.

Parameters:
size buffer size of the sent data.
Exceptions:
ACSBulkDataError::AVPaceDataErrorEx 
Returns:
void

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::setRecvName ( const char *  recvName  )  [inline, virtual]
Exceptions:
ACSBulkDataError::AVSetReceiverNameErrorEx 
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::setTimeout ( CORBA::ULong  flowNumber,
CORBA::ULong  timeout 
) [inline, virtual]
Exceptions:
ACSBulkDataError::AVInvalidFlowNumberEx 
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::startSend (  )  [virtual]

Calls the Receiver handle_start() method once the connection is established.

Exceptions:
ACSBulkDataError::AVStartSendErrorEx 
Returns:
void

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::stopSend (  )  [virtual]

Calls the Receiver handle_stop() method.

Exceptions:
ACSBulkDataError::AVStopSendErrorEx 
Returns:
void

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::subscribeNotification ( ACS::CBvoid_ptr  notifCb  )  [inline, virtual]
Exceptions:
ACSBulkDataError::AVNotificationMechanismErrorEx 

Member Data Documentation

template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
maci::ContainerServices* BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::containerServices_p [private]
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
CDB::DAL_ptr BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::dal_p [private]
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
CDB::DAO_ptr BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::dao_p [private]
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
AcsBulkdata::BulkDataReceiver<TReceiverCallback> BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::receiver [private]
template<class TReceiverCallback , class TSenderCallback = BulkDataSenderDefaultCallback>
AcsBulkdata::BulkDataSender<TSenderCallback> BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::sender [private]

The documentation for this class was generated from the following file:

Generated by  doxygen 1.6.2