KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > de > webman > acl > db > queries > oracle > PolicySelectByContentTreeEvent


1 package de.webman.acl.db.queries.oracle;
2
3 import java.sql.Connection JavaDoc;
4 import java.sql.Types JavaDoc;
5 import com.teamkonzept.db.TKPrepQuery;
6
7 /**
8  * $Header: /cvsroot/webman-cms/source/webman/de/webman/acl/db/queries/oracle/PolicySelectByContentTreeEvent.java,v 1.1 2001/08/20 08:25:09 mischa Exp $
9  *
10  * @version 0.10
11  * @since 0.10
12  * @author © 2000 Team-Konzept
13  */

14 public class PolicySelectByContentTreeEvent
15     extends TKPrepQuery
16 {
17
18     // Constants
19

20     public static final String JavaDoc[] ORDER =
21     {
22         "OBJECT_REFERENCE",
23         "WM_USER_ID",
24         "WM_CONTEXT_ID",
25         "OBJECT_TYPE",
26         "WM_EVENT_ID"
27     };
28
29     public static final Object JavaDoc[][] TYPES =
30     {
31         {"WM_USER_ID", new Integer JavaDoc(Types.INTEGER)},
32         {"WM_CONTEXT_ID", new Integer JavaDoc(Types.INTEGER)},
33         {"OBJECT_REFERENCE", new Integer JavaDoc(Types.INTEGER)},
34         {"OBJECT_TYPE", new Integer JavaDoc(Types.INTEGER)},
35         {"WM_EVENT_ID", new Integer JavaDoc(Types.INTEGER)}
36     };
37
38     public static final boolean[] RELEVANTS =
39     {
40         true
41     };
42
43     public static final String JavaDoc SQL = (new StringBuffer JavaDoc()).append("SELECT DISTINCT WM_POLICY_ID FROM ")
44                                                          .append(" (SELECT P.WM_POLICY_ID, CT2.LEFT_NR ")
45                                                          .append("FROM WM_POLICY P, CONTENT_TREE CT1, CONTENT_TREE CT2, WM_ROLE_TASK RT, WM_TASK T, WM_TASK_ACTION TA, WM_ACTION_EVENT AE ")
46                                                          .append("WHERE ")
47                                                          .append(" CT1.CONTENT_NODE_ID = ? AND ")
48                                                          .append(" CT2.LEFT_NR <= CT1.LEFT_NR AND ")
49                                                          .append(" CT2.RIGHT_NR >= CT1.RIGHT_NR AND ")
50                                                          .append(" CT2.CONTENT_NODE_ID = P.OBJECT_REFERENCE AND ")
51                                                          .append(" P.OBJECT_TYPE = ? AND ")
52                                                          .append(" P.WM_USER_ID = ? AND ")
53                                                          .append(" P.WM_CONTEXT_ID = ? AND ")
54                                                          .append(" P.WM_ROLE_ID = RT.WM_ROLE_ID AND ")
55                                                          .append(" RT.WM_TASK_ID = T.WM_TASK_ID AND ")
56                                                          .append(" T.WM_CONTEXT_ID = P.WM_CONTEXT_ID AND ")
57                                                          .append(" T.WM_TASK_ID = TA.WM_TASK_ID AND ")
58                                                          .append(" TA.WM_ACTION_ID = AE.WM_ACTION_ID AND ")
59                                                          .append(" AE.WM_EVENT_ID = ? ")
60                                                          .append("ORDER BY CT2.LEFT_NR ASC)")
61                                                          .toString();
62
63
64     // Method implementations
65

66     public void initQuery (Connection JavaDoc connection)
67     {
68         super.initQuery(connection,
69                         true,
70                         ORDER,
71                         TYPES,
72                         RELEVANTS,
73                         SQL);
74     }
75
76 }
77
Popular Tags