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

TAO_Bindings_Iterator Class Template Reference

This class implements the <BindingIterator> interface that is part of the <CosNaming> idl module. This class works with Hash_Map-based implementations of CosNaming::NamingContext. More...

#include <Bindings_Iterator_T.h>

List of all members.

Public Methods

 TAO_Bindings_Iterator (TAO_Hash_Naming_Context *context, ITERATOR *hash_iter, PortableServer::POA_ptr poa, TAO_SYNCH_RECURSIVE_MUTEX &lock)
 Constructor expects a pointer to a dynamically allocated hash map iterator (destructor deallocates hash map iterator). More...

 ~TAO_Bindings_Iterator (void)
 Destructor. More...

virtual PortableServer::POA_ptr _default_POA (ACE_ENV_SINGLE_ARG_DECL)
 Returns the Default POA of this Servant object. More...


Detailed Description

template<class ITERATOR, class TABLE_ENTRY>
class TAO_Bindings_Iterator< ITERATOR, TABLE_ENTRY >

This class implements the <BindingIterator> interface that is part of the <CosNaming> idl module. This class works with Hash_Map-based implementations of CosNaming::NamingContext.

This class is templatized by the types of the underlying hash table iterator and hash table entry, so that it can be used for both TAO_Transient_Naming_Context and TAO_Persistent_Naming_Context (and any other classes with underlying data structures supporting ACE_Hash_Map_Manager/Iterator - like interfaces).

Instances of <TAO_Bindings_Iterator>s affect reference counts of corresponding Naming Contexts. Reference count on a Naming Context is incremented by one for a lifetime of each instance of <TAO_Bindings_Iterator> created for that context, i.e., a Naming Context cannot be cleaned up (but, of course, it can be invalidated) before all of its iterators have been cleaned up. When <destroy> method is invoked on a Naming Context, all of its iterators are destroyed in a "lazy evaluation" fashion, i.e., whenever a next operation is invoked on an iterator, and it can detect that the corresponding Naming Context has been invalidated, the iterator is destroyed.


Constructor & Destructor Documentation

template<class ITERATOR, class TABLE_ENTRY>
TAO_Bindings_Iterator< ITERATOR, TABLE_ENTRY >::TAO_Bindings_Iterator TAO_Hash_Naming_Context   context,
ITERATOR *    hash_iter,
PortableServer::POA_ptr    poa,
TAO_SYNCH_RECURSIVE_MUTEX   lock
 

Constructor expects a pointer to a dynamically allocated hash map iterator (destructor deallocates hash map iterator).

template<class ITERATOR, class TABLE_ENTRY>
TAO_Bindings_Iterator< ITERATOR, TABLE_ENTRY >::~TAO_Bindings_Iterator void   
 

Destructor.


Member Function Documentation

template<class ITERATOR, class TABLE_ENTRY>
PortableServer::POA_ptr TAO_Bindings_Iterator< ITERATOR, TABLE_ENTRY >::_default_POA ACE_ENV_SINGLE_ARG_DECL    [virtual]
 

Returns the Default POA of this Servant object.


The documentation for this class was generated from the following files:
Generated on Thu Oct 10 22:17:21 2002 for TAO_CosNaming by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001