[portal-commits] JBoss Portal SVN: r11779 - in branches/JBoss_Portal_Branch_2_7/core-admin/src: resources/portal-admin-war/WEB-INF/classes and 1 other directories.
portal-commits at lists.jboss.org
portal-commits at lists.jboss.org
Mon Sep 1 15:44:59 EDT 2008
Author: chris.laprun at jboss.com
Date: 2008-09-01 15:44:59 -0400 (Mon, 01 Sep 2008)
New Revision: 11779
Added:
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/QNameSelectItem.java
Modified:
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/WindowBindingManagerBean.java
branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/WEB-INF/classes/Resource.properties
branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml
Log:
- Alias and parameters bindings redone. I'm not too happy with the parameter binding creation interaction though...
- More generification of managers with create/cancel actions.
- Extracted QNameSelectItem as it's used by several classes now.
- Do not display tables or prevent creations when there are nothing to use.
Modified: branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java 2008-09-01 16:03:43 UTC (rev 11778)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/AliasBindingManagerBean.java 2008-09-01 19:44:59 UTC (rev 11779)
@@ -25,7 +25,10 @@
import org.jboss.portal.core.controller.coordination.AliasBindingInfo;
import org.jboss.portal.core.controller.coordination.IllegalCoordinationException;
import org.jboss.portal.core.model.portal.Page;
+import org.jboss.portal.core.model.portal.PortalObject;
import org.jboss.portal.core.model.portal.Window;
+import org.jboss.portal.portlet.info.NavigationInfo;
+import org.jboss.portal.portlet.info.ParameterInfo;
import org.jboss.portal.portlet.info.PortletInfo;
import javax.xml.namespace.QName;
@@ -37,6 +40,7 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
+import java.util.Set;
/**
* @author <a href="mailto:chris.laprun at jboss.com">Chris Laprun</a>
@@ -45,6 +49,7 @@
public class AliasBindingManagerBean extends CoordinationManagerBean.CoordinationBean
{
private Map<String, DisplayAliasBinding> displayAliasBindings;
+ private Set<QNameSelectItem> availableRenderParameters;
private String aliasName;
private String originalQName;
@@ -99,8 +104,21 @@
return result;
}
- public String createBinding()
+ public List<QNameSelectItem> getAvailableRenderParameters()
{
+ if(availableRenderParameters == null)
+ {
+ return Collections.emptyList();
+ }
+
+ List<QNameSelectItem> result = new LinkedList<QNameSelectItem>(availableRenderParameters);
+ Collections.sort(result);
+
+ return result;
+ }
+
+ public String create()
+ {
if (aliasName != null)
{
try
@@ -114,10 +132,10 @@
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
- return CoordinationManagerBean.EDIT_COORDINATION;
+ return resetSelection();
}
- public String cancelBinding()
+ public String resetSelection()
{
aliasName = null;
originalQName = null;
@@ -149,8 +167,19 @@
public void extractInfoFrom(Window window, PortletInfo info)
{
- // nothing to do here as alias bindings don't have any window specific info
+ // retrieve metadata on public render parameters
+ NavigationInfo navInfo = info.getNavigation();
+ for (ParameterInfo pInfo : navInfo.getPublicParameters())
+ {
+ availableRenderParameters.add(new QNameSelectItem(pInfo.getName()));
+ }
}
+
+ public void initKnowing(Collection<PortalObject> children)
+ {
+ availableRenderParameters = new HashSet<QNameSelectItem>();
+ }
+
public static class DisplayAliasBinding implements Comparable
{
private AliasBindingInfo alias;
Modified: branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java 2008-09-01 16:03:43 UTC (rev 11778)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/CoordinationManagerBean.java 2008-09-01 19:44:59 UTC (rev 11779)
@@ -124,6 +124,15 @@
public abstract String rename(String oldName, String newName) throws IllegalCoordinationException;
public abstract void extractInfoFrom(Window window, PortletInfo info);
+
+ public abstract String create() throws IllegalCoordinationException;
+
+ public abstract String resetSelection();
+
+ public String cancel()
+ {
+ return resetSelection();
+ }
}
public PortalObjectId getSelectedObjectId()
@@ -292,6 +301,7 @@
if (!children.isEmpty())
{
windowManager.initKnowing(children);
+ aliasManager.initKnowing(children);
for (PortalObject po : children)
{
@@ -302,9 +312,9 @@
Instance instance = pomb.getInstanceContainer().getDefinition(pc.getInstanceRef());
PortletInfo info = instance.getPortlet().getInfo();
- // get window specific info (aliasManager doesn't need that)
windowManager.extractInfoFrom(window, info);
eventManager.extractInfoFrom(window, info);
+ aliasManager.extractInfoFrom(window, info);
}
}
}
Modified: branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java 2008-09-01 16:03:43 UTC (rev 11778)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/EventWiringManagerBean.java 2008-09-01 19:44:59 UTC (rev 11779)
@@ -292,7 +292,7 @@
}
}
- public String createWiring()
+ public String create()
{
if (currentWiring != null)
{
@@ -305,10 +305,10 @@
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
- return null;
+ return resetSelection();
}
- public String cancelWiring()
+ public String resetSelection()
{
currentWiring = null;
selectedSourceEvent = null;
@@ -438,42 +438,6 @@
}
}
- public static class QNameSelectItem extends SelectItem implements Comparable
- {
- public QNameSelectItem(QName qName)
- {
- super(qName, qName.toString());
- }
-
- public QName getQName()
- {
- return (QName)getValue();
- }
-
- public int compareTo(Object o)
- {
- QNameSelectItem other = (QNameSelectItem)o;
- return getQName().toString().compareTo(other.getQName().toString());
- }
-
- @Override
- public int hashCode()
- {
- return getQName().hashCode();
- }
-
- @Override
- public boolean equals(Object obj)
- {
- if (!(obj instanceof QNameSelectItem))
- {
- return false;
- }
- QNameSelectItem item = (QNameSelectItem)obj;
- return getQName().equals(item.getQName());
- }
- }
-
private static class EventWiringInfoCreator implements EventWiringInfo
{
private String name;
Added: branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/QNameSelectItem.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/QNameSelectItem.java (rev 0)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/QNameSelectItem.java 2008-09-01 19:44:59 UTC (rev 11779)
@@ -0,0 +1,66 @@
+/*
+* JBoss, a division of Red Hat
+* Copyright 2008, Red Hat Middleware, LLC, and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+
+package org.jboss.portal.core.admin.ui.coordination;
+
+import javax.faces.model.SelectItem;
+import javax.xml.namespace.QName;
+
+/**
+ * @author <a href="mailto:chris.laprun at jboss.com">Chris Laprun</a>
+* @version $Revision$
+*/
+public class QNameSelectItem extends SelectItem implements Comparable
+{
+ public QNameSelectItem(QName qName)
+ {
+ super(qName, qName.toString());
+ }
+
+ public QName getQName()
+ {
+ return (QName)getValue();
+ }
+
+ public int compareTo(Object o)
+ {
+ QNameSelectItem other = (QNameSelectItem)o;
+ return getQName().toString().compareTo(other.getQName().toString());
+ }
+
+ @Override
+ public int hashCode()
+ {
+ return getQName().hashCode();
+ }
+
+ @Override
+ public boolean equals(Object obj)
+ {
+ if (!(obj instanceof QNameSelectItem))
+ {
+ return false;
+ }
+ QNameSelectItem item = (QNameSelectItem)obj;
+ return getQName().equals(item.getQName());
+ }
+}
Modified: branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/WindowBindingManagerBean.java
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/WindowBindingManagerBean.java 2008-09-01 16:03:43 UTC (rev 11778)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/coordination/WindowBindingManagerBean.java 2008-09-01 19:44:59 UTC (rev 11779)
@@ -22,7 +22,6 @@
package org.jboss.portal.core.admin.ui.coordination;
-import org.jboss.portal.core.controller.coordination.AliasBindingInfo;
import org.jboss.portal.core.controller.coordination.IllegalCoordinationException;
import org.jboss.portal.core.controller.coordination.WindowBindingInfo;
import org.jboss.portal.core.model.portal.Page;
@@ -33,8 +32,8 @@
import org.jboss.portal.portlet.info.ParameterInfo;
import org.jboss.portal.portlet.info.PortletInfo;
+import javax.faces.model.SelectItem;
import javax.xml.namespace.QName;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
@@ -42,6 +41,7 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
+import java.util.Set;
/**
* @author <a href="mailto:chris.laprun at jboss.com">Chris Laprun</a>
@@ -50,15 +50,12 @@
public class WindowBindingManagerBean extends CoordinationManagerBean.CoordinationBean
{
private Map<String, String> windows;
- private List<String> selectedWindows;
- private Map<String, String> aliasBindings;
- private Map<String, Map<String, String>> windowBindings;
- private String selectedRenderParameter;
- private Map<String, String> availableRenderParameters;
- private String windowBindingName;
-
private Map<String, DisplayParameterBinding> displayParameterBindings;
+ private List<ParameterWindowSelectItem> availableParameterWindowPairs;
+ private List<String> selectedParameterWindowPairs;
+ private String windowBindingName;
+
public Map<String, String> getWindows()
{
return windows;
@@ -69,60 +66,21 @@
this.windows = windows;
}
- public List<String> getSelectedWindows()
+ public List<ParameterWindowSelectItem> getAvailableParameterWindowPairs()
{
- return selectedWindows;
+ return availableParameterWindowPairs;
}
- public void setSelectedWindows(List<String> selectedWindows)
+ public List<String> getSelectedParameterWindowPairs()
{
- this.selectedWindows = selectedWindows;
+ return selectedParameterWindowPairs;
}
- public Map<String, String> getAliasBindings()
+ public void setSelectedParameterWindowPairs(List<String> selectedParameterWindowPairs)
{
- if (aliasBindings == null)
- {
- aliasBindings = new HashMap<String, String>();
- }
- return aliasBindings;
+ this.selectedParameterWindowPairs = selectedParameterWindowPairs;
}
- public void setAliasBindings(Map<String, String> aliasBindings)
- {
- this.aliasBindings = aliasBindings;
- }
-
- public Map<String, String> getAvailableRenderParameters()
- {
- return availableRenderParameters;
- }
-
- public void setAvailableRenderParameters(Map<String, String> availableRenderParameters)
- {
- this.availableRenderParameters = availableRenderParameters;
- }
-
- public Map<String, Map<String, String>> getWindowBindings()
- {
- return windowBindings;
- }
-
- public void setWindowBindings(Map<String, Map<String, String>> windowBindings)
- {
- this.windowBindings = windowBindings;
- }
-
- public String getSelectedRenderParameter()
- {
- return selectedRenderParameter;
- }
-
- public void setSelectedRenderParameter(String selectedRenderParameter)
- {
- this.selectedRenderParameter = selectedRenderParameter;
- }
-
public String getWindowBindingName()
{
return windowBindingName;
@@ -139,71 +97,13 @@
NavigationInfo navInfo = info.getNavigation();
for (ParameterInfo pInfo : navInfo.getPublicParameters())
{
- availableRenderParameters.put(pInfo.getName().toString(), pInfo.getName().toString());
+ availableParameterWindowPairs.add(new ParameterWindowSelectItem(pInfo, window));
}
// record window information
this.windows.put(window.getName(), window.getId().toString(PortalObjectPath.LEGACY_BASE64_FORMAT));
}
- public static class DisplayParameterBinding implements Comparable
- {
- private String id;
- private QName name;
- private List<Window> windows;
- private WindowBindingInfo bindingInfo;
-
- public DisplayParameterBinding(WindowBindingInfo bindingInfo)
- {
- this.bindingInfo = bindingInfo;
- }
-
- public String getId()
- {
- return id;
- }
-
- public void setId(String id)
- {
- this.id = id;
- }
-
- public QName getName()
- {
- return name;
- }
-
- public void setName(QName name)
- {
- this.name = name;
- }
-
- public List<Window> getWindows()
- {
- if (windows == null)
- {
- windows = new ArrayList<Window>();
- }
- return windows;
- }
-
- public void setWindows(List<Window> windows)
- {
- this.windows = windows;
- }
-
- public WindowBindingInfo getBindingInfo()
- {
- return bindingInfo;
- }
-
- public int compareTo(Object o)
- {
- DisplayParameterBinding other = (DisplayParameterBinding)o;
- return id.compareTo(other.getId());
- }
- }
-
public Collection<DisplayParameterBinding> getDisplayParameterBindings()
{
if (displayParameterBindings == null)
@@ -219,41 +119,19 @@
public void initKnowing(Collection<PortalObject> children)
{
- availableRenderParameters = new LinkedHashMap<String, String>();
+ availableParameterWindowPairs = new LinkedList<ParameterWindowSelectItem>();
this.windows = new LinkedHashMap<String, String>(children.size());
}
public void loadInfoFrom(Page page)
{
- //aliasbindings prep for ui
- for (AliasBindingInfo abInfo : managerBean.getCoordinationService().getAliasBindings(page))
- {
- for (QName name : abInfo.getNames())
- {
- getAliasBindings().put(name.getNamespaceURI(), name.getNamespaceURI());
- }
- }
-
Collection<? extends WindowBindingInfo> windowBindingInfos = managerBean.getCoordinationService().getWindowBindings(page);
if (windowBindingInfos != null && !windowBindingInfos.isEmpty())
{
displayParameterBindings = new HashMap<String, DisplayParameterBinding>(windowBindingInfos.size());
for (WindowBindingInfo wbInfo : windowBindingInfos)
{
- DisplayParameterBinding dpb = new DisplayParameterBinding(wbInfo);
- for (Map.Entry<Window, QName> entry : wbInfo.getWindows().entrySet())
- {
- Window paramName = entry.getKey();
- QName paramValue = entry.getValue();
- //quick filter for duplicate binding ids
- dpb.getWindows().add(paramName);
- if (dpb.getWindows().size() < 2)
- {
- dpb.setId(wbInfo.getName());
- dpb.setName(paramValue);
- }
- }
- displayParameterBindings.put(dpb.getId(), dpb);
+ displayParameterBindings.put(wbInfo.getName(), new DisplayParameterBinding(wbInfo));
}
}
else
@@ -262,38 +140,32 @@
}
}
- public String createBinding() throws IllegalCoordinationException
+ public String create() throws IllegalCoordinationException
{
if (windowBindingName != null)
{
Map<Window, QName> windowBinding = new HashMap<Window, QName>();
- for (String window : selectedWindows)
+ for (String pairAsString : selectedParameterWindowPairs)
{
- PortalObject portalObject = managerBean.getPortalObjectContainer().getObject(managerBean.parsePortalObjectId(window));
+ // get ParameterWindowPair from String
+ String[] names = ParameterWindowPair.resolveFrom(pairAsString);
- if (portalObject.getType() == PortalObject.TYPE_WINDOW)
- {
- windowBinding.put((Window)portalObject, QName.valueOf(selectedRenderParameter));
- managerBean.getCoordinationService().setWindowBinding(windowBindingName, windowBinding);
- }
+ Window window = (Window)managerBean.getSelectedPage().getChild(names[ParameterWindowPair.WINDOW_NAME]);
+ windowBinding.put(window, QName.valueOf(names[ParameterWindowPair.PARAM_NAME]));
}
+
+ managerBean.getCoordinationService().setWindowBinding(windowBindingName, windowBinding);
}
- // reset selection
- windowBindingName = null;
- selectedWindows = null;
- selectedRenderParameter = null;
-
- return CoordinationManagerBean.EDIT_COORDINATION;
+ return resetSelection();
}
- public String cancelBinding()
+ public String resetSelection()
{
- selectedWindows = null;
windowBindingName = null;
- selectedRenderParameter = null;
+ selectedParameterWindowPairs = null;
- return null;
+ return CoordinationManagerBean.EDIT_COORDINATION;
}
public String delete(String name) throws IllegalCoordinationException
@@ -317,4 +189,115 @@
}
return CoordinationManagerBean.EDIT_COORDINATION;
}
+
+ public static class DisplayParameterBinding implements Comparable
+ {
+ private List<ParameterWindowPair> parameterWindowPairs;
+ private WindowBindingInfo bindingInfo;
+
+ public DisplayParameterBinding(WindowBindingInfo bindingInfo)
+ {
+ this.bindingInfo = bindingInfo;
+ Set<Map.Entry<Window,QName>> entries = bindingInfo.getWindows().entrySet();
+ parameterWindowPairs = new LinkedList<ParameterWindowPair>();
+ for (Map.Entry<Window, QName> entry : entries)
+ {
+ parameterWindowPairs.add(new ParameterWindowPair(entry.getValue(), entry.getKey()));
+ }
+ }
+
+ public String getName()
+ {
+ return bindingInfo.getName();
+ }
+
+ public WindowBindingInfo getBindingInfo()
+ {
+ return bindingInfo;
+ }
+
+ public List<ParameterWindowPair> getParameterWindowPairs()
+ {
+ return parameterWindowPairs;
+ }
+
+ public int compareTo(Object o)
+ {
+ DisplayParameterBinding other = (DisplayParameterBinding)o;
+ return getName().compareTo(other.getName());
+ }
+ }
+
+ public static class ParameterWindowSelectItem extends SelectItem implements Comparable
+ {
+ public ParameterWindowSelectItem(ParameterInfo parameterInfo, Window window)
+ {
+ super(new ParameterWindowPair(parameterInfo, window), ParameterWindowPair.asString(parameterInfo.getName(), window));
+ }
+
+ public int compareTo(Object o)
+ {
+ ParameterWindowSelectItem pair = (ParameterWindowSelectItem)o;
+ return toString().compareTo(pair.toString());
+ }
+
+ private ParameterWindowPair getPair()
+ {
+ return (ParameterWindowPair)getValue();
+ }
+ }
+
+ public static class ParameterWindowPair
+ {
+ private Window window;
+ private QName name;
+ public static final int PARAM_NAME = 0;
+ public static final int WINDOW_NAME = 1;
+
+ public ParameterWindowPair(ParameterInfo info, Window window)
+ {
+ this(info.getName(), window);
+ }
+
+ public ParameterWindowPair(QName name, Window window)
+ {
+ this.window = window;
+ this.name = name;
+ }
+
+ public QName getName()
+ {
+ return name;
+ }
+
+ public Window getWindow()
+ {
+ return window;
+ }
+
+ public String getSeparator()
+ {
+ return ":";
+ }
+
+ @Override
+ public String toString()
+ {
+ return ParameterWindowPair.asString(name, window);
+ }
+
+ static String asString(QName qname, Window window)
+ {
+ return qname + ":" + window.getName();
+ }
+
+ public static String[] resolveFrom(String pairAsString)
+ {
+ int separatorIndex = pairAsString.indexOf(':');
+ String name = pairAsString.substring(0, separatorIndex);
+ String windowName = pairAsString.substring(separatorIndex + 1);
+
+ return new String[] {name, windowName};
+ }
+ }
}
Modified: branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/WEB-INF/classes/Resource.properties
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/WEB-INF/classes/Resource.properties 2008-09-01 16:03:43 UTC (rev 11778)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/WEB-INF/classes/Resource.properties 2008-09-01 19:44:59 UTC (rev 11779)
@@ -272,22 +272,26 @@
COORDINATION_PARAMETER_BINDINGS=Parameter bindings
COORDINATION_PARAMETER_EXPLICIT_MODE=Use explicit parameter binding
COORDINATION_PARAMETER_MANAGE_EXISTING=Manage existing parameter bindings:
+COORDINATION_PARAMETER_EXISTING_NONE=No existing parameter bindings.
COORDINATION_PARAMETER_EXISTING_NAME=Name
+COORDINATION_PARAMETER_EXISTING_PAIRS=Parameter:window pairs
COORDINATION_PARAMETER_EXISTING_ACTIONS=Actions
COORDINATION_PARAMETER_CREATE=Create new parameter binding:
-COORDINATION_PARAMETER_CREATE_STEP1=1. Select public render parameter:
-COORDINATION_PARAMETER_CREATE_STEP2=2. Select windows for parameter ''{0}'':
-COORDINATION_PARAMETER_CREATE_STEP3=3. Name binding:
+COORDINATION_PARAMETER_CREATE_NO_PAIRS=No available public render parameters. Cannot create new parameter bindings.
+COORDINATION_PARAMETER_CREATE_STEP1=1. Select public parameter / window pairs:
+COORDINATION_PARAMETER_CREATE_STEP2=2. Name parameter binding:
COORDINATION_PARAMETER_CREATE_CREATE=Create binding
COORDINATION_WINDOWS=Windows
COORDINATION_ALIAS_BINDINGS=Alias bindings
COORDINATION_ALIAS_MANAGE_EXISTING=Manage existing alias bindings:
+COORDINATION_ALIAS_EXISTING_NONE=No existing alias bindings.
COORDINATION_ALIAS_EXISTING_NAME=Name
COORDINATION_ALIAS_EXISTING_ORIGINAL=Original QName
COORDINATION_ALIAS_EXISTING_ACTIONS=Actions
COORDINATION_ALIAS_CREATE=Create new alias binding:
+COORDINATION_ALIAS_CREATE_NO_PARAMS=No available public render parameters. Cannot create new alias bindings.
COORDINATION_ALIAS_CREATE_STEP1=1. Select public render parameter:
COORDINATION_ALIAS_CREATE_STEP2=2. Name alias binding:
COORDINATION_ALIAS_CREATE_CREATE=Create alias
@@ -295,6 +299,7 @@
COORDINATION_EVENT_WIRINGS=Event wirings
COORDINATION_EVENT_EXPLICIT_MODE=Use explicit event wiring
COORDINATION_EVENT_MANAGE_EXISTING=Manage existing event wirings:
+COORDINATION_EVENT_EXISTING_NONE=No existing event wirings.
COORDINATION_EVENT_EXISTING_NAME=Name
COORDINATION_EVENT_EXISTING_SOURCE_WINDOWS=Source windows
COORDINATION_EVENT_EXISTING_SOURCE_EVENTS=Source events
@@ -302,6 +307,7 @@
COORDINATION_EVENT_EXISTING_DESTINATION_WINDOWS=Destination windows
COORDINATION_EVENT_EXISTING_ACTIONS=Actions
COORDINATION_EVENT_CREATE=Create new event wiring:
+COORDINATION_EVENT_CREATE_NO_EVENT=No available events. Cannot create new event wirings.
COORDINATION_EVENT_CREATE_STEP1=1. Select source event:
COORDINATION_EVENT_CREATE_STEP2=2. Select source windows producing event ''{0}'':
COORDINATION_EVENT_CREATE_STEP3=3. Select destination event:
Modified: branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml
===================================================================
--- branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml 2008-09-01 16:03:43 UTC (rev 11778)
+++ branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml 2008-09-01 19:44:59 UTC (rev 11779)
@@ -14,12 +14,13 @@
<!-- Create alias binding -->
<h3 class="sectionTitle tenpx-top-bottom">#{bundle.COORDINATION_ALIAS_CREATE}</h3>
- <h:form>
+ <h:outputText value="#{bundle.COORDINATION_ALIAS_CREATE_NO_PARAMS}" rendered="#{empty aliasCoordination.availableRenderParameters}"/>
+ <h:form rendered="#{!empty aliasCoordination.availableRenderParameters}">
<div class="float-left quarter-width">
#{bundle.COORDINATION_ALIAS_CREATE_STEP1}
<h:selectOneListbox id="alias" size="5" value="#{aliasCoordination.originalQName}"
immediate="true" onchange="this.form.submit()">
- <f:selectItems value="#{windowCoordination.availableRenderParameters}"/>
+ <f:selectItems value="#{aliasCoordination.availableRenderParameters}"/>
</h:selectOneListbox>
</div>
@@ -28,8 +29,8 @@
#{bundle.COORDINATION_ALIAS_CREATE_STEP2}
<h:inputText id="aliasName" value="#{aliasCoordination.aliasName}"/>
<h:commandButton value="#{bundle.COORDINATION_ALIAS_CREATE_CREATE}"
- action="#{aliasCoordination.createBinding}" styleClass="portlet-form-button"/>
- <h:commandButton value="#{bundle.COMMON_CANCEL}" action="#{aliasCoordination.cancelBinding}"
+ action="#{aliasCoordination.create}" styleClass="portlet-form-button"/>
+ <h:commandButton value="#{bundle.COMMON_CANCEL}" action="#{aliasCoordination.cancel}"
styleClass="portlet-form-button"/>
</div>
</h:panelGroup>
@@ -39,8 +40,9 @@
<!-- Manage existing alias bindings -->
<h3 class="sectionTitle tenpx-top-bottom">#{bundle.COORDINATION_ALIAS_MANAGE_EXISTING}</h3>
- <div class="float-left full-width">
- <h:form>
+ <h:outputText value="#{bundle.COORDINATION_ALIAS_EXISTING_NONE}" rendered="#{empty aliasCoordination.displayAliasBindings}"/>
+ <h:form rendered="#{!empty aliasCoordination.displayAliasBindings}">
+ <div class="float-left full-width">
<h:dataTable var="binding" value="#{aliasCoordination.displayAliasBindings}"
rendered="true" styleClass="objectList datatable"
rowClasses="portlet-section-body,portlet-section-alternate-blue"
@@ -55,9 +57,9 @@
<ui:repeat var="qname" value="#{binding.names}">
#{qname}
</ui:repeat>
- </h:column>
+ </h:column>
<h:column>
- <f:facet name="header">#{bundle.COORDINATION_ALIAS_EXISTING_ACTIONS}"</f:facet>
+ <f:facet name="header">#{bundle.COORDINATION_ALIAS_EXISTING_ACTIONS}</f:facet>
<h:commandLink action="renameCoordination" actionListener="#{coordinationManager.select}">
<h:outputText styleClass="actionRename" value="#{bundle.RENAME}"/>
<f:param name="name" value="#{binding.name}"/>
@@ -70,16 +72,16 @@
</h:commandLink>
</h:column>
</h:dataTable>
- </h:form>
- </div>
- <br class="clear"/>
+ </div>
+ <br class="clear"/>
+ </h:form>
</div>
<div class="tenpx-top-bottom">
<h2 class="portlet-area-header">#{bundle.COORDINATION_PARAMETER_BINDINGS}</h2>
<h:form>
- <h:selectBooleanCheckbox id="useImplicitBinding" value="#{coordinationManager.explicitParametersUsed}"
+ <h:selectBooleanCheckbox id="useExplicitBinding" value="#{coordinationManager.explicitParametersUsed}"
onchange="this.form.submit()" immediate="true"/>
#{bundle.COORDINATION_PARAMETER_EXPLICIT_MODE}
</h:form>
@@ -89,32 +91,23 @@
<!-- Create parameter binding -->
<h3 class="sectionTitle tenpx-top-bottom">#{bundle.COORDINATION_PARAMETER_CREATE}</h3>
- <h:form>
+ <h:outputText value="#{bundle.COORDINATION_PARAMETER_CREATE_NO_PAIRS}" rendered="#{empty windowCoordination.availableParameterWindowPairs}"/>
+ <h:form rendered="#{!empty windowCoordination.availableParameterWindowPairs}">
<div class="float-left quarter-width">
#{bundle.COORDINATION_PARAMETER_CREATE_STEP1}
- <h:selectOneListbox id="parameter" size="5" value="#{windowCoordination.selectedRenderParameter}"
+ <h:selectManyListbox id="parameterWindowPair" size="5" value="#{windowCoordination.selectedParameterWindowPairs}"
immediate="true" onchange="this.form.submit()">
- <f:selectItems value="#{windowCoordination.availableRenderParameters}"/>
- </h:selectOneListbox>
+ <f:selectItems value="#{windowCoordination.availableParameterWindowPairs}"/>
+ </h:selectManyListbox>
</div>
- <h:panelGroup rendered="#{!empty windowCoordination.selectedRenderParameter}">
- <div class="float-left quarter-width">
- #{bundle.COORDINATION_PARAMETER_CREATE_STEP2}
- <h:selectManyListbox id="windows" size="5" value="#{windowCoordination.selectedWindows}"
- immediate="true" onchange="this.form.submit()">
- <f:selectItems value="#{windowCoordination.windows}"/>
- </h:selectManyListbox>
- </div>
- </h:panelGroup>
-
- <h:panelGroup rendered="#{!empty windowCoordination.selectedWindows}">
+ <h:panelGroup rendered="#{!empty windowCoordination.selectedParameterWindowPairs}">
<div class="float-left quarter-width">
- #{bundle.COORDINATION_PARAMETER_CREATE_STEP3}
+ #{bundle.COORDINATION_PARAMETER_CREATE_STEP2}
<h:inputText id="bindingName" value="#{windowCoordination.windowBindingName}"/>
<h:commandButton value="#{bundle.COORDINATION_PARAMETER_CREATE_CREATE}"
- action="#{windowCoordination.createBinding}" styleClass="portlet-form-button"/>
- <h:commandButton value="#{bundle.COMMON_CANCEL}" action="#{aliasCoordination.cancelBinding}"
+ action="#{windowCoordination.create}" styleClass="portlet-form-button"/>
+ <h:commandButton value="#{bundle.COMMON_CANCEL}" action="#{windowCoordination.cancel}"
styleClass="portlet-form-button"/>
</div>
</h:panelGroup>
@@ -125,7 +118,8 @@
<!-- Manage existing parameter bindings -->
<h3 class="sectionTitle tenpx-top-bottom">#{bundle.COORDINATION_PARAMETER_MANAGE_EXISTING}</h3>
<div class="float-left full-width">
- <h:form>
+ <h:outputText value="#{bundle.COORDINATION_PARAMETER_EXISTING_NONE}" rendered="#{empty windowCoordination.displayParameterBindings}"/>
+ <h:form rendered="#{!empty windowCoordination.displayParameterBindings}">
<h:dataTable var="binding" value="#{windowCoordination.displayParameterBindings}"
rendered="true" styleClass="objectList datatable"
rowClasses="portlet-section-body,portlet-section-alternate-blue"
@@ -133,31 +127,32 @@
headerClass="portlet-section-header">
<h:column>
<f:facet name="header">#{bundle.COORDINATION_PARAMETER_EXISTING_NAME}</f:facet>
- #{binding.id}
- </h:column>
- <h:column>
- <f:facet name="header">Original QName</f:facet>
#{binding.name}
</h:column>
<h:column>
- <f:facet name="header">#{bundle.COORDINATION_PARAMETER_EXISTING_ACTIONS}</f:facet>
- <ui:repeat var="window" value="#{binding.windows}">
- <h:commandLink action="#{portalobjectmgr.selectObject}" styleClass="objectName">
- <f:param name="id" value="#{window.id}"/>
- #{window.name}
- </h:commandLink>
- </ui:repeat>
+ <f:facet name="header">#{bundle.COORDINATION_PARAMETER_EXISTING_PAIRS}</f:facet>
+ <ul>
+ <ui:repeat var="pair" value="#{binding.parameterWindowPairs}">
+ <li>
+ #{pair.name}#{pair.separator}
+ <h:commandLink action="#{portalobjectmgr.selectObject}" styleClass="objectName">
+ <f:param name="id" value="#{pair.window.id}"/>
+ #{pair.window.name}
+ </h:commandLink>
+ </li>
+ </ui:repeat>
+ </ul>
</h:column>
<h:column>
<f:facet name="header">#{bundle.COORDINATION_PARAMETER_EXISTING_ACTIONS}</f:facet>
<h:commandLink action="renameCoordination" actionListener="#{coordinationManager.select}">
<h:outputText styleClass="actionRename" value="#{bundle.RENAME}"/>
- <f:param name="name" value="#{binding.id}"/>
+ <f:param name="name" value="#{binding.name}"/>
<f:param name="type" value="parameter"/>
</h:commandLink> |
<h:commandLink action="confirmCoordinationDeletion" actionListener="#{coordinationManager.select}">
<h:outputText styleClass="actionDelete" value="#{bundle.COMMON_DELETE}"/>
- <f:param name="name" value="#{binding.id}"/>
+ <f:param name="name" value="#{binding.name}"/>
<f:param name="type" value="parameter"/>
</h:commandLink>
</h:column>
@@ -180,7 +175,8 @@
<hr/>
<!-- Create new event wiring -->
<h3 class="sectionTitle tenpx-top-bottom">#{bundle.COORDINATION_EVENT_CREATE}</h3>
- <h:form>
+ <h:outputText value="#{bundle.COORDINATION_EVENT_CREATE_NO_EVENTS}" rendered="#{empty eventCoordination.sourceEvents}"/>
+ <h:form rendered="#{!empty eventCoordination.sourceEvents}">
<h:panelGroup>
#{bundle.COORDINATION_EVENT_CREATE_STEP1}
<h:selectOneListbox id="sourceEvent" size="5" value="#{eventCoordination.selectedSourceEvent}" immediate="true"
@@ -216,9 +212,9 @@
<h:panelGroup rendered="#{!empty eventCoordination.selectedDestinationWindows}">
#{bundle.COORDINATION_EVENT_CREATE_STEP5}
<h:inputText id="wiringName" value="#{eventCoordination.wiringName}"/>
- <h:commandButton value="#{bundle.COORDINATION_EVENT_CREATE_CREATE}" action="#{eventCoordination.createWiring}"
+ <h:commandButton value="#{bundle.COORDINATION_EVENT_CREATE_CREATE}" action="#{eventCoordination.create}"
styleClass="portlet-form-button"/>
- <h:commandButton value="#{bundle.COMMON_CANCEL}" action="#{eventCoordination.cancelWiring}"
+ <h:commandButton value="#{bundle.COMMON_CANCEL}" action="#{eventCoordination.cancel}"
styleClass="portlet-form-button"/>
</h:panelGroup>
</h:form>
@@ -226,9 +222,9 @@
<!-- Manage existing wirings -->
<h3 class="sectionTitle tenpx-top-bottom">#{bundle.COORDINATION_EVENT_MANAGE_EXISTING}</h3>
- <h:form>
+ <h:outputText value="#{bundle.COORDINATION_EVENT_EXISTING_NONE}" rendered="#{empty eventCoordination.displayEventWirings}"/>
+ <h:form rendered="#{!empty eventCoordination.displayEventWirings}">
<h:dataTable var="wiring" value="#{eventCoordination.displayEventWirings}"
- rendered="true"
styleClass="objectList datatable"
rowClasses="portlet-section-body,portlet-section-alternate-blue"
columnClasses="objectNameColumn, objectActionColumn"
More information about the portal-commits
mailing list