fixed running tests
diff --git a/src/main/java/de/ids_mannheim/korap/web/service/full/AuthService.java b/src/main/java/de/ids_mannheim/korap/web/service/full/AuthService.java
index 490479d..27de612 100644
--- a/src/main/java/de/ids_mannheim/korap/web/service/full/AuthService.java
+++ b/src/main/java/de/ids_mannheim/korap/web/service/full/AuthService.java
@@ -2,7 +2,7 @@
import com.sun.jersey.spi.container.ContainerRequest;
import com.sun.jersey.spi.container.ResourceFilters;
-import de.ids_mannheim.korap.config.BeanConfiguration;
+import de.ids_mannheim.korap.config.BeansFactory;
import de.ids_mannheim.korap.exceptions.KustvaktException;
import de.ids_mannheim.korap.exceptions.StatusCodes;
import de.ids_mannheim.korap.interfaces.AuthenticationManagerIface;
@@ -10,7 +10,7 @@
import de.ids_mannheim.korap.user.*;
import de.ids_mannheim.korap.utils.JsonUtils;
import de.ids_mannheim.korap.utils.KustvaktLogger;
-import de.ids_mannheim.korap.utils.ServiceVersion;
+import de.ids_mannheim.korap.utils.ServiceInfo;
import de.ids_mannheim.korap.web.KustvaktServer;
import de.ids_mannheim.korap.web.filter.AuthFilter;
import de.ids_mannheim.korap.web.filter.DefaultFilter;
@@ -44,7 +44,7 @@
// private SendMail mail;
public AuthService() {
- this.controller = BeanConfiguration.getBeans()
+ this.controller = BeansFactory.getKustvaktContext()
.getAuthenticationManager();
//todo: replace with real property values
// this.mail = new SendMail(ExtConfiguration.getMailProperties());
@@ -63,10 +63,10 @@
public Response bootstrap() {
Map m = new HashMap();
// m.put("settings", new UserSettings().toObjectMap());
- m.put("ql", BeanConfiguration.getBeans().getConfiguration()
+ m.put("ql", BeansFactory.getKustvaktContext().getConfiguration()
.getQueryLanguages());
m.put("SortTypes", null); // types of sorting that are supported!
- m.put("version", ServiceVersion.getAPIVersion());
+ m.put("version", ServiceInfo.getInfo().getVersion());
return Response.ok(JsonUtils.toJSON(m)).build();
}
diff --git a/src/main/java/de/ids_mannheim/korap/web/service/full/OAuthService.java b/src/main/java/de/ids_mannheim/korap/web/service/full/OAuthService.java
index 5e5e2cf..463e068 100644
--- a/src/main/java/de/ids_mannheim/korap/web/service/full/OAuthService.java
+++ b/src/main/java/de/ids_mannheim/korap/web/service/full/OAuthService.java
@@ -65,11 +65,11 @@
public OAuthService() {
this.handler = new OAuth2Handler(
- BeanConfiguration.getBeans().getPersistenceClient());
- this.controller = BeanConfiguration.getBeans()
+ BeansFactory.getKustvaktContext().getPersistenceClient());
+ this.controller = BeansFactory.getKustvaktContext()
.getAuthenticationManager();
- this.crypto = BeanConfiguration.getBeans().getEncryption();
- this.config = BeanConfiguration.getBeans().getConfiguration();
+ this.crypto = BeansFactory.getKustvaktContext().getEncryption();
+ this.config = BeansFactory.getKustvaktContext().getConfiguration();
}
@POST
diff --git a/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java b/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java
index 3b0691e..cd10d64 100644
--- a/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java
+++ b/src/main/java/de/ids_mannheim/korap/web/service/full/ResourceService.java
@@ -3,7 +3,7 @@
import com.fasterxml.jackson.databind.JsonNode;
import com.sun.jersey.core.util.MultivaluedMapImpl;
import com.sun.jersey.spi.container.ResourceFilters;
-import de.ids_mannheim.korap.config.BeanConfiguration;
+import de.ids_mannheim.korap.config.BeansFactory;
import de.ids_mannheim.korap.config.KustvaktConfiguration;
import de.ids_mannheim.korap.exceptions.EmptyResultException;
import de.ids_mannheim.korap.exceptions.KustvaktException;
@@ -12,8 +12,7 @@
import de.ids_mannheim.korap.interfaces.AuthenticationManagerIface;
import de.ids_mannheim.korap.query.serialize.MetaQueryBuilder;
import de.ids_mannheim.korap.query.serialize.QuerySerializer;
-import de.ids_mannheim.korap.resource.rewrite.FoundryInject;
-import de.ids_mannheim.korap.resource.rewrite.RewriteHandler;
+import de.ids_mannheim.korap.resource.rewrite.*;
import de.ids_mannheim.korap.resources.*;
import de.ids_mannheim.korap.security.ac.ResourceFinder;
import de.ids_mannheim.korap.security.ac.ResourceHandler;
@@ -60,17 +59,18 @@
private RewriteHandler processor;
public ResourceService() {
- this.controller = BeanConfiguration.getBeans()
+ this.controller = BeansFactory.getKustvaktContext()
.getAuthenticationManager();
- this.config = BeanConfiguration.getBeans().getConfiguration();
+ this.config = BeansFactory.getKustvaktContext().getConfiguration();
this.resourceHandler = new ResourceHandler();
this.searchKrill = new SearchKrill(config.getIndexDir());
UriBuilder builder = UriBuilder.fromUri("http://10.0.10.13").port(9997);
this.graphDBhandler = new ClientsHandler(builder.build());
- this.processor = new RewriteHandler(config);
- this.processor.add(FoundryInject.class);
+ this.processor = new RewriteHandler();
+ this.processor.defaultRewriteConstraints();
+ this.processor.insertBeans(BeansFactory.getKustvaktContext());
}
/**
@@ -304,10 +304,20 @@
TokenContext ctx = (TokenContext) securityContext.getUserPrincipal();
QuerySerializer ss;
CollectionQueryBuilder3 cquery = new CollectionQueryBuilder3();
+ if (cq != null)
+ cquery.setBaseQuery(cq);
+
User user;
try {
user = controller.getUser(ctx.getUsername());
- Set<Corpus> resources = ResourceFinder.search(user, Corpus.class);
+ Set<Corpus> resources = new HashSet<>();
+
+ if (User.UserFactory.isDemo(ctx.getUsername()))
+ resources = ResourceFinder.searchPublic(Corpus.class);
+ else
+ resources = ResourceFinder.search(user, Corpus.class);
+ System.out.println("RESOURCES FOUND "+ resources);
+
for (KustvaktResource corpus : resources)
cquery.addQuery("corpusID=" + corpus.getPersistentID());
}catch (KustvaktException e) {
@@ -315,8 +325,7 @@
}
ss = new QuerySerializer().setQuery(q, ql, v);
- if (cq != null)
- ss.setCollection(cq);
+ ss.setCollection(cquery.toJSON());
MetaQueryBuilder meta = new MetaQueryBuilder();
if (pageIndex != null)
@@ -347,7 +356,8 @@
* @param pageIndex
* @return
*/
- // todo: test
+
+ //todo: does cq have any sensable worth here?
@TRACE
@Path("{type}/{id}/search")
public Response buildQuery(@Context Locale locale,
@@ -372,6 +382,7 @@
try {
User user = controller.getUser(ctx.getUsername());
+ //todo: instead of throwing exception, build notification and rewrites into result query
KustvaktResource resource;
if (StringUtils.isInteger(id))
resource = this.resourceHandler
@@ -387,15 +398,11 @@
}catch (KustvaktException e) {
KustvaktLogger.ERROR_LOGGER.error("Exception encountered!", e);
- throw KustvaktResponseHandler.throwit(e);
+ //throw KustvaktResponseHandler.throwit(e);
}
ss = new QuerySerializer().setQuery(q, ql, v);
- // todo: parse resources
- if (cq != null)
- ss.setCollection(cq);
-
MetaQueryBuilder meta = new MetaQueryBuilder();
if (pageIndex != null)
meta.addEntry("startIndex", pageIndex);
@@ -483,7 +490,7 @@
// meta.addEntry("itemsPerResource", 1);
serializer.setMeta(meta.raw());
- // policy rewrite!
+ //fixme: policy rewrite!
String query = this.processor.preProcess(serializer.toJSON(), user);
jlog.info("the serialized query {}", query);
@@ -567,8 +574,6 @@
.throwit(StatusCodes.ILLEGAL_ARGUMENT,
"Type parameter not supported", type);
- // functions.createQuery(id, type, user, query, ql, v);
-
meta.addEntry("startIndex", pageIndex);
meta.addEntry("startPage", pageInteger);
meta.setSpanContext(ctx);
@@ -582,6 +587,8 @@
query = s.toJSON();
// PolicyParser parser = new PolicyParser(user);
// query = parser.parse(s.toJSON());
+ //todo: 1
+
}
String result;
try {
@@ -899,7 +906,7 @@
cachetmp.setStats(JsonUtils.readSimple(stats, Map.class));
}
- if (!cache && !user.isDemo()) {
+ if (!cache && !User.UserFactory.isDemo(ctx.getUsername())) {
collection = ResourceFactory
.getPermanentCollection(cachetmp, name, description);
vals = collection.toMap();
diff --git a/src/main/java/de/ids_mannheim/korap/web/service/full/UserService.java b/src/main/java/de/ids_mannheim/korap/web/service/full/UserService.java
index 973544f..45999fc 100644
--- a/src/main/java/de/ids_mannheim/korap/web/service/full/UserService.java
+++ b/src/main/java/de/ids_mannheim/korap/web/service/full/UserService.java
@@ -4,7 +4,7 @@
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.sun.jersey.spi.container.ContainerRequest;
import com.sun.jersey.spi.container.ResourceFilters;
-import de.ids_mannheim.korap.config.BeanConfiguration;
+import de.ids_mannheim.korap.config.BeansFactory;
import de.ids_mannheim.korap.config.Scopes;
import de.ids_mannheim.korap.config.URIParam;
import de.ids_mannheim.korap.exceptions.KustvaktException;
@@ -38,8 +38,6 @@
public class UserService {
private static Logger jlog = LoggerFactory.getLogger(UserService.class);
- // private static Logger jlog = KustvaktLogger
- // .getLogger(KustvaktLogger.SECURITY_LOG);
private AuthenticationManagerIface controller;
private
@@ -47,7 +45,7 @@
UriInfo info;
public UserService() {
- this.controller = BeanConfiguration.getBeans()
+ this.controller = BeansFactory.getKustvaktContext()
.getAuthenticationManager();
}
@@ -237,7 +235,7 @@
try {
User user = controller.getUser(ctx.getUsername());
Userdata data = controller.getUserData(user, UserSettings.class);
- data.addField(Attributes.USERNAME, ctx.getUsername());
+ data.setField(Attributes.USERNAME, ctx.getUsername());
result = data.data();
}catch (KustvaktException e) {
jlog.error("Exception encountered!", e);
@@ -259,7 +257,7 @@
try {
User user = controller.getUser(ctx.getUsername());
- if (user.isDemo())
+ if (User.UserFactory.isDemo(ctx.getUsername()))
return Response.notModified().build();
Userdata data = controller.getUserData(user, UserSettings.class);
@@ -293,7 +291,7 @@
try {
User user = controller.getUser(ctx.getUsername());
Userdata data = controller.getUserData(user, UserDetails.class);
- data.addField(Attributes.USERNAME, ctx.getUsername());
+ data.setField(Attributes.USERNAME, ctx.getUsername());
result = data.data();
}catch (KustvaktException e) {
jlog.error("Exception encountered!", e);
@@ -315,7 +313,7 @@
try {
User user = controller.getUser(ctx.getUsername());
- if (user.isDemo())
+ if (User.UserFactory.isDemo(ctx.getUsername()))
return Response.notModified().build();
UserDetails new_data = new UserDetails(user.getId());
@@ -393,7 +391,7 @@
TokenContext ctx = (TokenContext) context.getUserPrincipal();
try {
User user = controller.getUser(ctx.getUsername());
- if (user.isDemo())
+ if (User.UserFactory.isDemo(ctx.getUsername()))
return Response.notModified().build();
controller.deleteAccount(user);
}catch (KustvaktException e) {