public class ValidationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> extends java.lang.Object implements Visitor<java.lang.Boolean,C,O,P,EL,PM,S,COA,SSA,CT>
Modifier and Type | Field and Description |
---|---|
protected Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> |
env |
protected UMLReflection<PK,C,O,P,EL,PM,S,COA,SSA,CT> |
uml |
Constructor and Description |
---|
ValidationVisitor(Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> environment)
Initializes me to validate expressions in the specified environment.
|
Modifier and Type | Method and Description |
---|---|
static <PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> |
getInstance(Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> environment)
Obtains an instance of the validation visitor that validates against the
specified environment, which presumably was used in parsing the OCL in
the first place.
|
protected C |
getOCLType(java.lang.Object metaElement)
Obtains the type of a meta-element, ensuring that the result is
canonicalized with respect to the current environment (via its type
resolver).
|
protected java.lang.Boolean |
validatorError(java.lang.Object problemObject,
java.lang.String problemMessage,
java.lang.String problemContext)
Pass a problemMessage generated for a problemObject at some validationContext to
env.getErrorHandler().
|
java.lang.Boolean |
visitAssociationClassCallExp(AssociationClassCallExp<C,P> ae)
Callback for an AssociationClassCallExp visit.
|
java.lang.Boolean |
visitBooleanLiteralExp(BooleanLiteralExp<C> bl)
Callback for a BooleanLiteralExp visit.
|
java.lang.Boolean |
visitCollectionItem(CollectionItem<C> item) |
java.lang.Boolean |
visitCollectionLiteralExp(CollectionLiteralExp<C> cl)
Callback for a CollectionLiteralExp visit.
|
java.lang.Boolean |
visitCollectionRange(CollectionRange<C> range) |
java.lang.Boolean |
visitConstraint(CT constraint)
Applies well-formedness rules to constraints.
|
java.lang.Boolean |
visitEnumLiteralExp(EnumLiteralExp<C,EL> el)
Callback for an EnumLiteralExp visit.
|
java.lang.Boolean |
visitExpressionInOCL(ExpressionInOCL<C,PM> expression) |
java.lang.Boolean |
visitFeatureCallExp(FeatureCallExp<C> exp)
Applies well-formedness rules for model property calls in general.
|
java.lang.Boolean |
visitIfExp(IfExp<C> i)
Callback for an IfExp visit.
|
java.lang.Boolean |
visitIntegerLiteralExp(IntegerLiteralExp<C> il)
Callback for an IntegerLiteralExp visit.
|
java.lang.Boolean |
visitInvalidLiteralExp(InvalidLiteralExp<C> il) |
java.lang.Boolean |
visitIterateExp(IterateExp<C,PM> ie)
Callback for an IterateExp visit.
|
java.lang.Boolean |
visitIteratorExp(IteratorExp<C,PM> ie)
Callback for an IteratorExp visit.
|
java.lang.Boolean |
visitLetExp(LetExp<C,PM> l)
Callback for LetExp visit.
|
java.lang.Boolean |
visitMessageExp(MessageExp<C,COA,SSA> m) |
java.lang.Boolean |
visitNullLiteralExp(NullLiteralExp<C> il) |
java.lang.Boolean |
visitOperationCallExp(OperationCallExp<C,O> oc)
Callback for an OperationCallExp visit.
|
java.lang.Boolean |
visitPropertyCallExp(PropertyCallExp<C,P> pc)
Callback for an PropertyCallExp visit.
|
java.lang.Boolean |
visitRealLiteralExp(RealLiteralExp<C> rl)
Callback for a RealLiteralExp visit.
|
java.lang.Boolean |
visitStateExp(StateExp<C,S> s) |
java.lang.Boolean |
visitStringLiteralExp(StringLiteralExp<C> sl)
Callback for a StringLiteralExp visit.
|
java.lang.Boolean |
visitTupleLiteralExp(TupleLiteralExp<C,P> tl)
Callback for a TupleLiteralExp visit.
|
java.lang.Boolean |
visitTupleLiteralPart(TupleLiteralPart<C,P> tp) |
java.lang.Boolean |
visitTypeExp(TypeExp<C> t)
Callback for a TypeExp visit.
|
java.lang.Boolean |
visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> unl)
Callback for an UnlimitedNaturalLiteralExp visit.
|
java.lang.Boolean |
visitUnspecifiedValueExp(UnspecifiedValueExp<C> uv)
Callback for an UnspecifiedValueExp visit.
|
java.lang.Boolean |
visitVariable(Variable<C,PM> vd)
Callback for a VariableDeclaration visit.
|
java.lang.Boolean |
visitVariableExp(VariableExp<C,PM> v)
Callback for a VariableExp visit.
|
public static <PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> Visitor<java.lang.Boolean,C,O,P,EL,PM,S,COA,SSA,CT> getInstance(Environment<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> environment)
environment
- an OCL environment (must no be null
)protected java.lang.Boolean validatorError(java.lang.Object problemObject, java.lang.String problemMessage, java.lang.String problemContext)
problemObject
- The object being validated, may be null if unknownproblemMessage
- The problem with problemObjectproblemContext
- Optional context of the validator, may be nullpublic java.lang.Boolean visitOperationCallExp(OperationCallExp<C,O> oc)
public java.lang.Boolean visitEnumLiteralExp(EnumLiteralExp<C,EL> el)
public java.lang.Boolean visitVariableExp(VariableExp<C,PM> v)
public java.lang.Boolean visitPropertyCallExp(PropertyCallExp<C,P> pc)
public java.lang.Boolean visitAssociationClassCallExp(AssociationClassCallExp<C,P> ae)
public java.lang.Boolean visitVariable(Variable<C,PM> vd)
public java.lang.Boolean visitIfExp(IfExp<C> i)
public java.lang.Boolean visitMessageExp(MessageExp<C,COA,SSA> m)
Visitor
public java.lang.Boolean visitUnspecifiedValueExp(UnspecifiedValueExp<C> uv)
public java.lang.Boolean visitIntegerLiteralExp(IntegerLiteralExp<C> il)
public java.lang.Boolean visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> unl)
public java.lang.Boolean visitRealLiteralExp(RealLiteralExp<C> rl)
public java.lang.Boolean visitStringLiteralExp(StringLiteralExp<C> sl)
public java.lang.Boolean visitBooleanLiteralExp(BooleanLiteralExp<C> bl)
public java.lang.Boolean visitLetExp(LetExp<C,PM> l)
public java.lang.Boolean visitIterateExp(IterateExp<C,PM> ie)
public java.lang.Boolean visitIteratorExp(IteratorExp<C,PM> ie)
public java.lang.Boolean visitCollectionLiteralExp(CollectionLiteralExp<C> cl)
public java.lang.Boolean visitCollectionItem(CollectionItem<C> item)
Visitor
public java.lang.Boolean visitCollectionRange(CollectionRange<C> range)
Visitor
public java.lang.Boolean visitTupleLiteralExp(TupleLiteralExp<C,P> tl)
public java.lang.Boolean visitTupleLiteralPart(TupleLiteralPart<C,P> tp)
Visitor
public java.lang.Boolean visitStateExp(StateExp<C,S> s)
Visitor
public java.lang.Boolean visitFeatureCallExp(FeatureCallExp<C> exp)
exp
- the model property call expression to validatepublic java.lang.Boolean visitInvalidLiteralExp(InvalidLiteralExp<C> il)
Visitor
public java.lang.Boolean visitNullLiteralExp(NullLiteralExp<C> il)
Visitor
public java.lang.Boolean visitExpressionInOCL(ExpressionInOCL<C,PM> expression)
Visitor
public java.lang.Boolean visitConstraint(CT constraint)
protected C getOCLType(java.lang.Object metaElement)
metaElement
- a typed meta-elementUMLReflection.getOCLType(Object)