ACE_Registry::Naming_Context Class Reference

An context representation. More...

#include <Registry.h>

Collaboration diagram for ACE_Registry::Naming_Context:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { MAX_OBJECT_NAME_SIZE = BUFSIZ, MAX_CONTEXT_NAME_SIZE = MAXPATHLEN + 1 }

Public Member Functions

 Naming_Context (void)
 Empty constructor: keys will be NULL.
 Naming_Context (const HKEY &key)
 Constructor: key_ will be set to key.
 ~Naming_Context (void)
 Destructor will call <Naming_Context::close>.
int bind_new (const Name &name, const Object &object)
int bind_new (const ACE_TString &name, const Object &object)
int bind (const Name &name, const Object &object)
int bind (const ACE_TString &name, const Object &object)
int rebind (const Name &name, const Object &object)
int rebind (const ACE_TString &name, const Object &object)
 Update <object> with name in this context.
int resolve (const Name &name, Object &object)
int resolve (const ACE_TString &name, Object &object)
 Find <object> with name in this context.
int unbind (const Name &name)
int unbind (const ACE_TString &name)
 Delete object with name in this context.
int new_context (Naming_Context &naming_context)
 Create new naming_context.
int bind_new_context (const Name &name, Naming_Context &naming_context, u_long persistence=REG_OPTION_NON_VOLATILE, u_long security_access=KEY_ALL_ACCESS, LPSECURITY_ATTRIBUTES security_attributes=0)
int bind_new_context (const ACE_TString &name, Naming_Context &naming_context, u_long persistence=REG_OPTION_NON_VOLATILE, u_long security_access=KEY_ALL_ACCESS, LPSECURITY_ATTRIBUTES security_attributes=0)
int bind_context (const Name &name, Naming_Context &naming_context, u_long persistence=REG_OPTION_NON_VOLATILE, u_long security_access=KEY_ALL_ACCESS, LPSECURITY_ATTRIBUTES security_attributes=0)
int bind_context (const ACE_TString &name, Naming_Context &naming_context, u_long persistence=REG_OPTION_NON_VOLATILE, u_long security_access=KEY_ALL_ACCESS, LPSECURITY_ATTRIBUTES security_attributes=0)
int rebind_context (const Name &name, Naming_Context &naming_context)
int rebind_context (const ACE_TString &name, Naming_Context &naming_context)
 Rename <naming_context> to name.
int resolve_context (const Name &name, Naming_Context &naming_context, u_long security_access=KEY_ALL_ACCESS)
int resolve_context (const ACE_TString &name, Naming_Context &naming_context, u_long security_access=KEY_ALL_ACCESS)
 Find <naming_context> with name in this context.
int unbind_context (const Name &name)
int unbind_context (const ACE_TString &name)
 Remove naming_context with name from this context.
int destroy (void)
 Same as <unbind_context> with this as naming_context.
int list (u_long how_many, Binding_List &list, Binding_Iterator &iterator)
int list (Binding_List &list)
int flush (void)
 Sync content of context to disk.
int close (void)
HKEY key (void)
 Get key.
HKEY parent (void)
 Get parent.
void name (Name &name)
void name (ACE_TString &name)
 Set name (String version).
ACE_TString name (void)
 Get name (String version).

Protected Member Functions

void key (HKEY key)
 Set key.
void parent (HKEY parent)
 Set parent.
void name (const Name &name)
void name (const ACE_TString &name)

Private Member Functions

 Naming_Context (const Naming_Context &rhs)
 Disallow copy constructors.
const Naming_Contextoperator= (const Naming_Context &rhs)
 Disallow assignment.

Private Attributes

HKEY key_
 Key for self.
HKEY parent_key_
 Key for parent.
ACE_TString name_
 Name of self.

Friends

class ACE_Predefined_Naming_Contexts
 Friend factory.

Detailed Description

An context representation.

Think about a context as being similar to a directory in a file system.

Definition at line 178 of file Registry.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
MAX_OBJECT_NAME_SIZE 

Max sizes of names (Not too sure about this value)

MAX_CONTEXT_NAME_SIZE 

Max size of context name.

Definition at line 184 of file Registry.h.

00184          {
00185       /// Max sizes of names
00186       /// (Not too sure about this value)
00187       MAX_OBJECT_NAME_SIZE = BUFSIZ,
00188 
00189       /// Max size of context name
00190       MAX_CONTEXT_NAME_SIZE = MAXPATHLEN + 1
00191     };


Constructor & Destructor Documentation

ACE_Registry::Naming_Context::Naming_Context ( void   ) 

Empty constructor: keys will be NULL.

ACE_Registry::Naming_Context::Naming_Context ( const HKEY &  key  ) 

Constructor: key_ will be set to key.

ACE_Registry::Naming_Context::~Naming_Context ( void   ) 

Destructor will call <Naming_Context::close>.

ACE_Registry::Naming_Context::Naming_Context ( const Naming_Context rhs  )  [private]

Disallow copy constructors.


Member Function Documentation

int ACE_Registry::Naming_Context::bind ( const ACE_TString name,
const Object object 
)

Insert or update <object> with name into this context This will not fail if name already exists (String version)

int ACE_Registry::Naming_Context::bind ( const Name name,
const Object object 
)

Insert or update object with name into this context This will not fail if name already exists (Name version)

int ACE_Registry::Naming_Context::bind_context ( const ACE_TString name,
Naming_Context naming_context,
u_long  persistence = REG_OPTION_NON_VOLATILE,
u_long  security_access = KEY_ALL_ACCESS,
LPSECURITY_ATTRIBUTES  security_attributes = 0 
)

