NAME
ACE_Local_Name_Space - Maintaining accesses Local Name Server Database. Allows to add NameBindings, change them, remove them and resolve NameBindings.
SYNOPSIS
#include <ACE/Local_Name_Space_T.h>
template<ACE_MEM_POOL_1, class ACE_LOCK>
class ACE_Local_Name_Space : public ACE_Name_Space
{
public:
ACE_Local_Name_Space (void);
ACE_Local_Name_Space (
ACE_Naming_Context::Context_Scope_Type scope_in,
ACE_Name_Options *name_options
);
int open (ACE_Naming_Context::Context_Scope_Type scope_in);
~ACE_Local_Name_Space (void);
virtual int bind (
const ACE_WString &name,
const ACE_WString &value,
const char *type = ""
);
virtual int rebind (
const ACE_WString &name,
const ACE_WString &value,
const char *type = ""
);
virtual int unbind (const ACE_WString &name);
virtual int unbind_i (const ACE_WString &name);
virtual int resolve (
const ACE_WString &name,
ACE_WString &value,
char *&type
);
virtual int resolve_i (
const ACE_WString &name,
ACE_WString &value,
char *&type
);
virtual int list_names (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_names_i (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_values (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_values_i (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_types (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_types_i (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_name_entries (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_name_entries_i (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_value_entries (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_value_entries_i (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_type_entries (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_type_entries_i (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual void dump (void) const;
virtual void dump_i (void) const;
typedef ACE_Allocator_Adapter <ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK> > ALLOCATOR;
private:
int remap (EXCEPTION_POINTERS *ep);
int shared_bind (
const ACE_WString &name,
const ACE_WString &value,
const char *type,
int rebind
);
int shared_bind_i (
const ACE_WString &name,
const ACE_WString &value,
const char *type,
int rebind
);
int create_manager (void);
int create_manager_i (void);
ALLOCATOR *allocator_;
ACE_Name_Space_Map <ALLOCATOR> *name_space_map_;
ACE_Naming_Context::Context_Scope_Type ns_scope_;
ACE_Name_Options *name_options_;
TCHAR context_file_[MAXPATHLEN + MAXNAMELEN];
ACE_LOCK *lock_;
};
DESCRIPTION
Manages a Naming Service for a local name space which includes bindings for node_local and host_local naming contexts. All strings are stored in wide character format. A Name Binding consists of a name (that's the key), a value string and an optional type string (no wide chars).
Initialization and termination methods.
ACE_Local_Name_Space (void);
"Do-nothing" constructor.
ACE_Local_Name_Space (
ACE_Naming_Context::Context_Scope_Type scope_in,
ACE_Name_Options *name_options
);
Specifies the scope of this namespace, opens and memory-maps the associated file (if accessible) or contacts the dedicated name server process for NET_LOCAL namespace.
int open (ACE_Naming_Context::Context_Scope_Type scope_in);
Specifies the scope of this namespace, opens and memory-maps the associated file (if accessible) or contacts the dedicated name server process for NET_LOCAL namespace.
~ACE_Local_Name_Space (void);
destructor, do some cleanup :TBD: last dtor should "compress" file
virtual int bind (
const ACE_WString &name,
const ACE_WString &value,
const char *type = ""
);
Bind a new name to a naming context (Wide character strings).
virtual int rebind (
const ACE_WString &name,
const ACE_WString &value,
const char *type = ""
);
Overwrite the value or type of an existing name in a ACE_Local_Name_Space or bind a new name to the context, if it didn't exist yet. (Wide charcter strings interface).
virtual int unbind (const ACE_WString &name);
virtual int unbind_i (const ACE_WString &name);
Delete a name from a ACE_Local_Name_Space (Wide charcter strings Interface).
virtual int resolve (
const ACE_WString &name,
ACE_WString &value,
char *&type
);
virtual int resolve_i (
const ACE_WString &name,
ACE_WString &value,
char *&type
);
Get value and type of a given name binding (Wide chars). The caller is responsible for deleting type!
virtual int list_names (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_names_i (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
Get a set of names matching a specified pattern (wchars). Matching means the names must begin with the pattern string.
virtual int list_values (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_values_i (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
Get a set of values matching a specified pattern (wchars). Matching means the values must begin with the pattern string.
virtual int list_types (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
virtual int list_types_i (
ACE_WSTRING_SET &set,
const ACE_WString &pattern
);
Get a set of types matching a specified pattern (wchars). Matching means the types must begin with the pattern string.
virtual int list_name_entries (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_name_entries_i (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
Get a set of names matching a specified pattern (wchars). Matching means the names must begin with the pattern string. Returns the complete binding associated each pattern match.
virtual int list_value_entries (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_value_entries_i (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
Get a set of values matching a specified pattern (wchars). Matching means the values must begin with the pattern string. Returns the complete binding associated each pattern match.
virtual int list_type_entries (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
virtual int list_type_entries_i (
ACE_BINDING_SET &set,
const ACE_WString &pattern
);
Get a set of types matching a specified pattern (wchars). Matching means the types must begin with the pattern string. Returns the complete binding associated each pattern match.
virtual void dump (void) const;
virtual void dump_i (void) const;
Dump the state of the object
I just know this is going to cause problems on some platform...
typedef ACE_Allocator_Adapter <ACE_Malloc <ACE_MEM_POOL_2, ACE_LOCK> > ALLOCATOR;
AUTHOR
Prashant Jain ([email protected]), Irfan Pyarali ([email protected]), and Douglas C. Schmidt ([email protected]).
LIBRARY
ACE