![]() |
Overview The create_alias operation creates a new alias definition (AliasDef) in the Interface Repository. Original interface CORBA module: Container Interface Exceptions CORBA::SystemException
Intended Usage
The create_alias operation creates a new alias definition in the Interface Repository persistent database, and returns a pointer to a new AliasDef object associated with the alias definition. An AliasDef is typically used by the Interface Repository to represent an OMG IDL 'typedef'.
IDL Syntax
AliasDef create_alias (in Repositoryid id, in Identifier name, in VersionSpec version, in IDLType original_type);
Input parameters
- name
- The name that will be associated with this AliasDef object in the Interface Repository.
- original_type
- The original_type identifies the original type to which this AliasDef refers. The original_type may be an instance of a SequenceDef, ArrayDef, StringDef, PrimitiveDef, UnionDef, StructDef, AliasDef, EnumDef, or InterfaceDef.
- id
- The id represents the CORBA::RepositoryId that will uniquely identify this AliasDef within the Interface Repository.
- version
- The version number that will be associated with this AliasDef object in the Interface Repository.
Return values
- AliasDef_ptr
- A pointer to the created AliasDef object is returned to the caller. The memory associated with this object can later be released by invoking CORBA::release.
Example
// C++ // assume the 'repository_ptr' and 'structure_1' objects // and these pointers have already been established CORBA::Repository * repository_ptr; CORBA::StructDef * structure_1; // establish the id, name, and version values for the alias definition CORBA::RepositoryId rep_id; CORBA::Identifier name; CORBA::VersionSpec version; rep_id = CORBA::string_dup ("unique RepositoryID for this alias"); name = CORBA::string_dup ("alias_new"); version = CORBA::string_dup ("1.0"); // create the new alias for 'structure_1' . . . CORBA::AliasDef * new_alias; new_alias = repository_ptr-> create_alias (rep_id, name, version, structure_1);