1 /**
2 * Copyright 2010 The Kuali Foundation Licensed under the
3 * Educational Community License, Version 2.0 (the "License"); you may
4 * not use this file except in compliance with the License. You may
5 * obtain a copy of the License at
6 *
7 * http://www.osedu.org/licenses/ECL-2.0
8 *
9 * Unless required by applicable law or agreed to in writing,
10 * software distributed under the License is distributed on an "AS IS"
11 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12 * or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15
16 package org.kuali.student.common.ui.client.event;
17
18 import org.kuali.student.common.ui.client.mvc.ActionCompleteCallback;
19 import org.kuali.student.common.ui.client.mvc.ApplicationEvent;
20 import org.kuali.student.common.ui.client.mvc.ApplicationEventHandler;
21
22 /**
23 * This is an abstract action event, which provides for getting/setting of
24 * an ActionCompleteCallback for any custom defined actions
25 *
26 * @author Kuali Student Team
27 *
28 */
29 public abstract class ActionEvent<H extends ApplicationEventHandler> extends ApplicationEvent<H>{
30 private ActionCompleteCallback actionCompleteCallback;
31
32 public ActionCompleteCallback getActionCompleteCallback() {
33 return actionCompleteCallback;
34 }
35
36 public void setActionCompleteCallback(ActionCompleteCallback actionCompleteCallback) {
37 this.actionCompleteCallback = actionCompleteCallback;
38 }
39
40 public void doActionComplete(){
41 if (actionCompleteCallback != null){
42 actionCompleteCallback.onActionComplete(this);
43 }
44 }
45
46 }