Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# TAO_ESF_Copy_On_Read Class Template Reference

Implement the Copy_On_Read protocol. More...

`#include <ESF_Copy_On_Read.h>`

Inheritance diagram for TAO_ESF_Copy_On_Read

[legend]
Collaboration diagram for TAO_ESF_Copy_On_Read:

[legend]
List of all members.

## Public Methods
| TAO_ESF_Copy_On_Read (void)
| Constructors.
| TAO_ESF_Copy_On_Read (const COLLECTION &collection)
virtual void | for_each (TAO_ESF_Worker<PROXY> *worker, CORBA::Environment &ACE_TRY_ENV)
virtual void | connected (PROXY *proxy, CORBA::Environment &ACE_TRY_ENV)
| Insert a new element into the collection. The collection assumes ownership of the element.
virtual void | reconnected (PROXY *proxy, CORBA::Environment &ACE_TRY_ENV)
virtual void | disconnected (PROXY *proxy, CORBA::Environment &ACE_TRY_ENV)
| Remove an element from the collection.
virtual void | shutdown (CORBA::Environment &ACE_TRY_ENV)
| The EC is shutting down, must release all the elements.
## Private Attributes
COLLECTION | collection_
ACE_LOCK | lock_

## Detailed Description

### template<class PROXY, class COLLECTION, class ITERATOR, class ACE_LOCK> template class TAO_ESF_Copy_On_Read

Implement the Copy_On_Read protocol.

The class is parametric on the kind of collection and locking mechanism used.

## Constructor & Destructor Documentation

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
TAO_ESF_Copy_On_Read<PROXY, COLLECTION, ITERATOR, ACE_LOCK>::TAO_ESF_Copy_On_Read<PROXY, COLLECTION, ITERATOR, ACE_LOCK> ( | void )

| Constructors.

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
TAO_ESF_Copy_On_Read< PROXY,COLLECTION,ITERATOR,ACE_LOCK >::TAO_ESF_Copy_On_Read<PROXY, COLLECTION, ITERATOR, ACE_LOCK> ( | const COLLECTION & collection )

## Member Function Documentation

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY,COLLECTION,ITERATOR,ACE_LOCK >::connected ( | PROXY * proxy,
| CORBA::Environment & ACE_TRY_ENV )`[virtual]`

| Insert a new element into the collection. The collection assumes ownership of the element. Reimplemented from TAO_ESF_Proxy_Collection.

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY,COLLECTION,ITERATOR,ACE_LOCK >::disconnected ( | PROXY * proxy,
| CORBA::Environment & ACE_TRY_ENV )`[virtual]`

| Remove an element from the collection. Reimplemented from TAO_ESF_Proxy_Collection.

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY,COLLECTION,ITERATOR,ACE_LOCK >::for_each ( | TAO_ESF_Worker< PROXY >* worker,
| CORBA::Environment & ACE_TRY_ENV )`[virtual]`

| Iterate over the collection and invoke worker->work() for each member of the collection. This encapsulates Reimplemented from TAO_ESF_Proxy_Collection.

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY,COLLECTION,ITERATOR,ACE_LOCK >::reconnected ( | PROXY * proxy,
| CORBA::Environment & ACE_TRY_ENV )`[virtual]`

| Insert an element into the collection. No errors can be raised if the element is already present. The collection assumes ownership, i.e. must invoke <proxy->_decr_refcnt()> if the element is already present in the collection. Reimplemented from TAO_ESF_Proxy_Collection.

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
void TAO_ESF_Copy_On_Read< PROXY,COLLECTION,ITERATOR,ACE_LOCK >::shutdown ( | CORBA::Environment & ACE_TRY_ENV )`[virtual]`

| The EC is shutting down, must release all the elements. Reimplemented from TAO_ESF_Proxy_Collection.

## Member Data Documentation

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
COLLECTION TAO_ESF_Copy_On_Read<PROXY, COLLECTION, ITERATOR, ACE_LOCK>::collection_`[private]`

template<classPROXY, classCOLLECTION, classITERATOR, classACE_LOCK>
ACE_LOCK TAO_ESF_Copy_On_Read<PROXY, COLLECTION, ITERATOR, ACE_LOCK>::lock_`[private]`

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

- ESF_Copy_On_Read.h
- ESF_Copy_On_Read.cpp