NonStop Serverware

Contained

Previous Topic | Next Topic | Contents | Index
Getting Started | Administration Guide | Programmer's Guide

Subtopics

Contained Syntax
Contained::absolute_name( )
Contained::containing_repository( )
Contained::defined_in
Contained::describe( )
Contained::id
Contained::move( )
Contained::name
Contained::version
See Also

A Contained interface defines objects in the Interface Repository that can be contained within other objects. It is the base interface for the following interfaces:

Contained Syntax

module CORBA {
typedef string VersionSpec; 

interface Contained : IRObject {	
  attribute RepositoryId <id>;
  attribute Identifier <name>;	
  attribute VersionSpec <version>;	
  
  readonly attribute Container <defined_in>;
  readonly attribute ScopedName <absolute_name>;
  readonly attribute Repository <containing_repository>;

  struct Description {
    DefinitionKind <kind>;
	any ;&ltvalue>;
  };
  Description describe ( );
  
  void move (
    in Container <new_container>,
    in Identifier <new_name>,
	in VersionSpec <new_version>);
  };
};

Contained::absolute_name( )

This gives the absolute scoped name of an object.

Syntax

readonly attribute ScopedName absolute_name;

Contained::containing_repository( )

This states the respository within which the object is contained.

Syntax

readonly attribute Repository containing_repository;

Contained::defined_in

This is the unique identifier of the Interface Repository object in which the object is defined.

Syntax

attribute Container defined_in;

Contained::describe( )

The describe( ) operation returns a structure of type Contained::Description.

Syntax

Description describe( );

Description

An example of the structure returned follows:

struct Description {
  DefinitionKind kind
  any value;
}

This form of description is a wrapper for another structure in the value field. Depending on the type of the contained object, the value field contains the name of the corresponding description:

TypeDescription is used for objects of type StructDef, UnionDef, EnumDef, and AliasDef. The kind field contains the same value as the def_kind attribute that Contained inherits from IRObject.

Contained::id

An identifier that uniquely identifies a module, interface, constant, typedef, exception, attribute, or operation in the Repository.

Syntax

attribute RepositoryId id;

Contained::move( )

Use this to remove this object from its container and add it to the container specified by new_container. The new container must be in the same repository and be capable of containing that they of object. The new container cannot contain an object of the same name (unless multiple versions are supported.

Syntax

void move(in Container new_container,
  in Identifier new_name, in VersionSpec new_version);

The name attribute of the object being moved is changed to that specified in the new_name parameter. The version attribute is changed to the one specified in the new_version parameter.

Contained::name

Every object in the Interface Repository is identified by a name unique within the scope.

Syntax

attribute Identifier name;

Contained::version

This returns the version number of this object.

Syntax

attribute VersionSpec version;

See Also

Container
Previous Topic | Next Topic | Contents| Top
Getting Started Guide | Administration Guide | Programmer's Guide
Bibliography | Glossary | Index
© Tandem, a division of Compaq. All rights reserved. Legal notices.