Repository: syncope
Updated Branches:
  refs/heads/2_0_X a5776a7c2 -> 47da05657
  refs/heads/master f240a850f -> 48c2ab456


Raising exception when searching into invalid realms (for Elasticsearch)


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/47da0565
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/47da0565
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/47da0565

Branch: refs/heads/2_0_X
Commit: 47da0565701ef3531c5bd343f1894bce5ad1a1c7
Parents: a5776a7
Author: Francesco Chicchiriccò <ilgro...@apache.org>
Authored: Wed Aug 9 11:51:59 2017 +0200
Committer: Francesco Chicchiriccò <ilgro...@apache.org>
Committed: Wed Aug 9 11:51:59 2017 +0200

----------------------------------------------------------------------
 .../core/persistence/jpa/dao/ElasticsearchAnySearchDAO.java    | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/47da0565/ext/elasticsearch/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/ElasticsearchAnySearchDAO.java
----------------------------------------------------------------------
diff --git 
a/ext/elasticsearch/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/ElasticsearchAnySearchDAO.java
 
b/ext/elasticsearch/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/ElasticsearchAnySearchDAO.java
index e670e93..3bcc8ed 100644
--- 
a/ext/elasticsearch/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/ElasticsearchAnySearchDAO.java
+++ 
b/ext/elasticsearch/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/ElasticsearchAnySearchDAO.java
@@ -28,9 +28,11 @@ import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.Transformer;
 import org.apache.commons.lang3.tuple.Pair;
 import org.apache.commons.lang3.tuple.Triple;
+import org.apache.syncope.common.lib.SyncopeClientException;
 import org.apache.syncope.common.lib.SyncopeConstants;
 import org.apache.syncope.common.lib.types.AnyTypeKind;
 import org.apache.syncope.common.lib.types.AttrSchemaType;
+import org.apache.syncope.common.lib.types.ClientExceptionType;
 import org.apache.syncope.core.persistence.api.dao.search.AnyCond;
 import org.apache.syncope.core.persistence.api.dao.search.AnyTypeCond;
 import org.apache.syncope.core.persistence.api.dao.search.AssignableCond;
@@ -86,7 +88,9 @@ public class ElasticsearchAnySearchDAO extends 
AbstractAnySearchDAO {
             if (realmPath.startsWith("/")) {
                 Realm realm = realmDAO.findByFullPath(realmPath);
                 if (realm == null) {
-                    LOG.warn("Ignoring invalid realm {}", realmPath);
+                    SyncopeClientException noRealm = 
SyncopeClientException.build(ClientExceptionType.InvalidRealm);
+                    noRealm.getElements().add("Invalid realm specified: " + 
realmPath);
+                    throw noRealm;
                 } else {
                     for (Realm descendant : realmDAO.findDescendants(realm)) {
                         builder.add(QueryBuilders.termQuery("realm", 
descendant.getFullPath()));

Reply via email to