Package org.eclipse.emf.cdo.server.ocl
Class OCLQueryHandler
- java.lang.Object
-
- org.eclipse.emf.cdo.server.ocl.OCLQueryHandler
-
- All Implemented Interfaces:
IQueryHandler
public class OCLQueryHandler extends java.lang.Object implements IQueryHandler
Aquery handlerthat evaluates OCL query expressions.- Author:
- Eike Stepper
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classOCLQueryHandler.ContextParameterAn abstraction of theclassifierand/orobejctof an OCL query context parameter.static classOCLQueryHandler.FactoryCreatesOCLQueryHandlerinstances.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringIMPLICIT_ROOT_CLASS_PARAMETERQuery parameter indicating theEClassto set as the implicit root class of the type hierarchy.static java.lang.StringLANGUAGE_NAMEstatic java.lang.StringLAZY_EXTENTS_PARAMETER
-
Constructor Summary
Constructors Constructor Description OCLQueryHandler()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected voidaddEnvironmentVariable(org.eclipse.ocl.Environment<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> environment, org.eclipse.ocl.expressions.Variable<org.eclipse.emf.ecore.EClassifier,?> variable)protected booleanaddResult(java.lang.Object result, IQueryContext context, CDOView view)protected CDOExtentMapcreateExtentMap(CDOView view, CDOChangeSetData changeSetData, IQueryContext context)protected org.eclipse.ocl.expressions.OCLExpression<org.eclipse.emf.ecore.EClassifier>createInitExpression(org.eclipse.ocl.types.OCLStandardLibrary<org.eclipse.emf.ecore.EClassifier> stdLib, CDOPackageRegistry packageRegistry, java.lang.Object value)protected org.eclipse.ocl.OCL<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject>createOCL(CDOView view, CDOExtentMap extentMap)protected org.eclipse.ocl.Query<org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject>createQuery(CDOView view, CDOQueryInfo info, OCLQueryHandler.ContextParameter contextParameter, org.eclipse.ocl.OCL<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> ocl)protected booleancreatesLazyExtents()protected java.lang.Objectevaluate(org.eclipse.ocl.Query<org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> query, org.eclipse.emf.ecore.EObject object)voidexecuteQuery(CDOQueryInfo info, IQueryContext context)Executes thequeryrepresented by the specifiedquery infobypassingthe query results to the query execution engine represented by the specifiedexecution context.protected org.eclipse.emf.ecore.EClassifiergetArbitraryContextClassifier(CDOPackageRegistry packageRegistry)Deprecated.As of 4.2 no longer supported.protected OCLQueryHandler.ContextParametergetContextParameter(CDOQueryInfo info, CDOView view)protected org.eclipse.emf.ecore.EClassgetImplicitRootClass()protected CDORevisiongetRevision(org.eclipse.emf.ecore.EObject object, CDOView view)protected voidinitEnvironment(org.eclipse.ocl.Environment<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> environment, CDOPackageRegistry packageRegistry, java.util.Map<java.lang.String,java.lang.Object> parameters)protected booleanisOCLQueryParameter(java.lang.String name)static voidprepareContainer(org.eclipse.net4j.util.container.IManagedContainer container)protected booleanreadParameter(java.util.Map<java.lang.String,?> queryParameters, java.lang.String name, boolean defaultValue)protected <T> TreadParameter(java.util.Map<java.lang.String,?> queryParameters, java.lang.String name, java.lang.Class<T> type, T defaultValue)protected voidreadParameters(java.util.Map<java.lang.String,?> queryParameters)protected voidsetOCLQueryParameters(java.util.Map<java.lang.String,java.lang.Object> parameters, org.eclipse.ocl.Query<org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> query)
-
-
-
Field Detail
-
LANGUAGE_NAME
public static final java.lang.String LANGUAGE_NAME
- See Also:
- Constant Field Values
-
LAZY_EXTENTS_PARAMETER
public static final java.lang.String LAZY_EXTENTS_PARAMETER
- Since:
- 4.1
- See Also:
- Constant Field Values
-
IMPLICIT_ROOT_CLASS_PARAMETER
public static final java.lang.String IMPLICIT_ROOT_CLASS_PARAMETER
Query parameter indicating theEClassto set as the implicit root class of the type hierarchy. The default isnull.- Since:
- 4.2
- See Also:
- Constant Field Values
-
-
Method Detail
-
executeQuery
public void executeQuery(CDOQueryInfo info, IQueryContext context)
Description copied from interface:IQueryHandlerExecutes thequeryrepresented by the specifiedquery infobypassingthe query results to the query execution engine represented by the specifiedexecution context.- Specified by:
executeQueryin interfaceIQueryHandler
-
addResult
protected boolean addResult(java.lang.Object result, IQueryContext context, CDOView view)
-
getRevision
protected CDORevision getRevision(org.eclipse.emf.ecore.EObject object, CDOView view)
-
evaluate
protected java.lang.Object evaluate(org.eclipse.ocl.Query<org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> query, org.eclipse.emf.ecore.EObject object)
-
createExtentMap
protected CDOExtentMap createExtentMap(CDOView view, CDOChangeSetData changeSetData, IQueryContext context)
-
createsLazyExtents
protected boolean createsLazyExtents()
-
createOCL
protected org.eclipse.ocl.OCL<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> createOCL(CDOView view, CDOExtentMap extentMap)
- Since:
- 4.2
-
createQuery
protected org.eclipse.ocl.Query<org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> createQuery(CDOView view, CDOQueryInfo info, OCLQueryHandler.ContextParameter contextParameter, org.eclipse.ocl.OCL<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> ocl) throws org.eclipse.ocl.ParserException, org.eclipse.emf.common.util.DiagnosticException
- Throws:
org.eclipse.ocl.ParserExceptionorg.eclipse.emf.common.util.DiagnosticException- Since:
- 4.2
-
getArbitraryContextClassifier
@Deprecated protected org.eclipse.emf.ecore.EClassifier getArbitraryContextClassifier(CDOPackageRegistry packageRegistry)
Deprecated.As of 4.2 no longer supported.
-
initEnvironment
protected void initEnvironment(org.eclipse.ocl.Environment<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> environment, CDOPackageRegistry packageRegistry, java.util.Map<java.lang.String,java.lang.Object> parameters)
-
getImplicitRootClass
protected org.eclipse.emf.ecore.EClass getImplicitRootClass()
- Since:
- 4.2
-
createInitExpression
protected org.eclipse.ocl.expressions.OCLExpression<org.eclipse.emf.ecore.EClassifier> createInitExpression(org.eclipse.ocl.types.OCLStandardLibrary<org.eclipse.emf.ecore.EClassifier> stdLib, CDOPackageRegistry packageRegistry, java.lang.Object value)
-
addEnvironmentVariable
protected void addEnvironmentVariable(org.eclipse.ocl.Environment<?,org.eclipse.emf.ecore.EClassifier,?,?,?,?,?,?,?,org.eclipse.ocl.ecore.Constraint,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> environment, org.eclipse.ocl.expressions.Variable<org.eclipse.emf.ecore.EClassifier,?> variable)
-
getContextParameter
protected OCLQueryHandler.ContextParameter getContextParameter(CDOQueryInfo info, CDOView view)
- Since:
- 4.2
-
readParameters
protected void readParameters(java.util.Map<java.lang.String,?> queryParameters)
- Since:
- 4.2
-
readParameter
protected boolean readParameter(java.util.Map<java.lang.String,?> queryParameters, java.lang.String name, boolean defaultValue)- Since:
- 4.2
-
readParameter
protected <T> T readParameter(java.util.Map<java.lang.String,?> queryParameters, java.lang.String name, java.lang.Class<T> type, T defaultValue)- Since:
- 4.2
-
setOCLQueryParameters
protected void setOCLQueryParameters(java.util.Map<java.lang.String,java.lang.Object> parameters, org.eclipse.ocl.Query<org.eclipse.emf.ecore.EClassifier,org.eclipse.emf.ecore.EClass,org.eclipse.emf.ecore.EObject> query)- Since:
- 4.2
-
isOCLQueryParameter
protected boolean isOCLQueryParameter(java.lang.String name)
- Since:
- 4.2
-
prepareContainer
public static void prepareContainer(org.eclipse.net4j.util.container.IManagedContainer container)
-
-