Skip to content

Commit

Permalink
Actually call back the wicket callbacks when the target page is set
Browse files Browse the repository at this point in the history
  • Loading branch information
aaime committed Jan 20, 2016
1 parent ca7b38a commit fbddd3b
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 13 deletions.
Expand Up @@ -27,6 +27,7 @@
import org.apache.wicket.protocol.http.servlet.ServletWebRequest; import org.apache.wicket.protocol.http.servlet.ServletWebRequest;
import org.apache.wicket.request.IExceptionMapper; import org.apache.wicket.request.IExceptionMapper;
import org.apache.wicket.request.IRequestHandler; import org.apache.wicket.request.IRequestHandler;
import org.apache.wicket.request.IRequestHandlerDelegate;
import org.apache.wicket.request.IRequestMapper; import org.apache.wicket.request.IRequestMapper;
import org.apache.wicket.request.Request; import org.apache.wicket.request.Request;
import org.apache.wicket.request.Response; import org.apache.wicket.request.Response;
Expand Down Expand Up @@ -195,7 +196,6 @@ protected void init() {
IRequestMapper cryptoMapper = new CryptoMapper(getRootRequestMapper(), cryptProvider); IRequestMapper cryptoMapper = new CryptoMapper(getRootRequestMapper(), cryptProvider);
setRootRequestMapper(cryptoMapper); setRootRequestMapper(cryptoMapper);


getRequestCycleListeners().add(new PageRequestHandlerTracker());
getRequestCycleListeners().add(new CallbackRequestCycleListener(this)); getRequestCycleListeners().add(new CallbackRequestCycleListener(this));
} }


Expand Down Expand Up @@ -298,17 +298,30 @@ public void onDetach(org.apache.wicket.request.cycle.RequestCycle cycle) {
callback.onAfterTargetsDetached(); callback.onAfterTargetsDetached();
} }
} }

@Override @Override
public void onRequestHandlerResolved(org.apache.wicket.request.cycle.RequestCycle cycle, public void onRequestHandlerScheduled(RequestCycle cycle, IRequestHandler handler) {
IRequestHandler handler) { processHandler(handler);
IPageRequestHandler lastHandler = PageRequestHandlerTracker.getLastHandler(cycle); }
if(lastHandler != null) {
Class pageClass = lastHandler.getPageClass(); private void processHandler(IRequestHandler handler) {
if(handler instanceof IPageRequestHandler) {
IPageRequestHandler pageHandler = (IPageRequestHandler) handler;
Class pageClass = pageHandler.getPageClass();
for (WicketCallback callback : callbacks) { for (WicketCallback callback : callbacks) {
callback.onRequestTargetSet(pageClass); callback.onRequestTargetSet(pageClass);
} }
} else if(handler instanceof IRequestHandlerDelegate) {
IRequestHandlerDelegate delegator = (IRequestHandlerDelegate) handler;
processHandler(delegator.getDelegateHandler());
} }

}

@Override
public void onRequestHandlerResolved(org.apache.wicket.request.cycle.RequestCycle cycle,
IRequestHandler handler) {
processHandler(handler);
} }


@Override @Override
Expand Down
Expand Up @@ -137,7 +137,8 @@ public long size() {


private int sizeInternal() { private int sizeInternal() {
Filter filter = getFilter(); Filter filter = getFilter();
return getCatalog().count(PublishedInfo.class, filter); int result = getCatalog().count(PublishedInfo.class, filter);
return result;
} }


@Override @Override
Expand Down
Expand Up @@ -5,25 +5,24 @@
*/ */
package org.geoserver.web.demo; package org.geoserver.web.demo;


import static org.junit.Assert.*; import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;


import java.util.Iterator; import java.util.Iterator;


import org.apache.wicket.AttributeModifier; import org.apache.wicket.AttributeModifier;
import org.apache.wicket.MarkupContainer; import org.apache.wicket.MarkupContainer;
import org.apache.wicket.behavior.Behavior; import org.apache.wicket.behavior.Behavior;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.repeater.RepeatingView;
import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.markup.repeater.data.DataView;
import org.geoserver.catalog.Catalog; import org.geoserver.catalog.Catalog;
import org.geoserver.catalog.CatalogBuilder; import org.geoserver.catalog.CatalogBuilder;
import org.geoserver.catalog.LayerGroupInfo; import org.geoserver.catalog.LayerGroupInfo;
import org.geoserver.catalog.LayerInfo; import org.geoserver.catalog.LayerInfo;
import org.geoserver.catalog.ResourceInfo;
import org.geoserver.config.GeoServer; import org.geoserver.config.GeoServer;
import org.geoserver.data.test.MockData; import org.geoserver.data.test.MockData;
import org.geoserver.web.GeoServerWicketTestSupport; import org.geoserver.web.GeoServerWicketTestSupport;
import org.geoserver.web.wicket.GeoServerTablePanel;
import org.geoserver.wfs.WFSInfo; import org.geoserver.wfs.WFSInfo;
import org.junit.Ignore; import org.junit.Ignore;
import org.junit.Test; import org.junit.Test;
Expand Down Expand Up @@ -51,6 +50,8 @@ public void testLayerGroupNamesPrefixed() throws Exception {
tester.assertRenderedPage(MapPreviewPage.class); tester.assertRenderedPage(MapPreviewPage.class);


//move to next page //move to next page
GeoServerTablePanel table = (GeoServerTablePanel) tester.getComponentFromLastRenderedPage("table");
System.out.println(table.getDataProvider().size());
tester.clickLink("table:navigatorBottom:navigator:next", true); tester.clickLink("table:navigatorBottom:navigator:next", true);


DataView data = DataView data =
Expand All @@ -60,7 +61,8 @@ public void testLayerGroupNamesPrefixed() throws Exception {
for (Iterator it = data.iterator(); it.hasNext(); ) { for (Iterator it = data.iterator(); it.hasNext(); ) {
MarkupContainer c = (MarkupContainer) it.next(); MarkupContainer c = (MarkupContainer) it.next();
Label l = (Label) c.get("itemProperties:1:component"); Label l = (Label) c.get("itemProperties:1:component");
if ("sf:foo".equals(l.getDefaultModelObjectAsString())) { String model = l.getDefaultModelObjectAsString();
if ("sf:foo".equals(model)) {
exists = true; exists = true;
} }
} }
Expand Down

0 comments on commit fbddd3b

Please sign in to comment.