org.objectweb.medor.filter.jorm.lib
Class CompositePName
BasicOperator
org.objectweb.medor.filter.jorm.lib.CompositePName
- Operator
public class CompositePName
extends BasicOperator
implements Operator
A CompositePName is an Operator representing the construction of a PName
from a NamingContext and several Fields.
The NamingContext is provided as a ParameterOperand. The name of the
ParameterOperand is defined to be:
- The fully qualified class name for the PName of the class itself
- The fully qualified class name, to which the attribute name is
concatenated for a reference PName
The Fields are provided as an array of FieldOperand.
It relies on a TuplePNameGetter
(@see org.objectweb.medor.query.jorm.lib.TuplePNameGetter) to construct the
PName.
-
Alexandre Lefebvre
CompositePName(FieldOperand[] fs, String[] compositefieldnames, Operand po, PType t) - Constructs a SinglePName from a ParameterOperand representing the
naming context, and an array of FieldOperand.
|
cofns
protected String[] cofns
CompositePName
public CompositePName(FieldOperand[] fs,
String[] compositefieldnames,
Operand po,
PType t)
throws MedorException
Constructs a SinglePName from a ParameterOperand representing the
naming context, and an array of FieldOperand. The FieldOperands should
be built on JormFields.
fs
- is the array of FieldOperands from which the value is taken.compositefieldnames
- is the compositename fields. This array
is linked to parameter fs (FieldOperand[]).po
- is the ParameterOperand representing the naming context.t
- is the PType of the PName created by this operator.
MedorException
- when the number of FieldOperand is not equal to
the size of the proj parameter.
clone
public Object clone(Object clone,
Map obj2clone)
throws CloneNotSupportedException
compileExpression
public Operand compileExpression()
throws TypingException,
MalformedExpressionException
Checks the semantic integrity of an expression.
It checks that all types are compatible and prepare the expression to be
evaluable. It also creates buffers where stores the result. Notes that
when evaluating there is no creation of new objects. This method changes
the state of this expression object, it will be evaluable and not
modifiable.
evaluate
public Operand evaluate(ParameterOperand[] pos,
Object o)
throws ExpressionException
getCompositeFieldName
public String[] getCompositeFieldName()
It retrieves an array of the composite field name. The order of this
array matches to the order of the FieldOperand array returned by the
method getField()
getOperatorString
public String getOperatorString()
There is no Java operator associated to a PName
getPNameManagerParameter
public ParameterOperand getPNameManagerParameter()
getResult
public Operand getResult()
throws IllegalStateException
Gets the operand in wich the result will be put in
- an Operand Object