org.openorb.ir.impl
Class OperationDefImpl
public
class
OperationDefImpl
extends OperationDefPOA
This class is the OperationDef 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. |
String[] | contexts()
The contexts attribute specifies the list of context
identifiers that apply to the operation. |
void | contexts(String[] value)
The contexts attribute specifies the list of context
identifiers that apply to the operation. |
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. |
ExceptionDef[] | exceptions()
The exceptions attribute specifies the list of exception types
that can be raised by the operation. |
void | exceptions(ExceptionDef[] value)
The exceptions attribute specifies the list of exception types
that can be raised by the operation. |
OperationDefHome | getHome()
Get the OperationDef 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. |
OperationMode | mode()
The mode attribute of accessor operations is OP_NORMAL. |
void | mode(OperationMode value)
The mode attribute of accessor operations is OP_NORMAL. |
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. |
ParameterDescription[] | params()
The params attribute describes the parameters of the
operation. |
void | params(ParameterDescription[] value)
The params attribute describes the parameters of the
operation. |
TypeCode | result()
The result attribute is a TypeCode describing the type of the
value returned by the operation. |
IDLType | result_def()
The result_def attribute identifies the definition of the
returned type. |
void | result_def(IDLType value)
The result_def attribute identifies the definition of the
returned type. |
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 String[] contexts()
The contexts attribute specifies the list of context
identifiers that apply to the operation.
public void contexts(String[] value)
The contexts attribute specifies the list of context
identifiers that apply to the operation.
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.
public ExceptionDef[] exceptions()
The exceptions attribute specifies the list of exception types
that can be raised by the operation.
public void exceptions(ExceptionDef[] value)
The exceptions attribute specifies the list of exception types
that can be raised by the operation.
Get the OperationDef 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 OperationMode mode()
The mode attribute of accessor operations is OP_NORMAL.
public void mode(OperationMode value)
The mode attribute of accessor operations is OP_NORMAL.
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 ParameterDescription[] params()
The params attribute describes the parameters of the
operation. It is a sequence of ParameterDescription
structures. The order of the ParameterDescriptions in the
sequence is significant.
public void params(ParameterDescription[] value)
The params attribute describes the parameters of the
operation. It is a sequence of ParameterDescription
structures. The order of the ParameterDescriptions in the
sequence is significant.
public TypeCode result()
The result attribute is a TypeCode describing the type of the
value returned by the operation.
public IDLType result_def()
The result_def attribute identifies the definition of the
returned type.
public void result_def(IDLType value)
The result_def attribute identifies the definition of the
returned type.
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.