11package fr .softeam .cameldesigner .conversion .process .reverse ;
22
33import java .util .Map ;
4- import camel .core .MeasurableAttribute ;
5- import camel .metric .CompositeMetric ;
6- import camel .metric .CompositeMetricContext ;
7- import camel .metric .MetricTemplate ;
8- import camel .metric .MetricVariable ;
9- import camel .metric .ObjectContext ;
10- import camel .metric .RawMetric ;
11- import camel .metric .RawMetricContext ;
12- import camel .metric .Schedule ;
13- import camel .metric .Sensor ;
14- import camel .metric .Window ;
4+ import camel .metric .WindowSizeType ;
5+ import camel .metric .WindowType ;
156import fr .softeam .cameldesigner .api .camelcore .infrastructure .modelelement .CamelElement ;
7+ import fr .softeam .cameldesigner .api .camelcore .standard .class_ .MeasurableAttribute ;
8+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .CompositeMetric ;
9+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .CompositeMetricContext ;
10+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .MetricTemplate ;
11+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .MetricVariable ;
12+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .ObjectContext ;
13+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .RawMetric ;
14+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .RawMetricContext ;
15+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .Schedule ;
16+ import fr .softeam .cameldesigner .api .metricmodel .standard .class_ .Window ;
17+ import fr .softeam .cameldesigner .api .typemodel .standard .datatype .ValueType ;
18+ import fr .softeam .cameldesigner .api .unitmodel .standard .datatype .Unit ;
1619import org .eclipse .emf .cdo .CDOObject ;
1720import org .modelio .metamodel .uml .infrastructure .ModelElement ;
1821
@@ -23,71 +26,78 @@ public ReverseProcessMetricType(ModelElement umlElementParent, Map<CDOObject, Ca
2326
2427 @ Override
2528 protected CamelElement switchReverse (CDOObject element ) {
26- if (element instanceof MeasurableAttribute ) {
27- return reverse ((MeasurableAttribute )element );
28- } else if (element instanceof RawMetricContext ) {
29- return reverse ((RawMetricContext )element );
30- } else if (element instanceof CompositeMetricContext ) {
31- return reverse ((CompositeMetricContext )element );
32- } else if (element instanceof ObjectContext ) {
33- return reverse ((ObjectContext )element );
34- } else if (element instanceof RawMetric ) {
35- return reverse ((RawMetric )element );
36- } else if (element instanceof CompositeMetric ) {
37- return reverse ((CompositeMetric )element );
38- } else if (element instanceof MetricVariable ) {
39- return reverse ((MetricVariable )element );
40- } else if (element instanceof Window ) {
41- return reverse ((Window )element );
42- } else if (element instanceof Schedule ) {
43- return reverse ((Schedule )element );
44- } else if (element instanceof Sensor ) {
45- return reverse ((Sensor )element );
46- } else if (element instanceof MetricTemplate ) {
47- return reverse ((MetricTemplate )element );
29+ if (element instanceof camel . core . MeasurableAttribute ) {
30+ return reverse ((camel . core . MeasurableAttribute )element );
31+ } else if (element instanceof camel . metric . RawMetricContext ) {
32+ return reverse ((camel . metric . RawMetricContext )element );
33+ } else if (element instanceof camel . metric . CompositeMetricContext ) {
34+ return reverse ((camel . metric . CompositeMetricContext )element );
35+ } else if (element instanceof camel . metric . ObjectContext ) {
36+ return reverse ((camel . metric . ObjectContext )element );
37+ } else if (element instanceof camel . metric . RawMetric ) {
38+ return reverse ((camel . metric . RawMetric )element );
39+ } else if (element instanceof camel . metric . CompositeMetric ) {
40+ return reverse ((camel . metric . CompositeMetric )element );
41+ } else if (element instanceof camel . metric . MetricVariable ) {
42+ return reverse ((camel . metric . MetricVariable )element );
43+ } else if (element instanceof camel . metric . Window ) {
44+ return reverse ((camel . metric . Window )element );
45+ } else if (element instanceof camel . metric . Schedule ) {
46+ return reverse ((camel . metric . Schedule )element );
47+ } else if (element instanceof camel . metric . Sensor ) {
48+ return reverse ((camel . metric . Sensor )element );
49+ } else if (element instanceof camel . metric . MetricTemplate ) {
50+ return reverse ((camel . metric . MetricTemplate )element );
4851 }
4952 return null ;
5053 }
5154
52- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . MetricTemplate reverse (MetricTemplate element ) {
53- fr . softeam . cameldesigner . api . metricmodel . standard . class_ . MetricTemplate metricTemplateProxy = fr . softeam . cameldesigner . api . metricmodel . standard . class_ . MetricTemplate .create ();
55+ private MetricTemplate reverse (camel . metric . MetricTemplate element ) {
56+ MetricTemplate metricTemplateProxy = MetricTemplate .create ();
5457
5558 if (element .getAttribute () != null ) {
5659 MeasurableAttribute referencedMeasurableAttribute = retrievReferencedMeasurableAttribute (element .getAttribute ());
5760 if (referencedMeasurableAttribute != null ) {
58- // TODO
61+ metricTemplateProxy . setAttribute ( referencedMeasurableAttribute );
5962 }
6063 }
6164
6265 if (element .getUnit () != null ) {
63- // TODO
66+ Unit referencedUnit = retrieveReferencedUnit (element .getUnit ());
67+ if (referencedUnit != null ) {
68+ metricTemplateProxy .setUnit (referencedUnit );
69+ }
6470 }
6571
6672 if (element .getValueType () != null ) {
6773 // TODO
74+ //ValueType referencedValueType = retrievReferencedValueType(element.getUnit());
75+ // if(referencedValueType != null) {
76+ // metricTemplateProxy.set(referencedValueType);
77+ // }
6878 }
6979 metricTemplateProxy .setValueDirection (Short .toString (element .getValueDirection ()));
7080 return metricTemplateProxy ;
7181 }
7282
73- private fr .softeam .cameldesigner .api .metricmodel .standard .component .Sensor reverse (Sensor element ) {
83+ private fr .softeam .cameldesigner .api .metricmodel .standard .component .Sensor reverse (camel . metric . Sensor element ) {
7484 fr .softeam .cameldesigner .api .metricmodel .standard .component .Sensor sensorProxy = fr .softeam .cameldesigner .api .metricmodel .standard .component .Sensor .create () ; //sensorProxy
7585 sensorProxy .setIsPush (Boolean .toString (element .isIsPush ()));
7686 sensorProxy .setConfiguration (element .getConfiguration ());
7787 return sensorProxy ;
7888 }
7989
80- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . Schedule reverse (Schedule element ) {
81- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . Schedule .create ();
90+ private Schedule reverse (camel . metric . Schedule element ) {
91+ return Schedule .create ();
8292 }
8393
84- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . Window reverse (Window element ) {
85- fr . softeam . cameldesigner . api . metricmodel . standard . class_ . Window windowProxy = fr . softeam . cameldesigner . api . metricmodel . standard . class_ . Window .create ();
94+ private Window reverse (camel . metric . Window element ) {
95+ Window windowProxy = Window .create ();
8696
8797 windowProxy .setMeasurementSize (Long .toString (element .getMeasurementSize ()));
8898
8999 if (element .getSizeType () != null ) {
90- // TODO
100+ windowProxy . setWindowType ( element . getSizeType (). toString ());
91101 }
92102
93103 windowProxy .setTimeSize (Long .toString (element .getTimeSize ()));
@@ -98,45 +108,72 @@ private fr.softeam.cameldesigner.api.metricmodel.standard.class_.Window reverse(
98108 }
99109
100110 if (element .getWindowType () != null ) {
101- // TODO
111+ windowProxy . setWindowType ( element . getWindowType (). toString ());
102112 }
103113 return windowProxy ;
104114 }
105115
106- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . MetricVariable reverse (MetricVariable element ) {
107- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . MetricVariable .create ();
116+ private MetricVariable reverse (camel . metric . MetricVariable element ) {
117+ return MetricVariable .create ();
108118 }
109119
110- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . CompositeMetric reverse (CompositeMetric element ) {
111- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . CompositeMetric .create ();
120+ private CompositeMetric reverse (camel . metric . CompositeMetric element ) {
121+ return CompositeMetric .create ();
112122 }
113123
114- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . RawMetric reverse (RawMetric element ) {
124+ private RawMetric reverse (camel . metric . RawMetric element ) {
115125 // TODO add dependencies
116- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . RawMetric .create ();
126+ return RawMetric .create ();
117127 }
118128
119- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . ObjectContext reverse (ObjectContext element ) {
120- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . ObjectContext .create ();
129+ private ObjectContext reverse (camel . metric . ObjectContext element ) {
130+ return ObjectContext .create ();
121131 }
122132
123- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . CompositeMetricContext reverse (CompositeMetricContext element ) {
133+ private CompositeMetricContext reverse (camel . metric . CompositeMetricContext element ) {
124134 // TODO add dependencies
125- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . CompositeMetricContext .create ();
135+ return CompositeMetricContext .create ();
126136 }
127137
128- private fr . softeam . cameldesigner . api . metricmodel . standard . class_ . RawMetricContext reverse (RawMetricContext element ) {
129- return fr . softeam . cameldesigner . api . metricmodel . standard . class_ . RawMetricContext .create ();
138+ private RawMetricContext reverse (camel . metric . RawMetricContext element ) {
139+ return RawMetricContext .create ();
130140 }
131141
132- private fr . softeam . cameldesigner . api . camelcore . standard . class_ . MeasurableAttribute reverse (MeasurableAttribute element ) {
142+ private MeasurableAttribute reverse (camel . core . MeasurableAttribute element ) {
133143 fr .softeam .cameldesigner .api .camelcore .standard .class_ .MeasurableAttribute measurableAttributeProxy = fr .softeam .cameldesigner .api .camelcore .standard .class_ .MeasurableAttribute .create ();
134144 return measurableAttributeProxy ;
135145 }
136146
137- private MeasurableAttribute retrievReferencedMeasurableAttribute (MeasurableAttribute attribute ) {
147+ private MeasurableAttribute retrievReferencedMeasurableAttribute (camel .core .MeasurableAttribute measurableAttribute ) {
148+ MeasurableAttribute referencedMeasurableAttribute = null ;
149+ if (this .processedCamelElements .containsKey (measurableAttribute )) {
150+ referencedMeasurableAttribute = (MeasurableAttribute ) this .processedCamelElements .get (measurableAttribute );
151+ } else {
152+ referencedMeasurableAttribute = (MeasurableAttribute ) this .switchReverse (measurableAttribute );
153+ referencedMeasurableAttribute .getElement ().setName (measurableAttribute .getName ());
154+ this .processedCamelElements .put (measurableAttribute , referencedMeasurableAttribute );
155+ }
156+ return referencedMeasurableAttribute ;
157+ }
158+
159+ private ValueType retrieveReferencedValueType (camel .unit .Unit unit ) {
160+ // TODO Auto-generated method stub
161+ return null ;
162+ }
163+
164+ private Unit retrieveReferencedUnit (camel .unit .Unit unit ) {
138165 // TODO Auto-generated method stub
139166 return null ;
140167 }
141168
169+
170+ // private String retrieveWindowType(WindowType windowType) {
171+ // // TODO Auto-generated method stub
172+ // return null;
173+ // }
174+ //
175+ // private String retrieveSizeType(WindowSizeType sizeType) {
176+ // // TODO Auto-generated method stub
177+ // return null;
178+ // }
142179}
0 commit comments