# OpenORB 1.3.1: Interface IRObjectOperations

## org.omg.CORBA
Interface IRObjectOperations

All Known Subinterfaces:
  AbstractInterfaceDef, AbstractInterfaceDefOperations, AliasDef, AliasDefOperations, ArrayDef, ArrayDefOperations, AttributeDef, AttributeDefOperations, ConstantDef, ConstantDefOperations, Contained, ContainedOperations, Container, ContainerOperations, EnumDef, EnumDefOperations, ExceptionDef, ExceptionDefOperations, FixedDef, FixedDefOperations, IDLType, IDLTypeOperations, InterfaceDef, InterfaceDefOperations, IRObject, LocalInterfaceDef, LocalInterfaceDefOperations, ModuleDef, ModuleDefOperations, NativeDef, NativeDefOperations, OperationDef, OperationDefOperations, PrimitiveDef, PrimitiveDefOperations, Repository, RepositoryOperations, SequenceDef, SequenceDefOperations, StringDef, StringDefOperations, StructDef, StructDefOperations, TypedefDef, TypedefDefOperations, UnionDef, UnionDefOperations, ValueBoxDef, ValueBoxDefOperations, ValueDef, ValueDefOperations, ValueMemberDef, ValueMemberDefOperations, WstringDef, WstringDefOperations

All Known Implementing Classes:
  IRObjectPOA

public interface IRObjectOperations

The base interface IRObject represents the most generic interface from which all other Interface Repository interfaces are derived, even the Repository itself.

Method Summary
`DefinitionKind` `def_kind()` The def_kind type_name attribute identifies the type of the definition.
`void` `destroy()` The destroy operation causes the object to cease to exist.

Method Detail

### def_kind

    public DefinitionKind def_kind()

  The def_kind type_name attribute identifies the type of the definition.

### destroy

    public void destroy()

  The destroy operation causes the object to cease to exist. If the object is a Container, destroy is applied to all its contents. If the object contains an IDLType attribute for an anonymous type, that IDLType is destroyed. If the object is currently contained in some other object, it is removed. If destroy is invoked on a Repository or on a PrimitiveDef then the BAD_INV_ORDER exception is raised with minor value 2. Implementations may vary in their handling of references to an object that is being destroyed, but the Repository should not be left in an incoherent state. Attempt to destroy an object that would leave the repository in an incoherent state shall cause BAD_INV_ORDER exception to be raised with the minor code 1.