Fixed a rewrite bug regarding availability with operation or.
Change-Id: Idc24dbf85ca5fea9f5adc49df1c8025f3b5340f1
diff --git a/core/src/main/java/de/ids_mannheim/korap/resource/rewrite/CollectionRewrite.java b/core/src/main/java/de/ids_mannheim/korap/resource/rewrite/CollectionRewrite.java
index e2e6318..108bc28 100644
--- a/core/src/main/java/de/ids_mannheim/korap/resource/rewrite/CollectionRewrite.java
+++ b/core/src/main/java/de/ids_mannheim/korap/resource/rewrite/CollectionRewrite.java
@@ -14,6 +14,7 @@
import de.ids_mannheim.korap.config.KustvaktConfiguration;
import de.ids_mannheim.korap.exceptions.KustvaktException;
import de.ids_mannheim.korap.query.object.KoralMatchOperator;
+import de.ids_mannheim.korap.query.object.KoralOperation;
import de.ids_mannheim.korap.resource.rewrite.KoralNode.RewriteIdentifier;
import de.ids_mannheim.korap.user.User;
import de.ids_mannheim.korap.utils.JsonUtils;
@@ -36,7 +37,7 @@
private List<String> checkAvailability (JsonNode node, List<String> userAvailabilities) {
- if (node.has("operands")) {
+ if (node.has("operands") && node.at("/operation").asText().equals(KoralOperation.AND)) {
ArrayList<JsonNode> operands = Lists
.newArrayList(node.at("/operands").elements());
for (int i = 0; i < operands.size(); i++) {