KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > jetspeed > util > AutoProfile


1 package org.apache.jetspeed.util;
2
3 import org.apache.jetspeed.om.profile.Portlets;
4 import org.apache.jetspeed.om.profile.Entry;
5 import org.apache.jetspeed.om.profile.Profile;
6 import org.apache.jetspeed.services.rundata.JetspeedRunData;
7 import org.apache.jetspeed.portal.PortletSet;
8
9 import org.apache.turbine.util.RunData;
10
11 import java.util.*;
12
13 /**
14  * This class is used to handle different mediatype profile
15  *
16  * @author <a HREF="mailto:A.Kempf@web.de">Andreas Kempf</a>
17  * @version $Id: AutoProfile.java,v1.0 2001/10/31
18  */

19 public class AutoProfile
20 {
21     /**
22      * Load a mediaType specific profile
23      * --------------------------------------------------------------------------
24      * last modified: 10/31/01
25      * Andreas Kempf, Siemens ICM S CP PE, Munich
26      */

27      /*
28     public static Profile loadProfile (RunData rundata, String mediaType) throws Exception
29     {
30         if ((mediaType != null) && (mediaType.equalsIgnoreCase("wml")))
31         {
32             Profile runProfile = ((JetspeedRunData)rundata).getProfile();
33             if (runProfile != null)
34             {
35               runProfile.store();
36             }
37             Profile myPro = Profiler.getProfile (rundata, MimeType.WML);
38             ((JetspeedRunData)rundata).setProfile (myPro);
39
40             // It is essential that a session object exists!
41             rundata.getSession().setAttribute ("customizeType", "wml");
42         }
43         else if ((mediaType != null) && (mediaType.equalsIgnoreCase("xml")))
44         {
45             Profile runProfile = ((JetspeedRunData)rundata).getProfile();
46             if (runProfile != null)
47             {
48                 runProfile.store();
49             }
50             Profile myPro = Profiler.getProfile (rundata, MimeType.XML);
51             ((JetspeedRunData)rundata).setProfile (myPro);
52
53             // It is essential that a session object exists!
54             rundata.getSession().setAttribute ("customizeType", "xml");
55         }
56         else
57         {
58             Profile runProfile = ((JetspeedRunData)rundata).getProfile();
59             if (runProfile != null)
60             {
61               runProfile.store();
62             }
63             Profile myPro = Profiler.getProfile (rundata, MimeType.HTML);
64             ((JetspeedRunData)rundata).setProfile (myPro);
65             
66             // It is essential that a session object exists!
67             rundata.getSession().setAttribute ("customizeType", "html");
68         }
69
70         return ((JetspeedRunData)rundata).getProfile();
71     }
72 */

73
74     /**
75      * Load a profile - the mediatype is depending on rundata settings
76      * The profile will load if the rundata.profile.mediatype differs from customtype (Session Param)
77      * if the param notForce is false, the profile will be loaded wether is already used or not
78      * --------------------------------------------------------------------------
79      * last modified: 10/31/01
80      * Andreas Kempf, Siemens ICM S CP PE, Munich
81      */

82      /*
83     public static Profile doIt (RunData rundata, boolean notForce) throws Exception
84     {
85       // retrieve current customization mediatype (stored in the user session object)
86       HttpSession ses = rundata.getSession ();
87
88       String mediaType = (String) ses.getAttribute ("customizeType");
89       
90       
91       if ((mediaType != null) && (mediaType.equalsIgnoreCase ("wml")))
92       {
93         // WML Profil nicht laden, wenn bereits vorhanden!
94         if (notForce)
95         {
96           if (!((JetspeedRunData)rundata).getProfile().getMediaType ().equalsIgnoreCase("wml"))
97           {
98             return loadProfile (rundata, "wml");
99           }
100         }
101         // WML auf jeden Fall neu laden!
102         else
103             return loadProfile (rundata, "wml");
104       }
105       else if ((mediaType != null) && (mediaType.equalsIgnoreCase ("xml")))
106       {
107           // WML Profil nicht laden, wenn bereits vorhanden!
108           if (notForce)
109           {
110             if (!((JetspeedRunData)rundata).getProfile().getMediaType ().equalsIgnoreCase("xml"))
111             {
112               return loadProfile (rundata, "xml");
113             }
114           }
115           // WML auf jeden Fall neu laden!
116           else
117               return loadProfile (rundata, "xml");
118
119
120       }
121       else if ((mediaType != null) && (mediaType.equalsIgnoreCase ("html")))
122       {
123         // HTML Profil nicht laden, wenn bereits vorhanden!
124         if (notForce)
125         {
126           if (!((JetspeedRunData)rundata).getProfile().getMediaType ().equalsIgnoreCase("html"))
127           {
128             return loadProfile (rundata, "html");
129           }
130         }
131         // HTML auf jeden Fall neu laden!
132         else
133             return loadProfile (rundata, "html");
134       }
135       return ((JetspeedRunData)rundata).getProfile();
136     }
137     */

138     
139     // Create a list of all used portlets!
140
// last modified: 10/31/01
141
// Andreas Kempf, Siemens ICM S CP PE, Munich
142
// ---------------------------------------------------------------------
143
public static List getPortletList (RunData rundata)
144     {
145       Profile profile = ((JetspeedRunData)rundata).getCustomizedProfile();
146       Portlets allPortlets = profile.getDocument().getPortletsById(((PortletSet)((JetspeedRunData)rundata).getCustomized()).getID());
147
148       
149       List installed = new ArrayList ();
150       Entry iPortlet;
151
152
153       if (allPortlets != null)
154       {
155         for (int ii = 0; ii < allPortlets.getEntryCount(); ii++)
156         {
157           iPortlet = (Entry) allPortlets.getEntry (ii);
158           installed.add (iPortlet);
159         }
160       }
161       
162       return installed;
163     }
164   
165 }
166
Popular Tags