ModelFacade
is the interface used by the
type checker to access model information.
The following sequence diagram gives an example of how the type checker uses
interfaces of this package to get the necessary model information to check the
constraint
context Person inv: managedCompanies.employees->includes(self)
.
SomeAny and SomeModelFacade stand for implementions of the respective interfaces.
setOfCompany and setOfPerson are instances of {@link
tudresden.ocl.check.types.Collection}.
An overview of the type interfaces is shown in the following diagram:
ReflectionFacade
is an implementation of this interface that
queries compiled Java classes via reflection to get model information.
TestModelFacade
in the subpackage testfacade
is a dummy implementation that is
used for testing and demonstration purposes. Other implementations are backed
by information from XMI files or Argo/UMLs repository. (The sourcecode of the
latter is part of Argo.)