|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.ocl.OCL<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject>
org.eclipse.ocl.uml.OCL
public class OCL
Convenient subclass of the OCL
façade that binds the
UML metamodel to the superclass's generic type parameters. This frees
client code from the long list of parameter substitutions. This subclass
also provides a shortcut to creating an OCL
on a
UMLEnvironmentFactory
instance using its own resource set.
The parser environments created by the UML environment factory support OCL
expressions at both the metamodel (M2) and user model (M1) levels. For
user model constraints, use the classifier in the model as the context
classifier in invocations of this OCL
or an OCLHelper
created by it. For metamodel OCL (used, for example, to query the user
model, itself) use the metaclass of any element in the user model as the
context classifier. A convenient way to obtain this metaclass is via the
OCLUMLUtil#getMetaclass(org.eclipse.uml2.uml.Element)
method.
UMLEnvironmentFactory
Nested Class Summary | |
---|---|
static interface |
OCL.Helper
Convenient interface aliasing the type parameter substitutions for the UML environment, for ease of typing. |
static interface |
OCL.Query
Convenient interface aliasing the type parameter substitutions for the UML environment, for ease of typing. |
Constructor Summary | |
---|---|
protected |
OCL(Environment<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> env)
Initializes me with an initial environment for the UML metamodel. |
protected |
OCL(EnvironmentFactory<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> envFactory)
Initializes me with an environment factory for the UML metamodel. |
protected |
OCL(EnvironmentFactory<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> envFactory,
Resource resource)
Initializes me with an environment factory for the UML metamodel and a resource from which to load my root environment. |
Method Summary | |
---|---|
OCL.Helper |
createOCLHelper()
Creates a new OCLHelper instance for convenient parsing of
embedded constraints and query expressions in this environment.
The return type is narrowed to the UML binding for the generic
OCLHelper<C, O, P, CT> type. |
OCL.Query |
createQuery(Constraint constraint)
Creates a new Query encapsulating a constraint with the current
environment and extent map.
The return type is narrowed to the UML binding for the generic
Query<C, CLS, E> type. |
static java.lang.String |
initialize(ResourceSet resourceSet)
Initialize registries to support OCL and UML usage. |
static OCL |
newInstance()
Creates a new OCL using a new UML environment factory
that uses a private resource set and the global package registry for
looking up Ecore representations of UML packages. |
static OCL |
newInstance(EnvironmentFactory<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> envFactory,
Resource resource)
Creates a new OCL using the specified UML environment
factory and a resource from which to load the initial environment. |
static OCL |
newInstance(ResourceSet rset)
Creates a new OCL using a new UML environment factory
that uses the specified resource set and its local package registry for
looking up Ecore representations of UML packages. |
Methods inherited from class org.eclipse.ocl.OCL |
---|
check, check, createAnalyzer, dispose, evaluate, getConstraints, getEnvironment, getEvaluationEnvironment, getEvaluationProblems, getExtentMap, getParserRepairCount, getProblems, isEvaluationTracingEnabled, isInvalid, isParseTracingEnabled, newInstance, newInstance, newInstance, parse, setEvaluationTracingEnabled, setExtentMap, setParserRepairCount, setParseTracingEnabled, validate, validate |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected OCL(EnvironmentFactory<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> envFactory)
envFactory
- my environment factoryprotected OCL(Environment<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> env)
env
- my root environmentprotected OCL(EnvironmentFactory<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> envFactory, Resource resource)
envFactory
- my environment factoryresource
- my persisted root environmentMethod Detail |
---|
public static java.lang.String initialize(ResourceSet resourceSet)
A null resourceSet may be provided to initialize the global package registry and global URI mapping registry.
A non-null resourceSet may be provided to identify specific package and global URI mapping registries.
The locations of the org.eclipse.ocl.uml and org.eclipse.uml2.uml.resources plugins must be identified by the correspondingly named Java properties. A standalone application command line might do this by incorporating
-Dorg.eclipse.ocl.uml=C:/Eclipse/plugins/org.eclipse.ocl.uml
-Dorg.eclipse.uml2.uml.resources=C:/Eclipse/plugins/org.eclipse.uml2.uml.resources
This method is used to configure the ResourceSet used to load the OCL Standard Library.
resourceSet
- to be initialized or null for global initialization
public static OCL newInstance()
OCL
using a new UML environment factory
that uses a private resource set and the global package registry for
looking up Ecore representations of UML packages.
OCL
public static OCL newInstance(ResourceSet rset)
OCL
using a new UML environment factory
that uses the specified resource set and its local package registry for
looking up Ecore representations of UML packages.
rset
- a resource set containing UML models
OCL
public static OCL newInstance(EnvironmentFactory<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject> envFactory, Resource resource)
OCL
using the specified UML environment
factory and a resource from which to load the initial environment.
envFactory
- an environment factory for UMLresource
- the resource containing a persistent environment
(which may be empty for an initially empty environment)
OCL
public OCL.Helper createOCLHelper()
OCLHelper
instance for convenient parsing of
embedded constraints and query expressions in this environment. The
helper is particulary useful for parsing constraints embedded in the
model, in which case the context of a constraint is determined by its
placement and the textual context declarations are unnecessary.
The return type is narrowed to the UML binding for the generic OCLHelper<C, O, P, CT> type.
createOCLHelper
in class OCL<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject>
public OCL.Query createQuery(Constraint constraint)
Query
encapsulating a constraint with the current
environment and extent map. This is convenient for repeated evaluation of
constraints and for filtering objects using the constraint expression.
Every query maintains its own evaluation environment, which enables concurrent evaluation (where this may be safe in an EMF-based model) and different bindings for client-supplied "global" variables.
The return type is narrowed to the UML binding for the generic Query<C, CLS, E> type.
createQuery
in class OCL<java.lang.Package,Classifier,Operation,Property,EnumerationLiteral,Parameter,State,CallOperationAction,SendSignalAction,Constraint,java.lang.Class,EObject>
constraint
- the OCL constraint
OCL.createQuery(OCLExpression)
|
Copyright 2002, 2007 IBM Corporation and others. All Rights Reserved. |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |