Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

TAO_Storable_Naming_Context::File_Open_Lock_and_Check Class Reference

Helper class for the TAO_Storable_Naming_Context. More...

#include <Storable_Naming_Context.h>

Collaboration diagram for TAO_Storable_Naming_Context::File_Open_Lock_and_Check:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 File_Open_Lock_and_Check (TAO_Storable_Naming_Context *context, const char *mode ACE_ENV_ARG_DECL)
 Constructor - we always need the object which we guard.
 ~File_Open_Lock_and_Check (void)
 Destructor.
void release (void)
 Releases the lock, closes the file, and deletes the I/O stream.
TAO_Storable_Basepeer (void)
 Returns the stream to read/write on.

Private Types

enum  { mode_write = 1, mode_read = 2, mode_create = 4 }
 Symbolic values for the flags in the above. More...

Private Member Functions

 File_Open_Lock_and_Check (void)
 Default constructor.

Private Attributes

int closed_
 A flag to keep us from trying to close things more than once.
TAO_Storable_Naming_Contextcontext_
 We need to save the pointer to our parent for cleaning up.
TAO_Storable_Basefl_
 The pointer to the actual file I/O (bridge pattern).
int rwflags_
 The flags that we were opened with.

Detailed Description

Helper class for the TAO_Storable_Naming_Context.

Guard class for the TAO_Storable_Naming_Context. It opens a file for read/write and sets a lock on it. It then checks if the file has changed and re-reads it if it has.

The destructor insures that the lock gets released.

 How to use this class:
   File_Open_Lock_and_Check flck(this, name_len > 1 ? "r" : "rw");
     ACE_CHECK;
 


Member Enumeration Documentation

anonymous enum [private]
 

Symbolic values for the flags in the above.

Enumeration values:
mode_write 
mode_read 
mode_create 


Constructor & Destructor Documentation

TAO_Storable_Naming_Context::File_Open_Lock_and_Check::File_Open_Lock_and_Check TAO_Storable_Naming_Context context,
const char *mode  ACE_ENV_ARG_DECL
 

Constructor - we always need the object which we guard.

TAO_Storable_Naming_Context::File_Open_Lock_and_Check::~File_Open_Lock_and_Check void   ) 
 

Destructor.

TAO_Storable_Naming_Context::File_Open_Lock_and_Check::File_Open_Lock_and_Check void   )  [private]
 

Default constructor.


Member Function Documentation

TAO_Storable_Base & TAO_Storable_Naming_Context::File_Open_Lock_and_Check::peer void   ) 
 

Returns the stream to read/write on.

void TAO_Storable_Naming_Context::File_Open_Lock_and_Check::release void   ) 
 

Releases the lock, closes the file, and deletes the I/O stream.


Member Data Documentation

int TAO_Storable_Naming_Context::File_Open_Lock_and_Check::closed_ [private]
 

A flag to keep us from trying to close things more than once.

TAO_Storable_Naming_Context* TAO_Storable_Naming_Context::File_Open_Lock_and_Check::context_ [private]
 

We need to save the pointer to our parent for cleaning up.

TAO_Storable_Base* TAO_Storable_Naming_Context::File_Open_Lock_and_Check::fl_ [private]
 

The pointer to the actual file I/O (bridge pattern).

int TAO_Storable_Naming_Context::File_Open_Lock_and_Check::rwflags_ [private]
 

The flags that we were opened with.


The documentation for this class was generated from the following files:
Generated on Thu Feb 10 21:01:47 2005 for TAO_CosNaming by  doxygen 1.3.9.1