insights to emf an overview of emf in context of moin
TRANSCRIPT
Insights to EMF
An overview of EMF in context of MOIN
EMF – Eclipse Modeling Framework
2
3
Memory Management in EMF
central concept: Resource Sets
Persistence via serialization to files
CDO Extension: store models in databases
stress tests with standard EMF
1,5 GB Heap Space
Using dynamic EMF (no code generation, models in memory)
Out of Memory Error at:
2.7 million instances of
1.7 million classes in meta modelAClass NextClass
0..*
0..*Attribute:Int
EMF Event Handling
adapter mechanism attach listeners to specific
model elements
workbench events register for changes of
ressources
4
MOIN Event Handling to EMF
ModelChangeEvents Adapters
PartitionChangeEvents Workbench
PreChangeEvents
EventFilter
5
OCL in EMF
Different OCL Interpreters
Define constraints on metamodels
interpret OCL constraints with EMF Queries
emfQueryStatement =
new SELECT(
new FROM(selectedEObjects),
new WHERE(
new EObjectAttributeValueCondition(
RMPLibraryPackage.eINSTANCE. PERSON__AGE,
new NumberCondition<Integer>(25) )
)
)
6
EmfIndex
■ indexing EMF-based models and instances
■ collection of index data
■ persisting index data
■ querying without loading any EMF resources
■ Synchronization
7