---
name: "ACE_Registry_Name_Space"
section: "3"
platform: "linux"
package: "libace-doc"
version: "5.0.7-4"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/ACE_Registry_Name_Space"
---

# ACE\_Registry\_Name\_Space(3)

Interface to a Name Server Database which is maintained by the Win32 Registry. Allows to add, change, remove and resolve NameBindings.

## NAME

ACE\_Registry\_Name\_Space -  Interface to a Name Server Database which is maintained by the Win32 Registry.  Allows to add, change, remove and resolve NameBindings.

## SYNOPSIS

```
#include <ACE/Registry_Name_Space.h>
class ACE_Registry_Name_Space : public ACE_Name_Space
{
  public:
    ACE_Registry_Name_Space (void);
    ACE_Registry_Name_Space (ACE_Name_Options *name_options);
    ~ACE_Registry_Name_Space (void);
    int open (ACE_Name_Options *name_options);
    int bind (
        const ACE_WString &name_in,
        const ACE_WString &value_in,
        const char *type_in = ""
        );
    int rebind (
        const ACE_WString &name_in,
        const ACE_WString &value_in,
        const char *type_in = ""
        );
    int unbind (const ACE_WString &name_in);
    int resolve (
        const ACE_WString &name_in,
        ACE_WString &value_out,
        char *&type_out
        );
    int list_names (
        ACE_WSTRING_SET &set_out,
        const ACE_WString &pattern_in
        );
    int list_values (
        ACE_WSTRING_SET &set_out,
        const ACE_WString &pattern_in
        );
    int list_types (
        ACE_WSTRING_SET &set_out,
        const ACE_WString &pattern_in
        );
    int list_name_entries (
        ACE_BINDING_SET &set,
        const ACE_WString &pattern
        );
    int list_value_entries (
        ACE_BINDING_SET &set,
        const ACE_WString &pattern
        );
    int list_type_entries (
        ACE_BINDING_SET &set,
        const ACE_WString &pattern
        );
    void dump (void) const;
  private:
    ACE_Registry::Naming_Context context_;
};
```

## DESCRIPTION

Manages a Naming Service for a registry name space which includes bindings for all contexts. All strings are stored in wide character format.  A Name Binding consists of a name (that's the key), a value string. There is no type string support in this Name Space.

## PUBLIC MEMBERS

```
ACE_Registry_Name_Space (void);
```

Constructor

```
ACE_Registry_Name_Space (ACE_Name_Options *name_options);
```

Contacts and opens the registry on the specified server

```
~ACE_Registry_Name_Space (void);
```

Destructor

```
int open (ACE_Name_Options *name_options);
```

Contacts and opens the registry on the specified server

```
int bind (
    const ACE_WString &name_in,
    const ACE_WString &value_in,
    const char *type_in = ""
    );
```

Bind a new name to a naming context (Wide character strings).

```
int rebind (
    const ACE_WString &name_in,
    const ACE_WString &value_in,
    const char *type_in = ""
    );
```

Overwrite the value or type of an existing name in a ACE\_Name\_Space or bind a new name to the context, if it didn't exist yet. (Wide charcter strings interface).

```
int unbind (const ACE_WString &name_in);
```

Delete a name from a ACE\_Name\_Space (Wide charcter strings Interface).

```
int resolve (
    const ACE_WString &name_in,
    ACE_WString &value_out,
    char *&type_out
    );
```

Get value and type of a given name binding (Wide chars).  The caller is responsible for deleting both value\_out and type\_out!

```
int list_names (
    ACE_WSTRING_SET &set_out,
    const ACE_WString &pattern_in
    );
```

Get a set of names matching a specified pattern (wchars). Matching means the names must begin with the pattern string.

```
int list_values (
    ACE_WSTRING_SET &set_out,
    const ACE_WString &pattern_in
    );
```

Get a set of values matching a specified pattern (wchars). Matching means the values must begin with the pattern string.

```
int list_types (
    ACE_WSTRING_SET &set_out,
    const ACE_WString &pattern_in
    );
```

Get a set of types matching a specified pattern (wchars). Matching means the types must begin with the pattern string.

```
int list_name_entries (
    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.

```
int list_value_entries (
    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.

```
int list_type_entries (
    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.

```
void dump (void) const;
```

Dump the state of the object

## PRIVATE MEMBERS

```
ACE_Registry::Naming_Context context_;
```

current context

## AUTHOR

Irfan Pyarali (irfan@cs.wustl.edu)

## LIBRARY

ACE
