01: /* Copyright 2003 The JA-SIG Collaborative. All rights reserved.
02: * See license distributed with this file and
03: * available online at http://www.uportal.org/license.html
04: */
05:
06: package org.jasig.portal.layout.channels.sitemap;
07:
08: import org.jasig.portal.IPrivileged;
09: import org.jasig.portal.PortalControlStructures;
10: import org.jasig.portal.PortalException;
11: import org.jasig.portal.channels.BaseChannel;
12: import org.jasig.portal.layout.IUserLayout;
13: import org.jasig.portal.utils.DocumentFactory;
14: import org.jasig.portal.utils.XSLT;
15: import org.w3c.dom.Document;
16: import org.xml.sax.ContentHandler;
17:
18: /**
19: * Site map that shows you, at a glance, what channels are in your layout.
20: * @author Ken Weiner, kweiner@unicon.net
21: * @version $Revision: 34762 $
22: */
23: public class CSiteMap extends BaseChannel implements IPrivileged {
24:
25: Document userLayoutDoc = null;
26: private static final String sslUri = "sitemap.ssl";
27:
28: public void setPortalControlStructures(PortalControlStructures pcs)
29: throws PortalException {
30: IUserLayout userLayout = pcs.getUserPreferencesManager()
31: .getUserLayoutManager().getUserLayout();
32: userLayoutDoc = DocumentFactory.getNewDocument();
33: userLayout.writeTo(userLayoutDoc);
34: }
35:
36: public void renderXML(ContentHandler out) throws PortalException {
37: XSLT xslt = XSLT.getTransformer(this , runtimeData.getLocales());
38: xslt.setXML(userLayoutDoc);
39: xslt.setXSL(sslUri, runtimeData.getBrowserInfo());
40: xslt.setTarget(out);
41: xslt.setStylesheetParameter("baseActionURL", runtimeData
42: .getBaseActionURL());
43: xslt.transform();
44: }
45:
46: }
|