[jboss-cvs] jboss-portal/core/src/main/org/jboss/portal/core/portlet/management ...
Boleslaw Dawidowicz
bdaw at o2.pl
Wed Jul 26 18:03:55 EDT 2006
User: bdaw
Date: 06/07/26 18:03:55
Modified: core/src/main/org/jboss/portal/core/portlet/management
PortalObjectManagerBean.java
Log:
management - adding portal and preview link
Revision Changes Path
1.41 +85 -15 jboss-portal/core/src/main/org/jboss/portal/core/portlet/management/PortalObjectManagerBean.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: PortalObjectManagerBean.java
===================================================================
RCS file: /cvsroot/jboss/jboss-portal/core/src/main/org/jboss/portal/core/portlet/management/PortalObjectManagerBean.java,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -b -r1.40 -r1.41
--- PortalObjectManagerBean.java 26 Jul 2006 09:43:32 -0000 1.40
+++ PortalObjectManagerBean.java 26 Jul 2006 22:03:55 -0000 1.41
@@ -35,6 +35,9 @@
import org.jboss.portal.core.model.portal.PortalObject;
import org.jboss.portal.core.model.portal.PortalObjectContainer;
import org.jboss.portal.core.model.portal.Window;
+import org.jboss.portal.core.api.Navigation;
+import org.jboss.portal.core.api.JBossPortalNode;
+import org.jboss.portal.core.impl.model.portal.PortalObjectImpl;
import org.jboss.portal.faces.el.DelegatingPropertyResolver;
import org.jboss.portal.faces.el.PropertyDef;
import org.jboss.portal.faces.el.TypeDef;
@@ -57,6 +60,8 @@
import org.jboss.portal.theme.render.PortalRenderSet;
import org.jboss.portal.theme.strategy.LayoutStrategy;
import org.jboss.logging.Logger;
+import org.jboss.portlet.PortalNode;
+import org.jboss.portlet.JBossRenderResponse;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
@@ -155,43 +160,69 @@
DelegatingPropertyResolver.registerTypeDef(portletDef);
}
- /** The selected id. */
+ /**
+ * The selected id.
+ */
private String selectedId;
- /** The selected node properties. */
+ /**
+ * The selected node properties.
+ */
private List selectedProperties;
- /** The current tab name. */
+ /**
+ * The current tab name.
+ */
private String selectedPlugin;
- /** . */
+ /**
+ * .
+ */
private RoleModule roleModule;
- /** . */
+ /**
+ * .
+ */
private PortalObjectContainer portalObjectContainer;
- /** . */
+ /**
+ * .
+ */
private InstanceContainer instanceContainer;
- /** . */
+ /**
+ * .
+ */
private LayoutService layoutService;
- /** . */
+ /**
+ * .
+ */
private ThemeService themeService;
- /** . */
+ /**
+ * .
+ */
private AuthorizationDomainRegistry authorizationDomainRegistry;
- /** . */
+ /**
+ * .
+ */
private PortalAuthorizationManagerFactory portalAuthorizationManagerFactory;
- /** . */
+ /**
+ * .
+ */
private AbstractAuthorizationBean auth = new PortalObjectAuthorizationBean();
- /** . */
+ /**
+ * .
+ */
private ThemeBean themes = new ThemeBean();
- /** Compares two windows according to their order. */
+ /**
+ * Compares two windows according to their order.
+ */
private static final Comparator comparator = new Comparator()
{
public int compare(Object o1, Object o2)
@@ -451,7 +482,7 @@
Instance i1 = (Instance)o1;
Instance i2 = (Instance)o2;
- if (column == null )
+ if (column == null)
{
return 0;
}
@@ -865,7 +896,7 @@
public SelectItem[] getAvailableActions()
{
- return new SelectItem[] {
+ return new SelectItem[]{
new SelectItem("view"),
new SelectItem("viewrecursive"),
new SelectItem("personalize"),
@@ -1038,4 +1069,43 @@
{
this.portalAuthorizationManagerFactory = portalAuthorizationManagerFactory;
}
+
+ public String getPreviewURL()
+ {
+ try
+ {
+ //set up the root node
+ PortalNode root = Navigation.getCurrentNode();
+ for(;root.getParent() != null;)
+ {
+ root = root.getParent();
+ }
+
+ //obtain the path to our node
+ PortalObjectImpl object = (PortalObjectImpl)getSelectedObject();
+ String path = object.getObjectNode().getPath();
+
+ //iterate to our point
+ String[] nodes = path.split("\\.");
+ PortalNode dest = root;
+
+ for (int i = 0; i < nodes.length; i++)
+ {
+ String s = nodes[i];
+ dest = dest.getChild(s);
+ }
+
+ //generate url
+ JBossRenderResponse response = (JBossRenderResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
+ String url = response.createRenderURL(dest).toString();
+ return url;
+ }
+ catch (Exception e)
+ {
+ log.info("Failed to generate object preview link");
+ e.printStackTrace();
+ }
+ //in case it fails let's point to some nice page ;)
+ return "http://www.jboss.org";
+ }
}
More information about the jboss-cvs-commits
mailing list