filteredHandlers = new ArrayList<>();
+ for (RequestHandler rh : handlersToFilter){
+ if (include.getHandlers().contains(rh.getName()))
+ filteredHandlers.add(rh);
+ }
+ return filteredHandlers;
+ }
+ }
+ return new ArrayList<>();
+ }
- //in case no path is recognized in excludes it return all handlers
return handlersToFilter;
}
@@ -186,23 +209,23 @@ public class RequestManager implements Filter {
}
// helpers
-/*
+ /*
private boolean shouldExcludeRequest(HttpServletRequest request) {
String query = request.getQueryString();
-
+
log.debug("servletPath is {} and pathInfo is {}",request.getServletPath(), request.getPathInfo());
if ("wsdl".equals(query) || "wsdl=1".equals(query))
return true;
-
+
String path = request.getServletPath()==null?"":request.getServletPath();
-
+
path += request.getPathInfo() ==null?"":request.getPathInfo();
-
-
+
+
log.debug("check if should exclude call with path {}", path);
-
+
for (Exclude exclude : context.configuration().excludes()){
if (!exclude.getHandlers().isEmpty()) continue;
String excludePath= exclude.getPath();
diff --git a/src/test/java/app/SomeApp.java b/src/test/java/app/SomeApp.java
index 4e25724..edc311d 100644
--- a/src/test/java/app/SomeApp.java
+++ b/src/test/java/app/SomeApp.java
@@ -16,7 +16,6 @@ import org.apache.catalina.core.StandardContext;
import org.apache.catalina.startup.Tomcat;
import org.apache.commons.io.FileUtils;
import org.apache.tomcat.util.scan.StandardJarScanner;
-import org.gcube.informationsystem.publisher.RegistryPublisher;
import org.gcube.informationsystem.publisher.ScopedPublisher;
import org.gcube.smartgears.Constants;
import org.gcube.smartgears.configuration.Mode;
@@ -35,11 +34,11 @@ import org.jboss.shrinkwrap.api.exporter.ZipExporter;
import org.jboss.shrinkwrap.api.spec.WebArchive;
import org.jboss.shrinkwrap.impl.base.path.BasicPath;
+import com.sun.jersey.api.client.ClientResponse;
+
import utils.TestProvider;
import utils.TestUtils;
-import com.sun.jersey.api.client.ClientResponse;
-
/**
* Simulates a single-servlet application to be transformed into a gCube resource.
*
diff --git a/src/test/java/test/application/CallValidationTest.java b/src/test/java/test/application/CallValidationTest.java
index e44f7e1..a980908 100644
--- a/src/test/java/test/application/CallValidationTest.java
+++ b/src/test/java/test/application/CallValidationTest.java
@@ -133,7 +133,7 @@ public class CallValidationTest {
SomeApp app = new SomeApp();
- app.configuration().excludes().add(new Exclude(Constants.EXCLUDE_ALL));
+ app.configuration().excludes().add(new Exclude(Constants.WILDCARD));
app.handlers().set(new ProfileManager()).set(new RequestValidator());
@@ -160,7 +160,7 @@ public class CallValidationTest {
SomeApp app = new SomeApp();
- app.configuration().excludes().add(new Exclude("/path"+Constants.EXCLUDE_ALL));
+ app.configuration().excludes().add(new Exclude("/path"+Constants.WILDCARD));
app.handlers().set(new ProfileManager()).set(new RequestValidator());
diff --git a/src/test/java/test/application/ConfigurationTest.java b/src/test/java/test/application/ConfigurationTest.java
index 248f756..a444ccf 100644
--- a/src/test/java/test/application/ConfigurationTest.java
+++ b/src/test/java/test/application/ConfigurationTest.java
@@ -12,6 +12,7 @@ import org.gcube.smartgears.configuration.application.ApplicationConfigurationBi
import org.gcube.smartgears.configuration.application.ApplicationExtensions;
import org.gcube.smartgears.configuration.application.DefaultApplicationConfiguration;
import org.gcube.smartgears.configuration.application.Exclude;
+import org.gcube.smartgears.configuration.application.Include;
import org.gcube.smartgears.extensions.ApplicationExtension;
import org.gcube.smartgears.persistence.DefaultPersistence;
import org.junit.Test;
@@ -28,7 +29,7 @@ public class ConfigurationTest {
"desc" +
"start/scope"+
"another/start/scope"+
- "/path" +
+ "/pathBis" +
"" +
"";
@@ -37,6 +38,7 @@ public class ConfigurationTest {
ApplicationConfiguration bound = binder.bind(new ByteArrayInputStream(xml.getBytes()));
+
System.out.println(bound);
assertEquals(sampleConfiguration(),bound);
@@ -104,7 +106,7 @@ public class ConfigurationTest {
.context("ctx")
.name("name")
.serviceClass("class")
- .excludes(new Exclude(Arrays.asList("request-validation","request-accounting"),"/path"))
+ .includes(new Include("/pathBis"))
.version("version")
.description("desc")
.persistence(new DefaultPersistence("target"));
diff --git a/src/test/java/test/application/StartupTest.java b/src/test/java/test/application/StartupTest.java
index 8f0457a..aecc38f 100644
--- a/src/test/java/test/application/StartupTest.java
+++ b/src/test/java/test/application/StartupTest.java
@@ -15,10 +15,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import java.io.File;
-import java.util.HashSet;
-import java.util.Set;
-import org.gcube.common.resources.gcore.GCoreEndpoint;
import org.gcube.common.resources.gcore.Resource;
import org.gcube.informationsystem.publisher.ScopedPublisher;
import org.gcube.informationsystem.publisher.exception.RegistryNotFoundException;
@@ -36,8 +33,8 @@ import org.junit.Test;
import org.mockito.Matchers;
import org.mockito.Mockito;
-import utils.TestUtils.Box;
import app.SomeApp;
+import utils.TestUtils.Box;
public class StartupTest {
@@ -214,7 +211,7 @@ public class StartupTest {
assertEquals(active,context.lifecycle().state());
- Set runningScopes = new HashSet<>(context.profile(GCoreEndpoint.class).scopes().asCollection());
+ //Set runningScopes = new HashSet<>(context.profile(GCoreEndpoint.class).scopes().asCollection());
//assertEquals(singleton(vre),runningScopes);
diff --git a/src/test/java/utils/TestProvider.java b/src/test/java/utils/TestProvider.java
index 6d1de8a..1d7a295 100644
--- a/src/test/java/utils/TestProvider.java
+++ b/src/test/java/utils/TestProvider.java
@@ -2,7 +2,6 @@ package utils;
import javax.servlet.ServletContext;
-import org.gcube.informationsystem.publisher.RegistryPublisher;
import org.gcube.informationsystem.publisher.ScopedPublisher;
import org.gcube.smartgears.configuration.application.ApplicationConfiguration;
import org.gcube.smartgears.configuration.application.ApplicationExtensions;