The admin Object

On this page:

Overview of the admin Object

When the Administrative Facility is enabled, you can configure Ice to host an administrative object in the Ice.Admin object adapter, or you can programmatically host this object in your own object adapter.

In this manual, we refer to the administrative object as the admin object.

You can retrieve a proxy to the admin object associated with your communicator, if any, by calling getAdmin on this communicator, for example:

auto adminProxy = myCommunicator->getAdmin(); // adminProxy is a std::shared_ptr<Ice::ObjectPrx>
Ice::ObjectPrx adminProxy = myCommunicator->getAdmin();

Facets of the admin Object

An Ice object is actually a collection of sub-objects known as facets whose types are not necessarily related. Although facets are typically used for extending and versioning types, they also allow a group of interfaces with a common purpose to be consolidated into a single Ice object with an established interface for navigation. These qualities make facets an excellent match for the requirements of the administrative facility.

Each facet of the admin object represents a distinct administrative capability. The object does not have a default facet (that is, a facet with an empty name). However, the Ice run time implements several built-in facets that it adds to the admin object:

An application can control which facets are installed with a configuration property. An application can also install its own facets if necessary. Administrative facets are not required to inherit from a common Slice interface.

See Also