KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > webman > content > CEEventDistributor


1 package de.webman.content;
2
3 import java.util.*;
4 import java.sql.*;
5 import java.io.*;
6 import com.teamkonzept.web.*;
7 import com.teamkonzept.lib.*;
8 import com.teamkonzept.field.*;
9 import com.teamkonzept.field.db.*;
10 import com.teamkonzept.db.*;
11 import com.teamkonzept.webman.mainint.*;
12 import com.teamkonzept.publishing.markups.*;
13 import com.teamkonzept.webman.mainint.events.*;
14 import com.teamkonzept.webman.*;
15 import com.teamkonzept.webman.db.*;
16 import com.teamkonzept.webman.mainint.db.*;
17 import com.teamkonzept.webman.mainint.db.queries.*;
18 import de.webman.content.eventhandler.*;
19 import de.webman.generator.*;
20
21 /**
22  * The distributor for all content tree related events.
23  *
24  * @author $Author: uli $
25  * @version $Revision: 1.41
26  */

27 public class CEEventDistributor
28     extends CachedEventDistributor
29     implements ParameterTypes,
30                DatabaseDefaults,
31                FrameConstants
32 {
33
34     /**
35      * Constructs a new event distributor.
36      */

37     public CEEventDistributor ()
38     {
39         addEventHandler(CESwitchMutipleContentHandler.getInstance());
40         addEventHandler(CEArrangeMoveHandler.getInstance());
41         addEventHandler(CEArrangeOpenDirHandler.getInstance());
42         addEventHandler(CEArrangeShowHandler.getInstance());
43         addEventHandler(CEArrangeStartHandler.getInstance());
44         addEventHandler(CEBrowseHandler.getInstance());
45         addEventHandler(CECheckHandler.getInstance());
46         addEventHandler(CECompactHandler.getInstance());
47         addEventHandler(CEContentAttributesHandler.getInstance());
48         addEventHandler(CEContentInfoHandler.getInstance());
49         addEventHandler(CEContentVersionsHandler.getInstance());
50         addEventHandler(CEDefaultHandler.getInstance());
51         addEventHandler(CEEditHandler.getInstance());
52         addEventHandler(CEEditNodeHandler.getInstance());
53         addEventHandler(CEExportHandler.getInstance());
54         addEventHandler(CEExtModifyDoneHandler.getInstance());
55         addEventHandler(CEExtModifyHandler.getInstance());
56         addEventHandler(CEForwardHandler.getInstance());
57         addEventHandler(CEFrameHandler.getInstance());
58         addEventHandler(CEImportHandler.getInstance());
59         addEventHandler(CEIntershopHandler.getInstance());
60         addEventHandler(CEMediaGetHandler.getInstance());
61         addEventHandler(CEModifyHandler.getInstance());
62         addEventHandler(CENewNodeHandler.getInstance());
63         addEventHandler(CENodeDeleteHandler.getInstance());
64         addEventHandler(CENodeListMultHandler.getInstance());
65         addEventHandler(CEOnlineHandler.getInstance());
66         addEventHandler(CEOpenMultDirHandler.getInstance());
67         addEventHandler(CESaveHandler.getInstance());
68         addEventHandler(CESaveNewNodeHandler.getInstance());
69         addEventHandler(CESwitchGroupContentHandler.getInstance());
70         addEventHandler(CEUpdateGroupContentHandler.getInstance());
71         addEventHandler(CEUpdateNodeHandler.getInstance());
72     }
73
74     /**
75      * Handles the specified event.
76      *
77      * @param event the event to be handled.
78      * @throws TKException if any error occurred during event handling.
79      */

80     public void handleEvent (TKEvent event)
81         throws TKException
82     {
83         try
84         {
85             super.handleEvent(event);
86         }
87         catch (TKException tke)
88         {
89             // hier die Exception Klasse abfragen !!!
90
if (tke.getErrorCode() == INVALID_EVENT)
91             {
92                 try
93                 {
94                     String JavaDoc name = event.getName();
95
96                     if (name.equalsIgnoreCase("CE_PREV_INDEX"))
97                     {
98                         Preview preview = new Preview(event);
99                         preview.doPreviewIndexPerContent();
100                         return;
101                     }
102
103                     if (name.equalsIgnoreCase("CE_PREVIEW"))
104                     {
105                         Preview preview = new Preview(event);
106                         preview.doPreview();
107                         return;
108                     }
109
110                     if (name.equalsIgnoreCase("CE_DISPLAY_TEXT_ATTRIBUTES"))
111                     {
112                         TKWMAttrEdit attrEdit = new TKWMAttrEdit(event);
113                         attrEdit.displayLinks();
114                         return;
115                     }
116
117                     if (name.equalsIgnoreCase("CE_EMPTY"))
118                     {
119                         event.doEmptyPage();
120                         return;
121                     }
122
123                     throw tke;
124                 }
125                 catch (FileNotFoundException fnfe)
126                 {
127                     throw new TKUserException("Template not Found",
128                                               UserCodes.TEMPLATE_NOT_FOUND,
129                                               ErrorCodes.USER_SEVERITY,
130                                               false,
131                                               new Object JavaDoc[]{fnfe.getMessage()},
132                                               fnfe);
133                 }
134                 catch (TKTemplateSyntaxException tktse)
135                 {
136                     throw new TKUserException("Template Syntax Error",
137                                               UserCodes.WRONG_TEMPLATE_SYNTAX,
138                                               ErrorCodes.USER_SEVERITY,
139                                               false,
140                                               new Object JavaDoc[]{tktse.getMessage()},
141                                               tktse);
142                 }
143                 catch (Throwable JavaDoc t)
144                 {
145                     throw WebmanExceptionHandler.getException(t);
146                 }
147             }
148             else
149             {
150                 throw tke;
151             }
152         }
153     }
154
155     /**
156      * Checks wether this handler is capable to handle the specified event.
157      *
158      * @param event the event to be handled.
159      * @return <CODE>true</CODE> if this handler is capable to handle the
160      * specified event, otherwise <CODE>false</CODE>.
161      */

162     public boolean isHandler (TKEvent event)
163     {
164         return event.getName().startsWith("CE");
165     }
166
167 }
168
Popular Tags