Clover Coverage Report - Kuali Student 1.2-M6-SNAPSHOT (Aggregated)
Coverage timestamp: Mon Sep 12 2011 05:03:53 EDT
../../../../../../../img/srcFileCovDistChart0.png 42% of files have more coverage
22   96   13   2
4   63   0.59   11
11     1.18  
1    
 
Line # 27 22 0% 13 37 0% 0.0
 
No Tests
 
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.widgets;
17   
18    import org.kuali.student.common.ui.client.mvc.Callback;
19    import org.kuali.student.common.ui.client.mvc.Controller;
20   
21    import com.google.gwt.event.dom.client.ClickEvent;
22    import com.google.gwt.event.dom.client.ClickHandler;
23    import com.google.gwt.event.dom.client.KeyDownEvent;
24    import com.google.gwt.event.dom.client.KeyDownHandler;
25    import com.google.gwt.user.client.Window;
26   
 
27    public abstract class NavigationHandler implements ClickHandler, KeyDownHandler {
28    private final String url;
29    private final Controller controller;
30    private final String navigationKey;
31    private final Enum<?> navEnum;
32   
 
33  0 toggle public NavigationHandler(String url) {
34  0 this.url = url;
35  0 this.controller = null;
36  0 this.navigationKey = null;
37  0 this.navEnum = null;
38    }
39   
 
40  0 toggle public NavigationHandler(Controller controller, String navigationKey) {
41  0 this.url = null;
42  0 this.controller = controller;
43  0 this.navigationKey = navigationKey;
44  0 this.navEnum = null;
45    }
46   
 
47  0 toggle public NavigationHandler(Controller controller, Enum<?> navigationEnum) {
48  0 this.url = null;
49  0 this.controller = controller;
50  0 this.navigationKey = null;
51  0 this.navEnum = navigationEnum;
52    }
53   
 
54  0 toggle public void onClick(ClickEvent event) {
55  0 doNavigate();
56    }
57   
 
58  0 toggle public void onKeyDown(KeyDownEvent event) {
59  0 doNavigate();
60    }
61   
 
62  0 toggle protected void doNavigate() {
63  0 beforeNavigate(new Callback<Boolean>() {
64   
 
65  0 toggle @Override
66    public void exec(Boolean result) {
67  0 if (result) {
68  0 if (url != null) {
69  0 Window.Location.assign(url);
70    }
71    }
72    }
73   
74    });
75    }
76   
77   
78   
 
79  0 toggle public String getUrl() {
80  0 return url;
81    }
82   
 
83  0 toggle public Controller getController() {
84  0 return controller;
85    }
86   
 
87  0 toggle public String getNavigationKey() {
88  0 return navigationKey;
89    }
90   
 
91  0 toggle public Enum<?> getNavEnum() {
92  0 return navEnum;
93    }
94   
95    public abstract void beforeNavigate(Callback<Boolean> callback);
96    }