Utility to bootstrap UML implementation. The generated code is available here https://github.com/OpenPonk/uml-metamodel
primitives := 'http://www.omg.org/spec/UML/20131001/PrimitiveTypes.xmi'.
uml := 'http://www.omg.org/spec/UML/20131001/UML.xmi'.
mapping := Dictionary
with: primitives -> (ZnEasy get: primitives) entity readStream contents
with: uml -> (ZnEasy get: uml) entity readStream contents.
result := OPXMIReader readFromMapping: mapping.
xmi := result at: uml.
"or xmi := OPUMLBootstrapGeneratorTest umlSpecs"
generator := OPUMLBootstrapGenerator new.
generator sourceXmi: xmi.
generator classPrefix: 'BootUML'.
generator packageName: 'OP-UML-Bootstrap'.
(CBChangesBrowser changes: generator generateAll) open
reader := OPUMLXMIBootstrapReader new.
reader classPrefix: 'BootUML'.
model := (reader readXmi: xmi) first
generator := OPUMLMetamodelGenerator new.
generator sourceModel: model.
generator classPrefix: 'OPUML'.
generator packageName: 'OP-UML-Metamodel'.
(CBChangesBrowser changes: generator generateAll) open
Metacello new
baseline: 'UMLBootstrapGenerator';
repository: 'github://OpenPonk/uml-bootstrap-generator/repository';
load.