org.openorb.ir.impl
Class AttributeDefImpl
public
class
AttributeDefImpl
extends AttributeDefPOA
This class is the AttributeDef implementation.
Author: Olivier Modica
Method Summary |
String | absolute_name()
The absolute_name attribute is an absolute ScopedName that
identifies a Contained object uniquely within its enclosing
Repository. |
Repository | containing_repository()
The containing_repository attribute identifies the Repository
that is eventually reached by recursively following the
object's defined_in attribute. |
Container | defined_in()
Contained objects also have a defined_in attribute that
identifies the Container within which they are defined. |
DefinitionKind | def_kind()
The def_kind type_name attribute identifies the type of the definition. |
Description | describe()
The describe operation returns a structure containing
information about the interface. |
void | destroy()
The destroy operation causes the object to cease to exist. |
AttributeDefHome | getHome()
Get the AttributeDef home |
String | id()
An object that is contained by another object has an id
attribute that identifies it globally. |
void | id(String value)
An object that is contained by another object has an id
attribute that identifies it globally. |
AttributeMode | mode()
The mode attribute specifies read only or read/write access for
this attribute. |
void | mode(AttributeMode value)
The mode attribute specifies read only or read/write access for
this attribute. |
void | move(Container new_contained, String new_name, String new_version)
The move operation atomically removes this object from its
current Container, and adds it to the Container specified by
new_container must satisfy the following conditions: It must be
in the same Repository. |
String | name()
An object that is contained by another object has a name
attribute that identifies it uniquely within the enclosing
Container object. |
void | name(String value)
An object that is contained by another object has a name
attribute that identifies it uniquely within the enclosing
Container object. |
TypeCode | type()
The type attribute provides the TypeCode describing the type of
this attribute. |
IDLType | type_def()
The type_def attribute identifies the object defining the type
of this attribute. |
void | type_def(IDLType value)
The type_def attribute identifies the object defining the type
of this attribute. |
String | version()
An object that is contained by another object has a version
attribute that distinguishes it from other versioned objects
with the same name. |
void | version(String value)
An object that is contained by another object has a version
attribute that distinguishes it from other versioned objects
with the same name. |
Constructor
public String absolute_name()
The absolute_name attribute is an absolute ScopedName that
identifies a Contained object uniquely within its enclosing
Repository. If this object?s defined_in attribute references
a Repository, the absolute_name is formed by concatenating the
string "::" and this object?s name attribute. Otherwise, the
absolute_name is formed by concatenating the absolute_name
attribute of the object referenced by this object?s
defined_in attribute, the string "::", and this object?s
name attribute.
public Repository containing_repository()
The containing_repository attribute identifies the Repository
that is eventually reached by recursively following the
object's defined_in attribute.
public Container defined_in()
Contained objects also have a defined_in attribute that
identifies the Container within which they are defined. Objects
can be contained either because they are defined within the
containing object (for example, an interface is defined within
a module) or because they are inherited by the containing
object (for example, an operation may be contained by an
interface because the interface inherits the operation from
another interface). If an object is contained through
inheritance, the defined_in attribute identifies the
InterfaceDef or ValueDef from which the object is inherited.
public DefinitionKind def_kind()
The def_kind type_name attribute identifies the type of the definition.
public Description describe()
The describe operation returns a structure containing
information about the interface. This operation is overloaded
in each sub interface. For example, if the describe operation
is invoked on an attribute object, the kind field contains
dk_Attribute name field contains "AttributeDescription" and the
value field contains an any, which contains the
AttributeDescription structure. The kind field in this must
contain dk_attribute and not the kind of any IRObject from
which the attribute object is derived. For example returning
dk_all would be an error.
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.
Get the AttributeDef home
public String id()
An object that is contained by another object has an id
attribute that identifies it globally.
public void id(String value)
An object that is contained by another object has an id
attribute that identifies it globally.
public AttributeMode mode()
The mode attribute specifies read only or read/write access for
this attribute.
public void mode(AttributeMode value)
The mode attribute specifies read only or read/write access for
this attribute.
public void move(Container new_contained, String new_name, String new_version)
The move operation atomically removes this object from its
current Container, and adds it to the Container specified by
new_container must satisfy the following conditions: It must be
in the same Repository. If it is not, then BAD_PARAM exception
is raised with minor code 4. It must be capable of containing
this object?s type. If it is not, then BAD_PARAM exception
is raised with minor code 4. It must not already contain an
object with this object?s name (unless multiple versions are
supported by the IR). If this condition is not satisfied, then
BAD_PARAM exception is raised with minor code 3.
public String name()
An object that is contained by another object has a name
attribute that identifies it uniquely within the enclosing
Container object.
public void name(String value)
An object that is contained by another object has a name
attribute that identifies it uniquely within the enclosing
Container object.
public TypeCode type()
The type attribute provides the TypeCode describing the type of
this attribute.
public IDLType type_def()
The type_def attribute identifies the object defining the type
of this attribute.
public void type_def(IDLType value)
The type_def attribute identifies the object defining the type
of this attribute.
public String version()
An object that is contained by another object has a version
attribute that distinguishes it from other versioned objects
with the same name.
public void version(String value)
An object that is contained by another object has a version
attribute that distinguishes it from other versioned objects
with the same name.