28
28
import org .apache .gravitino .exceptions .NoSuchModelException ;
29
29
import org .apache .gravitino .exceptions .NoSuchModelVersionException ;
30
30
import org .apache .gravitino .exceptions .NoSuchSchemaException ;
31
+ import org .apache .gravitino .listener .api .event .DeleteModelFailureEvent ;
31
32
import org .apache .gravitino .listener .api .event .DeleteModelPreEvent ;
33
+ import org .apache .gravitino .listener .api .event .DeleteModelVersionFailureEvent ;
32
34
import org .apache .gravitino .listener .api .event .DeleteModelVersionPreEvent ;
35
+ import org .apache .gravitino .listener .api .event .GetModelFailureEvent ;
33
36
import org .apache .gravitino .listener .api .event .GetModelPreEvent ;
37
+ import org .apache .gravitino .listener .api .event .GetModelVersionFailureEvent ;
34
38
import org .apache .gravitino .listener .api .event .GetModelVersionPreEvent ;
39
+ import org .apache .gravitino .listener .api .event .LinkModelVersionFailureEvent ;
35
40
import org .apache .gravitino .listener .api .event .LinkModelVersionPreEvent ;
41
+ import org .apache .gravitino .listener .api .event .ListModelFailureEvent ;
36
42
import org .apache .gravitino .listener .api .event .ListModelPreEvent ;
43
+ import org .apache .gravitino .listener .api .event .ListModelVersionFailureEvent ;
37
44
import org .apache .gravitino .listener .api .event .ListModelVersionPreEvent ;
45
+ import org .apache .gravitino .listener .api .event .RegisterAndLinkModelFailureEvent ;
38
46
import org .apache .gravitino .listener .api .event .RegisterAndLinkModelPreEvent ;
47
+ import org .apache .gravitino .listener .api .event .RegisterModelFailureEvent ;
39
48
import org .apache .gravitino .listener .api .event .RegisterModelPreEvent ;
40
49
import org .apache .gravitino .listener .api .info .ModelInfo ;
41
50
import org .apache .gravitino .listener .api .info .ModelVersionInfo ;
@@ -70,15 +79,15 @@ public ModelEventDispatcher(EventBus eventBus, ModelDispatcher dispatcher) {
70
79
@ Override
71
80
public Model registerModel (NameIdentifier ident , String comment , Map <String , String > properties )
72
81
throws NoSuchSchemaException , ModelAlreadyExistsException {
82
+ String user = PrincipalUtils .getCurrentUserName ();
73
83
ModelInfo registerRequest = new ModelInfo (ident .name (), properties , comment );
74
- eventBus .dispatchEvent (
75
- new RegisterModelPreEvent (PrincipalUtils .getCurrentUserName (), ident , registerRequest ));
84
+ eventBus .dispatchEvent (new RegisterModelPreEvent (user , ident , registerRequest ));
76
85
try {
77
86
Model model = dispatcher .registerModel (ident , comment , properties );
78
87
// TODO: ModelEvent
79
88
return model ;
80
89
} catch (Exception e ) {
81
- // TODO: failureEvent
90
+ eventBus . dispatchEvent ( new RegisterModelFailureEvent ( user , ident , e , registerRequest ));
82
91
throw e ;
83
92
}
84
93
}
@@ -96,59 +105,63 @@ public Model registerModel(
96
105
ModelInfo registerModelRequest = new ModelInfo (ident .name (), properties , comment );
97
106
ModelVersionInfo linkModelVersionRequest =
98
107
new ModelVersionInfo (uri , comment , properties , aliases );
108
+ String user = PrincipalUtils .getCurrentUserName ();
99
109
100
110
RegisterAndLinkModelPreEvent registerAndLinkModelPreEvent =
101
111
new RegisterAndLinkModelPreEvent (
102
- PrincipalUtils .getCurrentUserName (),
103
- ident ,
104
- registerModelRequest ,
105
- linkModelVersionRequest );
112
+ user , ident , registerModelRequest , linkModelVersionRequest );
106
113
eventBus .dispatchEvent (registerAndLinkModelPreEvent );
107
114
try {
108
115
// TODO: ModelEvent
109
116
return dispatcher .registerModel (ident , uri , aliases , comment , properties );
110
117
} catch (Exception e ) {
118
+ eventBus .dispatchEvent (
119
+ new RegisterAndLinkModelFailureEvent (
120
+ user , ident , e , registerModelRequest , linkModelVersionRequest ));
111
121
throw e ;
112
122
}
113
123
}
114
124
115
125
/** {@inheritDoc} */
116
126
@ Override
117
127
public Model getModel (NameIdentifier ident ) throws NoSuchModelException {
118
- eventBus .dispatchEvent (new GetModelPreEvent (PrincipalUtils .getCurrentUserName (), ident ));
128
+ String user = PrincipalUtils .getCurrentUserName ();
129
+ eventBus .dispatchEvent (new GetModelPreEvent (user , ident ));
119
130
try {
120
131
Model model = dispatcher .getModel (ident );
121
132
// TODO: ModelEvent
122
133
return model ;
123
134
} catch (Exception e ) {
124
- // TODO: failureEvent
135
+ eventBus . dispatchEvent ( new GetModelFailureEvent ( user , ident , e ));
125
136
throw e ;
126
137
}
127
138
}
128
139
129
140
/** {@inheritDoc} */
130
141
@ Override
131
142
public boolean deleteModel (NameIdentifier ident ) {
132
- eventBus .dispatchEvent (new DeleteModelPreEvent (PrincipalUtils .getCurrentUserName (), ident ));
143
+ String user = PrincipalUtils .getCurrentUserName ();
144
+ eventBus .dispatchEvent (new DeleteModelPreEvent (user , ident ));
133
145
try {
134
146
// TODO: ModelEvent
135
147
return dispatcher .deleteModel (ident );
136
148
} catch (Exception e ) {
137
- // TODO: failureEvent
149
+ eventBus . dispatchEvent ( new DeleteModelFailureEvent ( user , ident , e ));
138
150
throw e ;
139
151
}
140
152
}
141
153
142
154
/** {@inheritDoc} */
143
155
@ Override
144
156
public NameIdentifier [] listModels (Namespace namespace ) throws NoSuchSchemaException {
145
- eventBus .dispatchEvent (new ListModelPreEvent (PrincipalUtils .getCurrentUserName (), namespace ));
157
+ String user = PrincipalUtils .getCurrentUserName ();
158
+ eventBus .dispatchEvent (new ListModelPreEvent (user , namespace ));
146
159
try {
147
160
NameIdentifier [] models = dispatcher .listModels (namespace );
148
161
// TODO: ModelEvent
149
162
return models ;
150
163
} catch (Exception e ) {
151
- // TODO: failureEvent
164
+ eventBus . dispatchEvent ( new ListModelFailureEvent ( user , namespace , e ));
152
165
throw e ;
153
166
}
154
167
}
@@ -163,13 +176,14 @@ public void linkModelVersion(
163
176
Map <String , String > properties )
164
177
throws NoSuchModelException , ModelVersionAliasesAlreadyExistException {
165
178
ModelVersionInfo linkModelRequest = new ModelVersionInfo (uri , comment , properties , aliases );
166
- eventBus .dispatchEvent (
167
- new LinkModelVersionPreEvent (PrincipalUtils .getCurrentUserName (), ident , linkModelRequest ));
179
+ String user = PrincipalUtils .getCurrentUserName ();
180
+
181
+ eventBus .dispatchEvent (new LinkModelVersionPreEvent (user , ident , linkModelRequest ));
168
182
try {
169
183
dispatcher .linkModelVersion (ident , uri , aliases , comment , properties );
170
184
// TODO: ModelEvent
171
185
} catch (Exception e ) {
172
- // TODO: failureEvent
186
+ eventBus . dispatchEvent ( new LinkModelVersionFailureEvent ( user , ident , e , linkModelRequest ));
173
187
throw e ;
174
188
}
175
189
}
@@ -178,13 +192,14 @@ public void linkModelVersion(
178
192
@ Override
179
193
public ModelVersion getModelVersion (NameIdentifier ident , int version )
180
194
throws NoSuchModelVersionException {
181
- eventBus .dispatchEvent (
182
- new GetModelVersionPreEvent (PrincipalUtils .getCurrentUserName (), ident , null , version ));
195
+ String user = PrincipalUtils .getCurrentUserName ();
196
+
197
+ eventBus .dispatchEvent (new GetModelVersionPreEvent (user , ident , null , version ));
183
198
try {
184
199
// TODO: ModelEvent
185
200
return dispatcher .getModelVersion (ident , version );
186
201
} catch (Exception e ) {
187
- // TODO: failureEvent
202
+ eventBus . dispatchEvent ( new GetModelVersionFailureEvent ( user , ident , e , null , version ));
188
203
throw e ;
189
204
}
190
205
}
@@ -193,59 +208,63 @@ public ModelVersion getModelVersion(NameIdentifier ident, int version)
193
208
@ Override
194
209
public ModelVersion getModelVersion (NameIdentifier ident , String alias )
195
210
throws NoSuchModelVersionException {
196
- eventBus .dispatchEvent (
197
- new GetModelVersionPreEvent (PrincipalUtils .getCurrentUserName (), ident , alias , null ));
211
+ String user = PrincipalUtils .getCurrentUserName ();
212
+
213
+ eventBus .dispatchEvent (new GetModelVersionPreEvent (user , ident , alias , null ));
198
214
try {
199
215
ModelVersion modelVersion = dispatcher .getModelVersion (ident , alias );
200
216
// TODO: ModelEvent
201
217
return modelVersion ;
202
218
} catch (Exception e ) {
203
- // TODO: failureEvent
219
+ eventBus . dispatchEvent ( new GetModelVersionFailureEvent ( user , ident , e , alias , null ));
204
220
throw e ;
205
221
}
206
222
}
207
223
208
224
/** {@inheritDoc} */
209
225
@ Override
210
226
public boolean deleteModelVersion (NameIdentifier ident , int version ) {
211
- eventBus .dispatchEvent (
212
- new DeleteModelVersionPreEvent (PrincipalUtils .getCurrentUserName (), ident , null , version ));
227
+ String user = PrincipalUtils .getCurrentUserName ();
228
+
229
+ eventBus .dispatchEvent (new DeleteModelVersionPreEvent (user , ident , null , version ));
213
230
try {
214
231
boolean isExists = dispatcher .deleteModelVersion (ident , version );
215
232
// TODO: ModelEvent
216
233
return isExists ;
217
234
} catch (Exception e ) {
218
- // TODO: failureEvent
235
+ eventBus . dispatchEvent ( new DeleteModelVersionFailureEvent ( user , ident , e , null , version ));
219
236
throw e ;
220
237
}
221
238
}
222
239
223
240
/** {@inheritDoc} */
224
241
@ Override
225
242
public boolean deleteModelVersion (NameIdentifier ident , String alias ) {
226
- eventBus .dispatchEvent (
227
- new DeleteModelVersionPreEvent (PrincipalUtils .getCurrentUserName (), ident , alias , null ));
243
+ String user = PrincipalUtils .getCurrentUserName ();
244
+
245
+ eventBus .dispatchEvent (new DeleteModelVersionPreEvent (user , ident , alias , null ));
228
246
try {
229
247
boolean isExists = dispatcher .deleteModelVersion (ident , alias );
230
248
// TODO: ModelEvent
231
249
return isExists ;
232
250
} catch (Exception e ) {
233
- // TODO: failureEvent
251
+ eventBus . dispatchEvent ( new DeleteModelVersionFailureEvent ( user , ident , e , alias , null ));
234
252
throw e ;
235
253
}
236
254
}
237
255
238
256
/** {@inheritDoc} */
239
257
@ Override
240
258
public int [] listModelVersions (NameIdentifier ident ) throws NoSuchModelException {
241
- eventBus .dispatchEvent (
242
- new ListModelVersionPreEvent (PrincipalUtils .getCurrentUserName (), ident ));
259
+ String user = PrincipalUtils .getCurrentUserName ();
260
+
261
+ eventBus .dispatchEvent (new ListModelVersionPreEvent (user , ident ));
243
262
try {
244
263
int [] versions = dispatcher .listModelVersions (ident );
245
264
// TODO: ModelEvent
246
265
return versions ;
247
266
} catch (Exception e ) {
248
- // TODO: failureEvent
267
+ eventBus . dispatchEvent ( new ListModelVersionFailureEvent ( user , ident , e ));
249
268
throw e ;
250
269
}
251
270
}
0 commit comments