ACE  6.0.8
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends
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.


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.


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 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 ( 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_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_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_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 ( 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_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::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::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.

HKEY ACE_Registry::Naming_Context::key ( void  )

Get key.

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

Set key.

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

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

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

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

Get name (Name version)

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

Set name (String version)

ACE_TString ACE_Registry::Naming_Context::name ( void  )

Get name (String version)

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

Set name (Name version)

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

Set name (String version)

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

Create new naming_context.

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

Disallow assignment.

HKEY ACE_Registry::Naming_Context::parent ( void  )

Get parent.

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

Set parent.

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 ( const ACE_TString name,
const Object object 
)

Update <object> with name in this context.

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::rebind_context ( const ACE_TString name,
Naming_Context naming_context 
)

Rename <naming_context> to name.

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 ( const ACE_TString name,
Object object 
)

Find <object> 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::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::unbind ( const Name name)

Delete object 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_context ( const Name name)

Remove naming_context with name from this context (Name version)

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

Remove naming_context with name from this context.


Friends And Related Function Documentation

friend class ACE_Predefined_Naming_Contexts [friend]

Friend factory.


Member Data Documentation

Key for self.

Name of self.

Key for parent.


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