Author: wesleyhales
Date: 2008-08-14 12:31:48 -0400 (Thu, 14 Aug 2008)
New Revision: 11695
Modified:
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/actions/CoordinationAction.java
branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml
Log:
parameter/window binding ui cleanup and fixes
Modified:
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/actions/CoordinationAction.java
===================================================================
---
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/actions/CoordinationAction.java 2008-08-14
04:14:23 UTC (rev 11694)
+++
branches/JBoss_Portal_Branch_2_7/core-admin/src/main/org/jboss/portal/core/admin/ui/actions/CoordinationAction.java 2008-08-14
16:31:48 UTC (rev 11695)
@@ -59,6 +59,7 @@
import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
+import java.util.ArrayList;
/**
* @author <a href="mailto:whales@redhat.com">Wesley Hales</a>
@@ -84,7 +85,7 @@
private Map<String, Map<String,String>> windowBindings;
- private List<String> selectedRenderParameters;
+ private String selectedRenderParameter;
private Map<String, String> availableRenderParameters;
@@ -193,14 +194,14 @@
this.windowBindings = windowBindings;
}
- public List<String> getSelectedRenderParameters()
+ public String getSelectedRenderParameter()
{
- return selectedRenderParameters;
+ return selectedRenderParameter;
}
- public void setSelectedRenderParameters(List<String> selectedRenderParameters)
+ public void setSelectedRenderParameter(String selectedRenderParameter)
{
- this.selectedRenderParameters = selectedRenderParameters;
+ this.selectedRenderParameter = selectedRenderParameter;
}
public String getWindowBindingName()
@@ -513,6 +514,54 @@
}
}
+ public static class DisplayParameterBinding implements Comparable{
+
+ private String id;
+
+ private QName name;
+
+ private List<Window> windows;
+
+ 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 int compareTo(Object o)
+ {
+ DisplayParameterBinding other = (DisplayParameterBinding)o;
+ return id.compareTo(other.getId());
+ }
+ }
+
public static class WindowSelectItem extends SelectItem implements Comparable
{
public WindowSelectItem(Window window)
@@ -569,6 +618,18 @@
}
}
+ private List<DisplayParameterBinding> displayParameterBindings;
+
+ public List<DisplayParameterBinding> getDisplayParameterBindings()
+ {
+ return displayParameterBindings;
+ }
+
+ public void setDisplayParameterBindings(List<DisplayParameterBinding>
displayParameterBindings)
+ {
+ this.displayParameterBindings = displayParameterBindings;
+ }
+
private void loadWindowBindings()
{
PortalObject portalObject = getSelectedObject();
@@ -576,53 +637,57 @@
{
Page page = (Page)portalObject;
//windowbindings prep for ui
- windowBindings = new LinkedHashMap<String, Map<String, String>>();
+ //windowBindings = new LinkedHashMap<String, Map<String, String>>();
+ displayParameterBindings = new ArrayList<DisplayParameterBinding>();
for (Object o : pomb.getCoordinationService().getWindowBindings(page))
{
WindowBindingInfo wbInfo = (WindowBindingInfo)o;
+ DisplayParameterBinding dpb = new DisplayParameterBinding();
for (Object o1 : wbInfo.getWindows().entrySet())
{
+
Map.Entry entry = (Map.Entry)o1;
Map tempMap = new LinkedHashMap<String,String>();
Window paramName = (Window)entry.getKey();
QName paramValue = (QName)entry.getValue();
- tempMap.put(paramValue.toString(), paramName.getName());
- windowBindings.put(wbInfo.getId(),tempMap);
+ //quick filter for duplicate binding ids
+ dpb.getWindows().add(paramName);
+ if(dpb.getWindows().size() < 2){
+ dpb.setId(wbInfo.getId());
+ dpb.setName(paramValue);
+ }
+
+
+
+// tempMap.put(paramValue.toString(), paramName.getName());
+// windowBindings.put(wbInfo.getId(),tempMap);
}
+ displayParameterBindings.add(dpb);
}
}
}
public void createWindowBinding(ActionEvent event)
{
-
- System.out.println("-----------++++++++++ " +
selectedRenderParameters.size());
Map<Window, QName> windowBinding = null;
-
for (String window : selectedWindows)
{
- windowBinding = new LinkedHashMap<Window, QName>();
+ windowBinding = new HashMap<Window, QName>();
PortalObject portalObject =
pomb.getPortalObjectContainer().getObject(parsePortalObjectId(window));
if (portalObject.getType() == PortalObject.TYPE_WINDOW)
{
- for (String binding : selectedRenderParameters)
+ windowBinding.put((Window)portalObject,
QName.valueOf(selectedRenderParameter));
+ try
{
- System.out.println("----------window name-" +
portalObject.getName());
- System.out.println("----------namespace-" + binding);
- windowBinding.put((Window)portalObject, QName.valueOf(binding));
+ pomb.getCoordinationService().setWindowBinding(windowBindingName,
windowBinding);
}
+ catch (IllegalCoordinationException e)
+ {
+ e.printStackTrace(); //To change body of catch statement use File |
Settings | File Templates.
+ }
}
}
- try
- {
- pomb.getCoordinationService().setWindowBinding(windowBindingName,
windowBinding);
- }
- catch (IllegalCoordinationException e)
- {
- e.printStackTrace(); //To change body of catch statement use File | Settings |
File Templates.
- }
loadWindowBindings();
-
}
}
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-08-14
04:14:23 UTC (rev 11694)
+++
branches/JBoss_Portal_Branch_2_7/core-admin/src/resources/portal-admin-war/jsf/editCoordination.xhtml 2008-08-14
16:31:48 UTC (rev 11695)
@@ -21,9 +21,9 @@
<div class="float-left quarter-width">
Available Render Parameter Names
- <h:selectManyListbox size="5"
value="#{coordinationAction.selectedRenderParameters}">
+ <h:selectOneListbox size="5"
value="#{coordinationAction.selectedRenderParameter}">
<f:selectItems
value="#{coordinationAction.availableRenderParameters}"/>
- </h:selectManyListbox>
+ </h:selectOneListbox>
</div>
@@ -42,27 +42,52 @@
<h:commandButton
actionListener="#{coordinationAction.createWindowBinding}" value="Create
Binding" />
<br class="clear"/>
- <hr/>
- #{coordinationAction.windowBindings}
- <hr/>
- <ui:repeat var="wb"
value="#{coordinationAction.windowBindings}">
- #{wb}
- </ui:repeat>
</h:form>
<!-- Manage existing parameter bindings -->
<h3 class="sectionTitle tenpx-top-bottom">Manage Existing
Parameter Bindings</h3>
- <div class="float-left quarter-width">
- <ui:remove>
- <h:selectManyListbox size="5"
value="#{coordinationAction.selectedRenderParameters}">
- <f:selectItems value="#{coordinationAction.windows}"/>
- </h:selectManyListbox>
- </ui:remove>
+ <div class="float-left full-width">
+ <h:form>
+ <h:dataTable var="binding"
value="#{coordinationAction.displayParameterBindings}"
+ rendered="true"
+ styleClass="objectList datatable"
+
rowClasses="portlet-section-body,portlet-section-alternate-blue"
+ columnClasses="objectNameColumn"
+ headerClass="portlet-section-header">
+ <h:column>
+ <f:facet name="header">
+ Binding 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">
+ Target Windows
+ </f:facet>
+ <ui:repeat var="window"
value="#{binding.windows}">
+ #{window.name},
+ </ui:repeat>
+
+ </h:column>
+
+ <h:column>
+ <f:facet name="header">
+ Actions
+ </f:facet>
+ Delete | Rename
+
+ </h:column>
+ </h:dataTable>
+ </h:form>
</div>
- <div class="float-left quarter-width">
- <h:inputText value="#{coordinationAction.stringStub}"/>
- </div>
+
<br class="clear"/>
</div>
Show replies by date