KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > webman > acl > eventhandler > ACTaskUpdateEventHandler


1 package de.webman.acl.eventhandler;
2
3 import java.util.*;
4
5 import com.teamkonzept.web.*;
6 import com.teamkonzept.lib.*;
7 import com.teamkonzept.webman.*;
8 import com.teamkonzept.webman.mainint.*;
9 import com.teamkonzept.webman.mainint.events.*;
10 import de.webman.acl.*;
11
12 /**
13 Updates a task definition in the database
14  * @author $Author: sebastian $
15  * @version $Revision: 1.4 $
16  */

17 public class ACTaskUpdateEventHandler extends DefaultEventHandler implements ParameterTypes, DatabaseDefaults, FrameConstants
18 {
19 private ACTaskUpdateEventHandler() {}
20
21     private static ACTaskUpdateEventHandler instance = new ACTaskUpdateEventHandler();
22
23     public static ACTaskUpdateEventHandler getInstance()
24     {
25         return instance;
26     }
27
28     public void handleEvent(TKEvent evt) throws TKException
29     {
30     try {
31         WebManEvent.checkEvent(evt.getRemoteUser(), evt.getName(), ContextConstants.ACCESS_CONTROL);
32         String JavaDoc taskId = evt.getParameter(PARAMETER, "TASK_ID");
33         String JavaDoc taskName = evt.getParameter(PARAMETER, "TASK_NAME");
34         String JavaDoc contextId = evt.getParameter(PARAMETER, "CONTEXT_ID");
35         Task theTask = null;
36         
37         checkParameter(taskName, "Name");
38         checkParameter(contextId,"Context");
39         
40         Context theContext = ContextFactory.getInstance().getContext(new Integer JavaDoc(contextId));
41
42         if (taskId == null)
43         {
44             theTask = TaskFactory.getInstance().createTask(taskName, theContext);
45         }
46         else
47         {
48             theTask = TaskFactory.getInstance().getTask(new Integer JavaDoc(taskId));
49
50             if (theTask != null)
51             {
52                 theTask.setName(taskName);
53                 theTask.setContext(theContext);
54
55                 TaskFactory.getInstance().modifyTask(theTask);
56             }
57         }
58
59         TKHTMLTemplate t = evt.getPrepHTMLTemplate( "f_ac_task.tmpl" );
60         HTMLUtils.fillFrameSet( t, HTMLUtils.LEFT_FRAME_WIDTH, "AC_TASK_LIST", "AC_TASK_EDIT" );
61         t.set("TASK_ID", theTask.getID());
62         String JavaDoc editPage = evt.getParameter(PARAMETER, "EDIT_PAGE");
63         t.set("EDIT_PAGE", (editPage == null ? "1" : editPage));
64         WebManEvent.fillEventsIntoTemplate(evt.getRemoteUser(), t, ACCESS_CONTROL);
65         evt.finishTemplate( t );
66     } catch (Throwable JavaDoc e) {
67         throw WebmanExceptionHandler.getException(e);
68     }
69     }
70
71     public boolean isHandler(TKEvent evt)
72     {
73     return evt.getName().equalsIgnoreCase( "AC_TASK_UPDATE" );
74     }
75
76 }
77
Popular Tags