[Enterprise Extensions only]

CORBA module: Contained Interface

Overview The Contained interface is inherited by all Interface Repository interfaces that are contained by other objects. All objects within the Interface Repository, except the root object (Repository) and definitions of anonymous types (ArrayDef, StringDef, and SequenceDef), and primitive types are contained by other objects.
File name somir.idl
Local-only True
Ancestor interfaces IRObject Interface
Exceptions CORBA::SystemException
Supported operations Contained::absolute_name
Contained::containing_repository
Contained::defined_in
Contained::describe
Contained::id
Contained::name
Contained::version


Intended Usage

The Contained interface is not itself instantiated as a means of accessing the Interface Repository. As an ancestor to certain Interface Repository objects, it provides a specific list of operations as noted below. Those Interface Repository objects that inherit (directly or indirectly) the operations defined in Contained include: ModuleDef, ConstantDef, StructDef, UnionDef, EnumDef, AliasDef, ExceptionDef, AttributeDef, OperationDef, and InterfaceDef.

IDL syntax

  module CORBA
     {
        typedef string VersionSpec;
        interface Contained:IRObject
        {
 
           // read/write interface
           attribute RepositoryId id;
           attribute Identifier name;
           attribute VersionSpec version;
 
           // read interface
           readonly attribute Container defined_in;
           readonly attribute ScopedName absolute_name;
           readonly attribute Repository containing_repository;
           struct Description
              {
                 DefinitionKind kind;
                 any value;
              };
           Description describe ();
 
        };
     };