Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

Anchor
_Toc56321485
_Toc56321485
Scope


Wiki Markup
The scope of this document is restricted to the discussion of MACI interfaces. The requirements for component behavior are a separate topic, discussed in Basic Control Interface Specification (BACI). MACI interfaces are static (in contrast to BACI interfaces, where only the design patterns are known in advance).
This document focuses on the MACI concepts and is not concerned with details such as definitions of interfaces and method signatures. Those can be found in the UML model\[6\] and the on-line documentation\[7\].


Anchor
_Toc56321486
_Toc56321486
Glossary

...

  • Manager – The Manager of the domain.
  • CDB – Database Access Layer (DAL) component as an Configuration Database (CDB) for the domain. CDB contains configuration information for individual components, as well as MACI meta-services. CDB is to be defined in a separate document.
  • PDB – Persistence Database component for the domain. PDB exposes the same interface as CDB, but it used for persisting internal state of objects. To be defined along with CDB (not implemented).

  • Wiki Markup
    Log - Centralized Logger \[8\] of the domain. Implements Telecom Logging Service's Log interface.


  • NameService – The Naming Context of the domain. See page .

...

  • It performs as a name service, resolving CURLs into object references. Multiple CURLs can be resolved in one network call, either by enumerating them or using regular expressions. If a CURL is passed that is outside the current Manager's domain, the Manager forwards the request to the Manager closest to the destination domain to resolve it (see the chapter Inter-domain Communication).
  • It delegates the component life cycle management to the Container object and therefore creates no components directly. However, it does maintain a list of all available Containers.
  • The Manager uses the configuration database to retrieve relevant configuration for individual components in the domain, as well as locations of other Managers. Manager persists its internal state (such as references to activated components) in its portion of the persistent database.

  • Wiki Markup
    In environments with low security requirements maintains a hierarchy of CORBA Naming Service's Naming Contexts (see \[3\]). The Naming Contexts are arranged in such a way that they mirror the hierarchy of components in the domain, as well as relationships between domains (see chapter on Naming Service starting on page<ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="810d3ab2-e371-4c0e-b2e6-9997edb3a078"><ac:parameter ac:name="">_Hlt510238890</ac:parameter></ac:structured-macro><ac:structured-macro ac:name="anchor" ac:schema-version="1" ac:macro-id="d30bac01-15fc-44f5-be86-bc12dde9744c"><ac:parameter ac:name="">_Hlt510238891</ac:parameter></ac:structured-macro> ).


Note: Besides losing security, component lifecycle management and on-demand activation are also not available when relying on the Naming Service alone to provide references to components.
Clients locate Managers by obtaining references to them from well-known locations, such as the web, configuration files and similar.
A Manager is named by a special syntax CURL and can return a reference to itself and other Managers.
Manager is the only interaction that clients have with MACI. Thus, neither component implementers nor GUI client developers need concern themselves with aspects of MACI other than the Manager.

...

  1. For every domain in the CURL hierarchy there exists a Naming Context (the domain NC) in the NS, which contains the following bindings:
    • NCs of sub-domains (kind "D").
    • For non-root domains, the NC of the parent domain. Such bindings' ID is "Parent" and kind is "D".
    • Bindings to domain's root components, including the Manager. The kind of these bindings is "O".
    • Manager's name is "Manager". Manager does not have a kind!
    • Other objects. Kind must not be "D", "F" or "O".
    • For each root object that has sub-objects, the domain's NC also contains a binding to a NC that contains the sub-objects. The kind of this binding is "F", and ID is the same as the CURL name of the object.
  2. For every node in the component hierarchy there exists a NC (the folder NC). The NC contains:
    • A NC whose ID is "Domain" and whose kind is "D". This binding links to the domain NC of the domain to which the folder belongs.
    • A link to the parent's NC. The ID is "Parent", and the kind is "F".
    • NCs of subordinate hierarchical levels. The kind of these NCs is "F".
    • Other objects. Kind must not be "D", "F" or "O".
    • Components in the node's hierarchical level. The kind of these NCs is "O".


Wiki Markup
Bindings in a hierarchy of NCs are stringified according to the rules given in the Interoperable Naming Service specification \[5\], section 2.4.
*Examples:*


  1. curl://sub2.sub.root/obj/subobj maps to sub.D/sub2.D/obj.F/subobj.O in the NS, resolved at the root domain's NC (notice the reversal of domain name components and the usage of dots and slashes).
  2. Manager of domain sub.root (curl://sub.root/) is accessible as sub.D/Manager resolved at the root NC.

...