Author: julien(a)jboss.com
Date: 2008-02-07 07:22:13 -0500 (Thu, 07 Feb 2008)
New Revision: 9834
Modified:
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/ControllerFilter.java
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/Page.java
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/PagePortletControllerContext.java
Log:
fix bug in maximize
Modified:
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/ControllerFilter.java
===================================================================
---
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/ControllerFilter.java 2008-02-07
12:04:09 UTC (rev 9833)
+++
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/ControllerFilter.java 2008-02-07
12:22:13 UTC (rev 9834)
@@ -235,6 +235,7 @@
List<Chunk> chunks = new LinkedList<Chunk>();
int mode = 0;
int count = 0;
+ Map<StartPortletChunk, Window> windows = Collections.emptyMap();
for (Iterator<Chunk> i = page.getChunks().iterator();i.hasNext();)
{
Chunk chunk = i.next();
@@ -257,6 +258,7 @@
{
mode = 2;
chunks.add(startPortletChunk);
+ windows = Collections.singletonMap(startPortletChunk,
window);
}
}
else if (chunk instanceof EndPageChunk)
@@ -284,7 +286,7 @@
}
// New page
- page = new Page(chunks, Collections.singletonMap(window.getId(), window));
+ page = new Page(chunks, windows);
}
}
@@ -296,7 +298,6 @@
OutputStreamWriter writer = new OutputStreamWriter(out);
//
- int count = 0;
String windowId = null;
StartPortletChunk startPortletChunk = null;
PortletInvocationResponse portletResponse = null;
@@ -317,7 +318,8 @@
else if (chunk instanceof StartPortletChunk)
{
startPortletChunk = (StartPortletChunk)chunk;
- windowId = "" + count++;
+ Window window = page.getWindow(startPortletChunk);
+ windowId = window.getId();
portletResponse = responses.get(windowId);
}
else if (chunk instanceof StartPortletTitleChunk)
Modified:
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/Page.java
===================================================================
---
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/Page.java 2008-02-07
12:04:09 UTC (rev 9833)
+++
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/Page.java 2008-02-07
12:22:13 UTC (rev 9834)
@@ -26,11 +26,12 @@
import org.jboss.portal.portlet.controller.PortletControllerContext;
import org.jboss.portal.portlet.controller.state.PageNavigationalState;
import org.jboss.portal.portlet.test.jsp.response.Chunk;
+import org.jboss.portal.portlet.test.jsp.response.portlet.StartPortletChunk;
import java.util.Map;
import java.util.HashMap;
+import java.util.Collection;
import java.util.List;
-import java.util.Collection;
/**
* @author <a href="mailto:julien@jboss.org">Julien Viet</a>
@@ -40,25 +41,37 @@
{
/** . */
- private Map<String, Window> windows;
+ private List<Chunk> chunks;
/** . */
- private List<Chunk> chunks;
+ private Map<StartPortletChunk, Window> windows;
- public Page(List<Chunk> chunks, Map<String, Window> windows)
+ public Page(List<Chunk> chunks, Map<StartPortletChunk, Window> windows)
{
this.chunks = chunks;
this.windows = windows;
}
- public List<Chunk> getChunks()
+ public Collection<Chunk> getChunks()
{
return chunks;
}
+ public Window getWindow(Chunk chunk)
+ {
+ return windows.get(chunk);
+ }
+
public Window getWindow(String windowId)
{
- return windows.get(windowId);
+ for (Window window : windows.values())
+ {
+ if (window.getId().equals(windowId))
+ {
+ return window;
+ }
+ }
+ return null;
}
public Collection<Window> getWindows()
Modified:
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/PagePortletControllerContext.java
===================================================================
---
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/PagePortletControllerContext.java 2008-02-07
12:04:09 UTC (rev 9833)
+++
modules/portlet/trunk/test/src/main/java/org/jboss/portal/portlet/test/jsp/PagePortletControllerContext.java 2008-02-07
12:22:13 UTC (rev 9834)
@@ -73,7 +73,7 @@
// Collect portlets to create the page
int counter = 0;
- Map<String, Window> windows = new LinkedHashMap<String, Window>();
+ Map<StartPortletChunk, Window> windows = new
LinkedHashMap<StartPortletChunk, Window>();
for (Chunk chunk : buffer.getChunks())
{
if (chunk instanceof StartPortletChunk)
@@ -93,7 +93,7 @@
//
if (applicationName.equals(startPortletChunk.getApplicationName())
&& portletName.equals(startPortletChunk.getPortletName()))
{
- windows.put(windowId, new Window(windowId, portlet));
+ windows.put(startPortletChunk, new Window(windowId, portlet));
}
}
}
@@ -105,8 +105,8 @@
}
//
-
+
//
this.page = new Page(buffer.getChunks(), windows);
this.invoker = invoker;