1
1
package com .ericsson .eiffel .remrem .semantics ;
2
2
3
3
4
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ACTIVITY_CANCELED ;
4
5
import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ACTIVITY_FINISHED ;
6
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ACTIVITY_STARTED ;
7
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ACTIVITY_TRIGGERED ;
8
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ANNOUNCEMENT_PUBLISHED ;
9
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ARTIFACT_CREATED ;
5
10
import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ARTIFACT_PUBLISHED ;
11
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .COMPOSITION_DEFINED ;
12
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .CONFIDENCELEVEL_MODIFIED ;
13
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .CONFIGURATION_APPLIED ;
14
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .ENVIRONMENT_DEFINED ;
15
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .FLOWCONTEXT_DEFINED ;
16
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .SOURCECHANGE_CREATED ;
17
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .SOURCECHANGE_SUBMITTED ;
18
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .TESTCASE_FINISHED ;
19
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .TESTCASE_STARTED ;
20
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .TESTSUITE_FINISHED ;
21
+ import static com .ericsson .eiffel .remrem .semantics .EiffelEventType .TESTSUITE_STARTED ;
6
22
7
23
import java .util .HashMap ;
8
24
import java .util .Map ;
14
30
15
31
import com .ericsson .eiffel .remrem .protocol .MsgService ;
16
32
import com .ericsson .eiffel .remrem .protocol .ValidationResult ;
17
- import com .ericsson .eiffel .remrem .semantics .events .EiffelActivityFinishedEvent ;
18
- import com .ericsson .eiffel .remrem .semantics .events .EiffelArtifactPublishedEvent ;
19
- import com .ericsson .eiffel .remrem .semantics .events .Event ;
20
33
import com .ericsson .eiffel .remrem .semantics .factory .EiffelOutputValidatorFactory ;
21
34
import com .ericsson .eiffel .remrem .semantics .validator .EiffelValidationException ;
22
35
import com .ericsson .eiffel .remrem .semantics .validator .EiffelValidator ;
36
+ import com .ericsson .eiffel .semantics .events .EiffelActivityCanceledEvent ;
37
+ import com .ericsson .eiffel .semantics .events .EiffelActivityFinishedEvent ;
38
+ import com .ericsson .eiffel .semantics .events .EiffelActivityStartedEvent ;
39
+ import com .ericsson .eiffel .semantics .events .EiffelActivityTriggeredEvent ;
40
+ import com .ericsson .eiffel .semantics .events .EiffelAnnouncementPublishedEvent ;
41
+ import com .ericsson .eiffel .semantics .events .EiffelArtifactCreatedEvent ;
42
+ import com .ericsson .eiffel .semantics .events .EiffelArtifactPublishedEvent ;
43
+ import com .ericsson .eiffel .semantics .events .EiffelCompositionDefinedEvent ;
44
+ import com .ericsson .eiffel .semantics .events .EiffelConfidenceLevelModifiedEvent ;
45
+ import com .ericsson .eiffel .semantics .events .EiffelConfigurationAppliedEvent ;
46
+ import com .ericsson .eiffel .semantics .events .EiffelEnvironmentDefinedEvent ;
47
+ import com .ericsson .eiffel .semantics .events .EiffelFlowContextDefinedEvent ;
48
+ import com .ericsson .eiffel .semantics .events .EiffelSourceChangeCreatedEvent ;
49
+ import com .ericsson .eiffel .semantics .events .EiffelSourceChangeSubmittedEvent ;
50
+ import com .ericsson .eiffel .semantics .events .EiffelTestCaseFinishedEvent ;
51
+ import com .ericsson .eiffel .semantics .events .EiffelTestCaseStartedEvent ;
52
+ import com .ericsson .eiffel .semantics .events .EiffelTestSuiteFinishedEvent ;
53
+ import com .ericsson .eiffel .semantics .events .EiffelTestSuiteStartedEvent ;
54
+ import com .ericsson .eiffel .semantics .events .Event ;
23
55
import com .google .gson .Gson ;
24
56
import com .google .gson .JsonObject ;
25
57
import com .google .gson .JsonParser ;
@@ -38,15 +70,32 @@ public class SemanticsService implements MsgService{
38
70
39
71
public static final Logger log = LoggerFactory .getLogger (SemanticsService .class );
40
72
41
- private Gson gson = new Gson ();
42
- private Map <EiffelEventType , Class <? extends Event >> eventTypes ;
43
-
44
- public SemanticsService () {
73
+ private static Gson gson = new Gson ();
74
+ private static Map <EiffelEventType , Class <? extends Event >> eventTypes =SemanticsService .eventType ();
75
+
76
+ public static Map <EiffelEventType , Class <? extends Event >> eventType ()
77
+ {
45
78
eventTypes = new HashMap <>();
46
79
eventTypes .put (ARTIFACT_PUBLISHED , EiffelArtifactPublishedEvent .class );
47
80
eventTypes .put (ACTIVITY_FINISHED , EiffelActivityFinishedEvent .class );
81
+ eventTypes .put (ARTIFACT_CREATED , EiffelArtifactCreatedEvent .class );
82
+ eventTypes .put (ACTIVITY_CANCELED , EiffelActivityCanceledEvent .class );
83
+ eventTypes .put (ACTIVITY_STARTED , EiffelActivityStartedEvent .class );
84
+ eventTypes .put (ACTIVITY_TRIGGERED , EiffelActivityTriggeredEvent .class );
85
+ eventTypes .put (CONFIDENCELEVEL_MODIFIED , EiffelConfidenceLevelModifiedEvent .class );
86
+ eventTypes .put (ANNOUNCEMENT_PUBLISHED , EiffelAnnouncementPublishedEvent .class );
87
+ eventTypes .put (COMPOSITION_DEFINED , EiffelCompositionDefinedEvent .class );
88
+ eventTypes .put (CONFIGURATION_APPLIED , EiffelConfigurationAppliedEvent .class );
89
+ eventTypes .put (ENVIRONMENT_DEFINED , EiffelEnvironmentDefinedEvent .class );
90
+ eventTypes .put (FLOWCONTEXT_DEFINED , EiffelFlowContextDefinedEvent .class );
91
+ eventTypes .put (SOURCECHANGE_CREATED , EiffelSourceChangeCreatedEvent .class );
92
+ eventTypes .put (SOURCECHANGE_SUBMITTED , EiffelSourceChangeSubmittedEvent .class );
93
+ eventTypes .put (TESTCASE_FINISHED , EiffelTestCaseFinishedEvent .class );
94
+ eventTypes .put (TESTCASE_STARTED , EiffelTestCaseStartedEvent .class );
95
+ eventTypes .put (TESTSUITE_FINISHED , EiffelTestSuiteFinishedEvent .class );
96
+ eventTypes .put (TESTSUITE_STARTED , EiffelTestSuiteStartedEvent .class );
97
+ return eventTypes ;
48
98
}
49
-
50
99
@ Override
51
100
public String generateMsg (String msgType , JsonObject bodyJson ){
52
101
EiffelEventType eiffelType = EiffelEventType .fromString (msgType );
@@ -59,10 +108,9 @@ public String generateMsg(String msgType, JsonObject bodyJson){
59
108
JsonObject msgNodes = bodyJson .get (MSG_PARAMS ).getAsJsonObject ();
60
109
JsonObject eventNodes = bodyJson .get (EVENT_PARAMS ).getAsJsonObject ();
61
110
62
- Event event = createEvent (eventNodes , eventType );
63
- event .generateMeta (msgType , msgNodes );
111
+ Event event = eventCreation (msgType , eventType , msgNodes , eventNodes );
64
112
65
- String result = gson .toJson (event );
113
+ String result = gson .toJson (event );
66
114
try {
67
115
outputValidate (eiffelType , result );
68
116
} catch (EiffelValidationException e ) {
@@ -71,9 +119,16 @@ public String generateMsg(String msgType, JsonObject bodyJson){
71
119
}
72
120
return result ;
73
121
}
122
+ private static Event eventCreation (String msgType , Class <? extends Event > eventType , JsonObject msgNodes ,
123
+ JsonObject eventNodes ) {
124
+ Event event = createEvent (eventNodes , eventType );
125
+ event .generateMeta (msgType , msgNodes );
126
+ event .setMeta (event .meta );
127
+ return event ;
128
+ }
74
129
75
- private Event createEvent (JsonObject eventNodes , Class <? extends Event > eventType ) {
76
- return gson .fromJson (eventNodes , eventType );
130
+ private static Event createEvent (JsonObject eventNodes , Class <? extends Event > eventType ) {
131
+ return gson .fromJson (eventNodes , eventType );
77
132
}
78
133
79
134
private String createErrorResponse (final String message , final String cause ){
0 commit comments