Insert or update <naming_context> with name relative to this context This will not fail if name already exists

int ACE_Registry::Naming_Context::bind_context ( const Name name,
Naming_Context naming_context,
u_long  persistence = REG_OPTION_NON_VOLATILE,
u_long  security_access = KEY_ALL_ACCESS,
LPSECURITY_ATTRIBUTES  security_attributes = 0 
)

Insert or update <naming_context> with name relative to this context This will not fail if name already exists (Name version)

int ACE_Registry::Naming_Context::bind_new ( const ACE_TString name,
const Object object 
)

Insert object with name into this context This will fail if name already exists (String version)

int ACE_Registry::Naming_Context::bind_new ( const Name name,
const Object object 
)

Insert object with name into this context. This will fail if name already exists (Name version)

int ACE_Registry::Naming_Context::bind_new_context ( const ACE_TString name,
Naming_Context naming_context,
u_long  persistence = REG_OPTION_NON_VOLATILE,
u_long  security_access = KEY_ALL_ACCESS,
LPSECURITY_ATTRIBUTES  security_attributes = 0 
)

Insert <naming_context> with name relative to this context This will fail if name already exists

int ACE_Registry::Naming_Context::bind_new_context ( const Name name,
Naming_Context naming_context,
u_long  persistence = REG_OPTION_NON_VOLATILE,
u_long  security_access = KEY_ALL_ACCESS,
LPSECURITY_ATTRIBUTES  security_attributes = 0 
)

Insert <naming_context> with name relative to this context This will fail if name already exists (Name version)

int ACE_Registry::Naming_Context::close ( void   ) 

Close the handle of the context

Note:
<close> does not call <flush>
int ACE_Registry::Naming_Context::destroy ( void   ) 

Same as <unbind_context> with this as naming_context.

int ACE_Registry::Naming_Context::flush ( void   ) 

Sync content of context to disk.

void ACE_Registry::Naming_Context::key ( HKEY  key  )  [protected]

Set key.

HKEY ACE_Registry::Naming_Context::key ( void   ) 

Get key.

int ACE_Registry::Naming_Context::list ( Binding_List list  ) 

listing function: iterator creator This gives back a listing of all entries in this context.

int ACE_Registry::Naming_Context::list ( u_long  how_many,
Binding_List list,
Binding_Iterator iterator 
)

listing function: iterator creator This is useful when there are many objects and contexts in this context and you only want to look at a few entries at a time

void ACE_Registry::Naming_Context::name ( const ACE_TString name  )  [protected]

Set name (String version)

void ACE_Registry::Naming_Context::name ( const Name name  )  [protected]

Set name (Name version)

ACE_TString ACE_Registry::Naming_Context::name ( void   ) 

Get name (String version).

void ACE_Registry::Naming_Context::name ( ACE_TString name  ) 

Set name (String version).

void ACE_Registry::Naming_Context::name ( Name name  ) 

Get name (Name version)

int ACE_Registry::Naming_Context::new_context ( Naming_Context naming_context  ) 

Create new naming_context.

const Naming_Context& ACE_Registry::Naming_Context::operator= ( const Naming_Context rhs  )  [private]

Disallow assignment.

void ACE_Registry::Naming_Context::parent ( HKEY  parent  )  [protected]

Set parent.

HKEY ACE_Registry::Naming_Context::parent ( void   ) 

Get parent.

int ACE_Registry::Naming_Context::rebind ( const ACE_TString name,
const Object object 
)

Update <object> with name in this context.

int ACE_Registry::Naming_Context::rebind ( const Name name,
const Object object 
)

Update <object> with name in this context (Name version)

int ACE_Registry::Naming_Context::rebind_context ( const ACE_TString name,
Naming_Context naming_context 
)

Rename <naming_context> to name.

int ACE_Registry::Naming_Context::rebind_context ( const Name name,
Naming_Context naming_context 
)

Rename <naming_context> to name (Name version)

int ACE_Registry::Naming_Context::resolve ( const ACE_TString name,
Object object 
)

Find <object> with name in this context.

int ACE_Registry::Naming_Context::resolve ( const Name name,
Object object 
)

Find <object> with name in this context (Name version)

int ACE_Registry::Naming_Context::resolve_context ( const ACE_TString name,
Naming_Context naming_context,
u_long  security_access = KEY_ALL_ACCESS 
)

Find <naming_context> with name in this context.

int ACE_Registry::Naming_Context::resolve_context ( const Name name,
Naming_Context naming_context,
u_long  security_access = KEY_ALL_ACCESS 
)

Find <naming_context> with name in this context (Name version)

int ACE_Registry::Naming_Context::unbind ( const ACE_TString name  ) 

Delete object with name in this context.

int ACE_Registry::Naming_Context::unbind ( const Name name  ) 

Delete object with name in this context (Name version)

int ACE_Registry::Naming_Context::unbind_context ( const ACE_TString name  ) 

Remove naming_context with name from this context.

int ACE_Registry::Naming_Context::unbind_context ( const Name name  ) 

Remove naming_context with name from this context (Name version)


Friends And Related Function Documentation

friend class ACE_Predefined_Naming_Contexts [friend]

Friend factory.

Definition at line 182 of file Registry.h.


Member Data Documentation

Key for self.

Definition at line 401 of file Registry.h.

Name of self.

Definition at line 407 of file Registry.h.

Key for parent.

Definition at line 404 of file Registry.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Sun Nov 22 23:16:01 2009 for ACE by  doxygen 1.6.1