org.openorb.ir.impl

Class OperationDefImpl

public class OperationDefImpl extends OperationDefPOA

This class is the OperationDef implementation.

Author: Olivier Modica

Constructor Summary
OperationDefImpl(ORB orb, POA parentPOA, OperationDefHome home)
Constructor
Method Summary
Stringabsolute_name()
The absolute_name attribute is an absolute ScopedName that identifies a Contained object uniquely within its enclosing Repository.
Repositorycontaining_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.
voidcontexts(String[] value)
The contexts attribute specifies the list of context identifiers that apply to the operation.
Containerdefined_in()
Contained objects also have a defined_in attribute that identifies the Container within which they are defined.
DefinitionKinddef_kind()
The def_kind type_name attribute identifies the type of the definition.
Descriptiondescribe()
The describe operation returns a structure containing information about the interface.
voiddestroy()
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.
voidexceptions(ExceptionDef[] value)
The exceptions attribute specifies the list of exception types that can be raised by the operation.
OperationDefHomegetHome()
Get the OperationDef home
Stringid()
An object that is contained by another object has an id attribute that identifies it globally.
voidid(String value)
An object that is contained by another object has an id attribute that identifies it globally.
OperationModemode()
The mode attribute of accessor operations is OP_NORMAL.
voidmode(OperationMode value)
The mode attribute of accessor operations is OP_NORMAL.
voidmove(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.
Stringname()
An object that is contained by another object has a name attribute that identifies it uniquely within the enclosing Container object.
voidname(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.
voidparams(ParameterDescription[] value)
The params attribute describes the parameters of the operation.
TypeCoderesult()
The result attribute is a TypeCode describing the type of the value returned by the operation.
IDLTyperesult_def()
The result_def attribute identifies the definition of the returned type.
voidresult_def(IDLType value)
The result_def attribute identifies the definition of the returned type.
Stringversion()
An object that is contained by another object has a version attribute that distinguishes it from other versioned objects with the same name.
voidversion(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 Detail

OperationDefImpl

public OperationDefImpl(ORB orb, POA parentPOA, OperationDefHome home)
Constructor

Method Detail

absolute_name

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.

containing_repository

public Repository containing_repository()
The containing_repository attribute identifies the Repository that is eventually reached by recursively following the object's defined_in attribute.

contexts

public String[] contexts()
The contexts attribute specifies the list of context identifiers that apply to the operation.

contexts

public void contexts(String[] value)
The contexts attribute specifies the list of context identifiers that apply to the operation.

defined_in

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.

def_kind

public DefinitionKind def_kind()
The def_kind type_name attribute identifies the type of the definition.

describe

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.

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.

exceptions

public ExceptionDef[] exceptions()
The exceptions attribute specifies the list of exception types that can be raised by the operation.

exceptions

public void exceptions(ExceptionDef[] value)
The exceptions attribute specifies the list of exception types that can be raised by the operation.

getHome

public OperationDefHome getHome()
Get the OperationDef home

id

public String id()
An object that is contained by another object has an id attribute that identifies it globally.

id

public void id(String value)
An object that is contained by another object has an id attribute that identifies it globally.

mode

public OperationMode mode()
The mode attribute of accessor operations is OP_NORMAL.

mode

public void mode(OperationMode value)
The mode attribute of accessor operations is OP_NORMAL.

move

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.

name

public String name()
An object that is contained by another object has a name attribute that identifies it uniquely within the enclosing Container object.

name

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.

params

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.

params

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.

result

public TypeCode result()
The result attribute is a TypeCode describing the type of the value returned by the operation.

result_def

public IDLType result_def()
The result_def attribute identifies the definition of the returned type.

result_def

public void result_def(IDLType value)
The result_def attribute identifies the definition of the returned type.

version

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.

version

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.