1+ module org.svis.generator.run.city
2+
3+ var outputPath = "./output/city/famix"
4+ //var projectName = "org.svis.generator.run"
5+ //var runtimeProject = "../${projectName}"
6+
7+ Workflow {
8+
9+ bean = org.eclipse.emf.mwe.utils.StandaloneSetup {
10+ platformUri = "../org.svis.generator.run/.."
11+ registerGeneratedEPackage = "org.svis.xtext.famix.FamixPackage"
12+ }
13+
14+ //lazy loading for model
15+ component = org.svis.generator.ResolveLazyComponent {}
16+
17+ // delete unnecessary objects
18+ component = org.svis.generator.famix.JQA2Famix {
19+ modelSlot = "famix"
20+ }
21+
22+ //transformation 1: from FAMIX to CITY
23+ component = org.svis.generator.city.s2m.Famix2City {
24+ modelSlot = "famix"
25+ }
26+
27+ // write metaData
28+ component = org.eclipse.xtext.generator.GeneratorComponent {
29+ register = org.svis.generator.famix.Famix2JSONStandaloneSetup {}
30+ slot = 'metadata'
31+ outlet = {
32+ path = "${outputPath}"
33+ }
34+ }
35+
36+ //output 1b: model as *.xml
37+ component = org.eclipse.emf.mwe.utils.Writer {
38+ modelSlot = "CITYwriter"
39+ uri = "${outputPath}/city1.xml"
40+ //cloneSlotContents = true //see http://www.openarchitectureware.org/forum/viewtopic.php?showtopic=5677
41+ }
42+
43+ //transformation 2: from City to City
44+ component = org.svis.generator.city.m2m.City2City {
45+ modelSlot = "CITY"
46+ }
47+
48+ //output 2: model as *.xml
49+ component = org.eclipse.emf.mwe.utils.Writer {
50+ modelSlot = "CITYv2writer"
51+ uri = "${outputPath}/city2.xml"
52+ cloneSlotContents = true //see http://www.openarchitectureware.org/forum/viewtopic.php?showtopic=5677
53+ }
54+
55+ //transformation 3: from City to X3D
56+ component = org.eclipse.xtext.generator.GeneratorComponent {
57+ register = org.svis.generator.city.m2t.CityOutputStandaloneSetup {}
58+ slot = 'CITYv2'
59+ outlet = {
60+ path = "${outputPath}"
61+ }
62+ }
63+ }
0 commit comments