You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2013/12/16 14:26:46 UTC

svn commit: r1551204 - in /syncope/trunk: client/src/main/java/org/apache/syncope/client/ common/src/main/java/org/apache/syncope/common/search/ common/src/main/java/org/apache/syncope/common/services/ console/src/main/java/org/apache/syncope/console/p...

Author: ilgrosso
Date: Mon Dec 16 13:26:45 2013
New Revision: 1551204

URL: http://svn.apache.org/r1551204
Log:
[SYNCOPE-300] Providing different FIQL search builders for users and roles

Added:
    syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java   (with props)
    syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java   (with props)
    syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserFiqlSearchConditionBuilder.java
      - copied, changed from r1551172, syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java   (with props)
Modified:
    syncope/trunk/client/src/main/java/org/apache/syncope/client/SyncopeClient.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeProperty.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/services/RoleService.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ProvisioningModalPage.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchPanel.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSearchPanel.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleTabPanel.java
    syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchPanel.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/ExternalResource.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ResourceController.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/notification/NotificationTest.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/NotificationTest.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/NotificationTestITCase.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java

Modified: syncope/trunk/client/src/main/java/org/apache/syncope/client/SyncopeClient.java
URL: http://svn.apache.org/viewvc/syncope/trunk/client/src/main/java/org/apache/syncope/client/SyncopeClient.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/client/src/main/java/org/apache/syncope/client/SyncopeClient.java (original)
+++ syncope/trunk/client/src/main/java/org/apache/syncope/client/SyncopeClient.java Mon Dec 16 13:26:45 2013
@@ -18,13 +18,13 @@
  */
 package org.apache.syncope.client;
 
-import org.apache.syncope.common.search.SyncopeFiqlSearchConditionBuilder;
-import java.util.Map;
+import org.apache.syncope.common.search.UserFiqlSearchConditionBuilder;
 import javax.ws.rs.core.EntityTag;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 import org.apache.cxf.jaxrs.client.WebClient;
 import org.apache.syncope.client.rest.RestClientFactoryBean;
+import org.apache.syncope.common.search.RoleFiqlSearchConditionBuilder;
 import org.apache.syncope.common.services.UserSelfService;
 import org.apache.syncope.common.services.WorkflowService;
 import org.apache.syncope.common.types.AttributableType;
@@ -57,22 +57,21 @@ public class SyncopeClient {
     }
 
     /**
-     * Returns a new instance of <tt>SyncopeFiqlSearchConditionBuilder</tt>, for assisted building of FIQL queries.
+     * Returns a new instance of <tt>UserFiqlSearchConditionBuilder</tt>, for assisted building of FIQL queries.
      *
-     * @return default instance of <tt>SyncopeFiqlSearchConditionBuilder</tt>
+     * @return default instance of <tt>UserFiqlSearchConditionBuilder</tt>
      */
-    public static SyncopeFiqlSearchConditionBuilder getSearchConditionBuilder() {
-        return new SyncopeFiqlSearchConditionBuilder();
+    public static UserFiqlSearchConditionBuilder getUserSearchConditionBuilder() {
+        return new UserFiqlSearchConditionBuilder();
     }
 
     /**
-     * Returns a new instance of <tt>SyncopeFiqlSearchConditionBuilder</tt>, for assisted building of FIQL queries.
+     * Returns a new instance of <tt>RoleFiqlSearchConditionBuilder</tt>, for assisted building of FIQL queries.
      *
-     * @param properties additional properties (date format, timezone support, etc.)
-     * @return default instance of <tt>SyncopeFiqlSearchConditionBuilder</tt>
+     * @return default instance of <tt>RoleFiqlSearchConditionBuilder</tt>
      */
-    public static SyncopeFiqlSearchConditionBuilder getSearchConditionBuilder(final Map<String, String> properties) {
-        return new SyncopeFiqlSearchConditionBuilder(properties);
+    public static RoleFiqlSearchConditionBuilder getRoleSearchConditionBuilder() {
+        return new RoleFiqlSearchConditionBuilder();
     }
 
     /**

Added: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java?rev=1551204&view=auto
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java (added)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java Mon Dec 16 13:26:45 2013
@@ -0,0 +1,90 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.syncope.common.search;
+
+import java.util.Map;
+import org.apache.cxf.jaxrs.ext.search.client.CompleteCondition;
+import org.apache.cxf.jaxrs.ext.search.fiql.FiqlParser;
+
+/**
+ * Extends <tt>SyncopeFiqlSearchConditionBuilder</tt> by providing some additional facilities for searching
+ * roles in Syncope.
+ */
+public class RoleFiqlSearchConditionBuilder extends SyncopeFiqlSearchConditionBuilder {
+
+    public RoleFiqlSearchConditionBuilder() {
+        super();
+    }
+
+    public RoleFiqlSearchConditionBuilder(final Map<String, String> properties) {
+        super(properties);
+    }
+
+    @Override
+    protected Builder newBuilderInstance() {
+        return new Builder(properties);
+    }
+
+    @Override
+    public RoleProperty is(final String property) {
+        return newBuilderInstance().is(property);
+    }
+
+    public CompleteCondition hasEntitlements(final String entitlement, final String... moreEntitlements) {
+        return newBuilderInstance().is(SpecialAttr.ENTITLEMENTS.toString()).
+                hasEntitlements(entitlement, moreEntitlements);
+    }
+
+    public CompleteCondition hasNotEntitlements(final String entitlement, final String... moreEntitlements) {
+        return newBuilderInstance().is(SpecialAttr.ENTITLEMENTS.toString()).
+                hasNotEntitlements(entitlement, moreEntitlements);
+    }
+
+    protected static class Builder extends SyncopeFiqlSearchConditionBuilder.Builder
+            implements RoleProperty, CompleteCondition {
+
+        public Builder(final Map<String, String> properties) {
+            super(properties);
+        }
+
+        public Builder(final Builder parent) {
+            super(parent);
+        }
+
+        @Override
+        public RoleProperty is(final String property) {
+            Builder b = new Builder(this);
+            b.result = property;
+            return b;
+        }
+
+        @Override
+        public CompleteCondition hasEntitlements(final String entitlement, final String... moreEntitlements) {
+            this.result = SpecialAttr.ENTITLEMENTS.toString();
+            return condition(FiqlParser.EQ, entitlement, (Object[]) moreEntitlements);
+        }
+
+        @Override
+        public CompleteCondition hasNotEntitlements(final String entitlement, final String... moreEntitlements) {
+            this.result = SpecialAttr.ENTITLEMENTS.toString();
+            return condition(FiqlParser.NEQ, entitlement, (Object[]) moreEntitlements);
+        }
+
+    }
+}

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleFiqlSearchConditionBuilder.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java?rev=1551204&view=auto
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java (added)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java Mon Dec 16 13:26:45 2013
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.syncope.common.search;
+
+import org.apache.cxf.jaxrs.ext.search.client.CompleteCondition;
+
+public interface RoleProperty extends SyncopeProperty {
+
+    CompleteCondition hasEntitlements(String entitlement, String... moreEntitlements);
+
+    CompleteCondition hasNotEntitlements(String entitlement, String... moreEntitlements);
+
+}

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/RoleProperty.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java Mon Dec 16 13:26:45 2013
@@ -25,10 +25,7 @@ import org.apache.cxf.jaxrs.ext.search.c
 import org.apache.cxf.jaxrs.ext.search.client.FiqlSearchConditionBuilder;
 import org.apache.cxf.jaxrs.ext.search.fiql.FiqlParser;
 
-/**
- * Extends <tt>FiqlSearchConditionBuilder</tt> by providing some additional facilities for searching in Syncope.
- */
-public class SyncopeFiqlSearchConditionBuilder extends FiqlSearchConditionBuilder {
+public abstract class SyncopeFiqlSearchConditionBuilder extends FiqlSearchConditionBuilder {
 
     public static final Map<String, String> CONTEXTUAL_PROPERTIES;
 
@@ -37,11 +34,11 @@ public class SyncopeFiqlSearchConditionB
         CONTEXTUAL_PROPERTIES.put(SearchUtils.LAX_PROPERTY_MATCH, "true");
     }
 
-    public SyncopeFiqlSearchConditionBuilder() {
+    protected SyncopeFiqlSearchConditionBuilder() {
         super();
     }
 
-    public SyncopeFiqlSearchConditionBuilder(final Map<String, String> properties) {
+    protected SyncopeFiqlSearchConditionBuilder(final Map<String, String> properties) {
         super(properties);
     }
 
@@ -50,7 +47,6 @@ public class SyncopeFiqlSearchConditionB
         return new Builder(properties);
     }
 
-    @Override
     public SyncopeProperty is(final String property) {
         return newBuilderInstance().is(property);
     }
@@ -63,40 +59,14 @@ public class SyncopeFiqlSearchConditionB
         return newBuilderInstance().is(property).notNullValue();
     }
 
-    public CompleteCondition hasRoles(final Long role, final Long... moreRoles) {
-        return newBuilderInstance().is(SpecialAttr.ROLES.toString()).hasRoles(role, moreRoles);
-    }
-
-    public CompleteCondition hasNotRoles(final Long role, final Long... moreRoles) {
-        return newBuilderInstance().is(SpecialAttr.ROLES.toString()).hasNotRoles(role, moreRoles);
-    }
-
-    public CompleteCondition hasResources(final String resource, final String... moreResources) {
-        return newBuilderInstance().is(SpecialAttr.RESOURCES.toString()).hasResources(resource, moreResources);
-    }
-
-    public CompleteCondition hasNotResources(final String resource, final String... moreResources) {
-        return newBuilderInstance().is(SpecialAttr.RESOURCES.toString()).hasNotResources(resource, moreResources);
-    }
-
-    public CompleteCondition hasEntitlements(final String entitlement, final String... moreEntitlements) {
-        return newBuilderInstance().is(SpecialAttr.ENTITLEMENTS.toString()).
-                hasEntitlements(entitlement, moreEntitlements);
-    }
-
-    public CompleteCondition hasNotEntitlements(final String entitlement, final String... moreEntitlements) {
-        return newBuilderInstance().is(SpecialAttr.ENTITLEMENTS.toString()).
-                hasNotEntitlements(entitlement, moreEntitlements);
-    }
-
     protected static class Builder extends FiqlSearchConditionBuilder.Builder
             implements SyncopeProperty, CompleteCondition {
 
-        public Builder(final Map<String, String> properties) {
+        protected Builder(final Map<String, String> properties) {
             super(properties);
         }
 
-        public Builder(final Builder parent) {
+        protected Builder(final Builder parent) {
             super(parent);
         }
 
@@ -117,42 +87,5 @@ public class SyncopeFiqlSearchConditionB
             return condition(FiqlParser.NEQ, SpecialAttr.NULL);
         }
 
-        @Override
-        public CompleteCondition hasRoles(final Long role, final Long... moreRoles) {
-            this.result = SpecialAttr.ROLES.toString();
-            return condition(FiqlParser.EQ, role, (Object[]) moreRoles);
-        }
-
-        @Override
-        public CompleteCondition hasNotRoles(final Long role, final Long... moreRoles) {
-            this.result = SpecialAttr.ROLES.toString();
-            return condition(FiqlParser.NEQ, role, (Object[]) moreRoles);
-        }
-
-        @Override
-        public CompleteCondition hasResources(final String resource, final String... moreResources) {
-            this.result = SpecialAttr.RESOURCES.toString();
-            return condition(FiqlParser.EQ, resource, (Object[]) moreResources);
-        }
-
-        @Override
-        public CompleteCondition hasNotResources(final String resource, final String... moreResources) {
-            this.result = SpecialAttr.RESOURCES.toString();
-            return condition(FiqlParser.NEQ, resource, (Object[]) moreResources);
-        }
-
-        @Override
-        public CompleteCondition hasEntitlements(final String entitlement, final String... moreEntitlements) {
-            this.result = SpecialAttr.ENTITLEMENTS.toString();
-            return condition(FiqlParser.EQ, entitlement, (Object[]) moreEntitlements);
-        }
-
-        @Override
-        public CompleteCondition hasNotEntitlements(final String entitlement, final String... moreEntitlements) {
-            this.result = SpecialAttr.ENTITLEMENTS.toString();
-            return condition(FiqlParser.NEQ, entitlement, (Object[]) moreEntitlements);
-        }
-
     }
-
 }

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeProperty.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeProperty.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeProperty.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeProperty.java Mon Dec 16 13:26:45 2013
@@ -24,22 +24,10 @@ import org.apache.cxf.jaxrs.ext.search.c
 /**
  * Extension of fluent interface, for {@link SyncopeFiqlSearchConditionBuilder}.
  */
-public interface SyncopeProperty extends Property {
+public abstract interface SyncopeProperty extends Property {
 
     CompleteCondition nullValue();
 
     CompleteCondition notNullValue();
 
-    CompleteCondition hasRoles(Long role, Long... moreRoles);
-
-    CompleteCondition hasNotRoles(Long role, Long... moreRoles);
-
-    CompleteCondition hasResources(String resource, String... moreResources);
-
-    CompleteCondition hasNotResources(String resource, String... moreResources);
-
-    CompleteCondition hasEntitlements(String entitlement, String... moreEntitlements);
-
-    CompleteCondition hasNotEntitlements(String entitlement, String... moreEntitlements);
-
 }

Copied: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserFiqlSearchConditionBuilder.java (from r1551172, syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java)
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserFiqlSearchConditionBuilder.java?p2=syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserFiqlSearchConditionBuilder.java&p1=syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java&r1=1551172&r2=1551204&rev=1551204&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/search/SyncopeFiqlSearchConditionBuilder.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserFiqlSearchConditionBuilder.java Mon Dec 16 13:26:45 2013
@@ -18,30 +18,21 @@
  */
 package org.apache.syncope.common.search;
 
-import java.util.HashMap;
 import java.util.Map;
-import org.apache.cxf.jaxrs.ext.search.SearchUtils;
 import org.apache.cxf.jaxrs.ext.search.client.CompleteCondition;
-import org.apache.cxf.jaxrs.ext.search.client.FiqlSearchConditionBuilder;
 import org.apache.cxf.jaxrs.ext.search.fiql.FiqlParser;
 
 /**
- * Extends <tt>FiqlSearchConditionBuilder</tt> by providing some additional facilities for searching in Syncope.
+ * Extends <tt>SyncopeFiqlSearchConditionBuilder</tt> by providing some additional facilities for searching
+ * users in Syncope.
  */
-public class SyncopeFiqlSearchConditionBuilder extends FiqlSearchConditionBuilder {
+public class UserFiqlSearchConditionBuilder extends SyncopeFiqlSearchConditionBuilder {
 
-    public static final Map<String, String> CONTEXTUAL_PROPERTIES;
-
-    static {
-        CONTEXTUAL_PROPERTIES = new HashMap<String, String>();
-        CONTEXTUAL_PROPERTIES.put(SearchUtils.LAX_PROPERTY_MATCH, "true");
-    }
-
-    public SyncopeFiqlSearchConditionBuilder() {
+    public UserFiqlSearchConditionBuilder() {
         super();
     }
 
-    public SyncopeFiqlSearchConditionBuilder(final Map<String, String> properties) {
+    public UserFiqlSearchConditionBuilder(final Map<String, String> properties) {
         super(properties);
     }
 
@@ -51,18 +42,10 @@ public class SyncopeFiqlSearchConditionB
     }
 
     @Override
-    public SyncopeProperty is(final String property) {
+    public UserProperty is(final String property) {
         return newBuilderInstance().is(property);
     }
 
-    public CompleteCondition isNull(final String property) {
-        return newBuilderInstance().is(property).nullValue();
-    }
-
-    public CompleteCondition isNotNull(final String property) {
-        return newBuilderInstance().is(property).notNullValue();
-    }
-
     public CompleteCondition hasRoles(final Long role, final Long... moreRoles) {
         return newBuilderInstance().is(SpecialAttr.ROLES.toString()).hasRoles(role, moreRoles);
     }
@@ -79,18 +62,8 @@ public class SyncopeFiqlSearchConditionB
         return newBuilderInstance().is(SpecialAttr.RESOURCES.toString()).hasNotResources(resource, moreResources);
     }
 
-    public CompleteCondition hasEntitlements(final String entitlement, final String... moreEntitlements) {
-        return newBuilderInstance().is(SpecialAttr.ENTITLEMENTS.toString()).
-                hasEntitlements(entitlement, moreEntitlements);
-    }
-
-    public CompleteCondition hasNotEntitlements(final String entitlement, final String... moreEntitlements) {
-        return newBuilderInstance().is(SpecialAttr.ENTITLEMENTS.toString()).
-                hasNotEntitlements(entitlement, moreEntitlements);
-    }
-
-    protected static class Builder extends FiqlSearchConditionBuilder.Builder
-            implements SyncopeProperty, CompleteCondition {
+    protected static class Builder extends SyncopeFiqlSearchConditionBuilder.Builder
+            implements UserProperty, CompleteCondition {
 
         public Builder(final Map<String, String> properties) {
             super(properties);
@@ -101,23 +74,13 @@ public class SyncopeFiqlSearchConditionB
         }
 
         @Override
-        public SyncopeProperty is(final String property) {
+        public UserProperty is(final String property) {
             Builder b = new Builder(this);
             b.result = property;
             return b;
         }
 
         @Override
-        public CompleteCondition nullValue() {
-            return condition(FiqlParser.EQ, SpecialAttr.NULL);
-        }
-
-        @Override
-        public CompleteCondition notNullValue() {
-            return condition(FiqlParser.NEQ, SpecialAttr.NULL);
-        }
-
-        @Override
         public CompleteCondition hasRoles(final Long role, final Long... moreRoles) {
             this.result = SpecialAttr.ROLES.toString();
             return condition(FiqlParser.EQ, role, (Object[]) moreRoles);
@@ -141,18 +104,6 @@ public class SyncopeFiqlSearchConditionB
             return condition(FiqlParser.NEQ, resource, (Object[]) moreResources);
         }
 
-        @Override
-        public CompleteCondition hasEntitlements(final String entitlement, final String... moreEntitlements) {
-            this.result = SpecialAttr.ENTITLEMENTS.toString();
-            return condition(FiqlParser.EQ, entitlement, (Object[]) moreEntitlements);
-        }
-
-        @Override
-        public CompleteCondition hasNotEntitlements(final String entitlement, final String... moreEntitlements) {
-            this.result = SpecialAttr.ENTITLEMENTS.toString();
-            return condition(FiqlParser.NEQ, entitlement, (Object[]) moreEntitlements);
-        }
-
     }
 
 }

Added: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java?rev=1551204&view=auto
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java (added)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java Mon Dec 16 13:26:45 2013
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.syncope.common.search;
+
+import org.apache.cxf.jaxrs.ext.search.client.CompleteCondition;
+
+public interface UserProperty extends SyncopeProperty {
+
+    CompleteCondition hasRoles(Long role, Long... moreRoles);
+
+    CompleteCondition hasNotRoles(Long role, Long... moreRoles);
+
+    CompleteCondition hasResources(String resource, String... moreResources);
+
+    CompleteCondition hasNotResources(String resource, String... moreResources);
+
+}

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Propchange: syncope/trunk/common/src/main/java/org/apache/syncope/common/search/UserProperty.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/services/RoleService.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/services/RoleService.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/services/RoleService.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/services/RoleService.java Mon Dec 16 13:26:45 2013
@@ -32,8 +32,6 @@ import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 
-import org.apache.cxf.jaxrs.model.wadl.Description;
-
 import org.apache.syncope.common.mod.RoleMod;
 import org.apache.syncope.common.to.RoleTO;
 import org.apache.syncope.common.types.ResourceAssociationActionType;
@@ -106,7 +104,7 @@ public interface RoleService extends JAX
      */
     @GET
     @Path("search")
-    PagedResult<RoleTO> search(@Description("FIQL search expression") @QueryParam("fiql") String fiql);
+    PagedResult<RoleTO> search(@QueryParam("fiql") String fiql);
 
     /**
      * @param fiql FIQL search expression
@@ -116,7 +114,7 @@ public interface RoleService extends JAX
      */
     @GET
     @Path("search")
-    PagedResult<RoleTO> search(@Description("FIQL search expression") @QueryParam("fiql") String fiql,
+    PagedResult<RoleTO> search(@QueryParam("fiql") String fiql,
             @QueryParam(PARAM_PAGE) @DefaultValue(DEFAULT_PARAM_PAGE) int page,
             @QueryParam(PARAM_SIZE) @DefaultValue(DEFAULT_PARAM_SIZE) int size);
 

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ProvisioningModalPage.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ProvisioningModalPage.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ProvisioningModalPage.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ProvisioningModalPage.java Mon Dec 16 13:26:45 2013
@@ -186,7 +186,7 @@ public class ProvisioningModalPage<T ext
         @SuppressWarnings("unchecked")
         @Override
         public List<StatusBean> getStatusBeans() {
-            final String fiql = SyncopeClient.getSearchConditionBuilder().hasResources(resourceTO.getName()).query();
+            final String fiql = SyncopeClient.getUserSearchConditionBuilder().hasResources(resourceTO.getName()).query();
 
             final List<T> attributables = new ArrayList<T>();
             if (UserTO.class.isAssignableFrom(typeRef)) {

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchPanel.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/AbstractSearchPanel.java Mon Dec 16 13:26:45 2013
@@ -28,11 +28,12 @@ import org.apache.cxf.jaxrs.ext.search.S
 import org.apache.cxf.jaxrs.ext.search.SearchCondition;
 import org.apache.cxf.jaxrs.ext.search.client.CompleteCondition;
 import org.apache.cxf.jaxrs.ext.search.fiql.FiqlParser;
-import org.apache.syncope.client.SyncopeClient;
+import org.apache.syncope.common.search.RoleFiqlSearchConditionBuilder;
 import org.apache.syncope.common.search.SearchableFields;
 import org.apache.syncope.common.search.SpecialAttr;
 import org.apache.syncope.common.search.SyncopeFiqlSearchConditionBuilder;
 import org.apache.syncope.common.search.SyncopeProperty;
+import org.apache.syncope.common.search.UserFiqlSearchConditionBuilder;
 import org.apache.syncope.common.to.ResourceTO;
 import org.apache.syncope.common.types.AttributableType;
 import org.apache.syncope.console.rest.AuthRestClient;
@@ -295,10 +296,12 @@ public abstract class AbstractSearchPane
         return clauses;
     }
 
+    protected abstract SyncopeFiqlSearchConditionBuilder getSearchConditionBuilder();
+
     public String buildFIQL() {
         LOG.debug("Generating FIQL from List<SearchClause>: {}", searchClauses);
 
-        SyncopeFiqlSearchConditionBuilder builder = SyncopeClient.getSearchConditionBuilder();
+        SyncopeFiqlSearchConditionBuilder builder = getSearchConditionBuilder();
 
         CompleteCondition prevCondition;
         CompleteCondition condition = null;
@@ -308,21 +311,25 @@ public abstract class AbstractSearchPane
             switch (searchClauses.get(i).getType()) {
                 case ENTITLEMENT:
                     condition = searchClauses.get(i).getComparator() == SearchClause.Comparator.EQUALS
-                            ? builder.hasEntitlements(searchClauses.get(i).getProperty())
-                            : builder.hasNotEntitlements(searchClauses.get(i).getProperty());
+                            ? ((RoleFiqlSearchConditionBuilder) builder).
+                            hasEntitlements(searchClauses.get(i).getProperty())
+                            : ((RoleFiqlSearchConditionBuilder) builder).
+                            hasNotEntitlements(searchClauses.get(i).getProperty());
                     break;
 
                 case MEMBERSHIP:
                     Long roleId = Long.valueOf(searchClauses.get(i).getProperty().split(" ")[0]);
                     condition = searchClauses.get(i).getComparator() == SearchClause.Comparator.EQUALS
-                            ? builder.hasRoles(roleId)
-                            : builder.hasNotRoles(roleId);
+                            ? ((UserFiqlSearchConditionBuilder) builder).hasRoles(roleId)
+                            : ((UserFiqlSearchConditionBuilder) builder).hasNotRoles(roleId);
                     break;
 
                 case RESOURCE:
                     condition = searchClauses.get(i).getComparator() == SearchClause.Comparator.EQUALS
-                            ? builder.hasResources(searchClauses.get(i).getProperty())
-                            : builder.hasNotResources(searchClauses.get(i).getProperty());
+                            ? ((UserFiqlSearchConditionBuilder) builder).
+                            hasResources(searchClauses.get(i).getProperty())
+                            : ((UserFiqlSearchConditionBuilder) builder).
+                            hasNotResources(searchClauses.get(i).getProperty());
                     break;
 
                 case ATTRIBUTE:

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSearchPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSearchPanel.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSearchPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSearchPanel.java Mon Dec 16 13:26:45 2013
@@ -22,6 +22,8 @@ import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
+import org.apache.syncope.client.SyncopeClient;
+import org.apache.syncope.common.search.SyncopeFiqlSearchConditionBuilder;
 import org.apache.syncope.common.types.AttributableType;
 import org.apache.wicket.model.LoadableDetachableModel;
 
@@ -83,4 +85,10 @@ public class RoleSearchPanel extends Abs
             }
         };
     }
+
+    @Override
+    protected SyncopeFiqlSearchConditionBuilder getSearchConditionBuilder() {
+        return SyncopeClient.getRoleSearchConditionBuilder();
+    }
+
 }

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleTabPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleTabPanel.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleTabPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleTabPanel.java Mon Dec 16 13:26:45 2013
@@ -182,7 +182,7 @@ public class RoleTabPanel extends Panel 
             protected void onSubmitInternal(final AjaxRequestTarget target, final Form<?> form) {
                 userListContainer.replace(new UserSearchResultPanel("userList",
                         true,
-                        SyncopeClient.getSearchConditionBuilder().hasRoles(selectedNode.getId()).query(),
+                        SyncopeClient.getUserSearchConditionBuilder().hasRoles(selectedNode.getId()).query(),
                         pageRef,
                         userRestClient));
 

Modified: syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchPanel.java
URL: http://svn.apache.org/viewvc/syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchPanel.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchPanel.java (original)
+++ syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchPanel.java Mon Dec 16 13:26:45 2013
@@ -21,6 +21,8 @@ package org.apache.syncope.console.pages
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.List;
+import org.apache.syncope.client.SyncopeClient;
+import org.apache.syncope.common.search.SyncopeFiqlSearchConditionBuilder;
 import org.apache.syncope.common.to.RoleTO;
 import org.apache.syncope.common.types.AttributableType;
 import org.apache.syncope.console.rest.RoleRestClient;
@@ -102,4 +104,10 @@ public class UserSearchPanel extends Abs
             }
         };
     }
+
+    @Override
+    protected SyncopeFiqlSearchConditionBuilder getSearchConditionBuilder() {
+        return SyncopeClient.getUserSearchConditionBuilder();
+    }
+
 }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/ExternalResource.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/ExternalResource.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/ExternalResource.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/ExternalResource.java Mon Dec 16 13:26:45 2013
@@ -194,7 +194,7 @@ public class ExternalResource extends Ab
         return connector;
     }
 
-    public void setConnector(ConnInstance connector) {
+    public void setConnector(final ConnInstance connector) {
         this.connector = connector;
     }
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ResourceController.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ResourceController.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ResourceController.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ResourceController.java Mon Dec 16 13:26:45 2013
@@ -164,9 +164,7 @@ public class ResourceController extends 
             resources = connInstance.getResources();
         }
 
-        List<ResourceTO> result = binder.getResourceTOs(resources);
-
-        return result;
+        return binder.getResourceTOs(resources);
     }
 
     @PreAuthorize("hasRole('RESOURCE_GETCONNECTOROBJECT')")

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/notification/NotificationTest.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/notification/NotificationTest.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/notification/NotificationTest.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/notification/NotificationTest.java Mon Dec 16 13:26:45 2013
@@ -209,8 +209,8 @@ public class NotificationTest {
         // 1. create suitable notification for subsequent tests
         Notification notification = new Notification();
         notification.addEvent("[REST]:[UserController]:[]:[create]:[SUCCESS]");
-        notification.setAbout(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
-        notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(8L).query());
+        notification.setAbout(SyncopeClient.getUserSearchConditionBuilder().hasRoles(7L).query());
+        notification.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(8L).query());
         notification.setSelfAsRecipient(true);
 
         notification.setRecipientAttrName("email");
@@ -259,8 +259,8 @@ public class NotificationTest {
         // 1. create suitable notification for subsequent tests
         Notification notification = new Notification();
         notification.addEvent("[REST]:[UserController]:[]:[create]:[SUCCESS]");
-        notification.setAbout(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
-        notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(8L).query());
+        notification.setAbout(SyncopeClient.getUserSearchConditionBuilder().hasRoles(7L).query());
+        notification.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(8L).query());
         notification.setSelfAsRecipient(true);
 
         notification.setRecipientAttrName("email");
@@ -312,7 +312,7 @@ public class NotificationTest {
         Notification notification = new Notification();
         notification.addEvent("[REST]:[UserController]:[]:[create]:[SUCCESS]");
         notification.setAbout(null);
-        notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(8L).query());
+        notification.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(8L).query());
         notification.setSelfAsRecipient(true);
 
         notification.setRecipientAttrName("email");
@@ -362,7 +362,7 @@ public class NotificationTest {
         Notification notification = new Notification();
         notification.addEvent("[REST]:[UserController]:[]:[create]:[SUCCESS]");
         notification.setAbout(null);
-        notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(8L).query());
+        notification.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(8L).query());
         notification.setSelfAsRecipient(true);
 
         notification.setRecipientAttrName("email");

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/NotificationTest.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/NotificationTest.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/NotificationTest.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/NotificationTest.java Mon Dec 16 13:26:45 2013
@@ -59,10 +59,10 @@ public class NotificationTest extends Ab
         Notification notification = new Notification();
         notification.addEvent("save");
 
-        notification.setAbout(SyncopeClient.getSearchConditionBuilder().
+        notification.setAbout(SyncopeClient.getUserSearchConditionBuilder().
                 is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query());
 
-        notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
+        notification.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(7L).query());
 
         notification.setRecipientAttrName("email");
         notification.setRecipientAttrType(IntMappingType.UserSchema);

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java Mon Dec 16 13:26:45 2013
@@ -206,7 +206,7 @@ public class AuthenticationTestITCase ex
                 getService(UserService.class);
 
         PagedResult<UserTO> matchedUsers = userService2.search(
-                SyncopeClient.getSearchConditionBuilder().isNotNull("loginDate").query());
+                SyncopeClient.getUserSearchConditionBuilder().isNotNull("loginDate").query());
         assertNotNull(matchedUsers);
         assertFalse(matchedUsers.getResult().isEmpty());
         Set<Long> userIds = new HashSet<Long>(matchedUsers.getResult().size());
@@ -218,7 +218,7 @@ public class AuthenticationTestITCase ex
         UserService userService3 = clientFactory.create("verdi", "password").getService(UserService.class);
 
         matchedUsers = userService3.search(
-                SyncopeClient.getSearchConditionBuilder().isNotNull("loginDate").query());
+                SyncopeClient.getUserSearchConditionBuilder().isNotNull("loginDate").query());
         assertNotNull(matchedUsers);
 
         userIds = new HashSet<Long>(matchedUsers.getResult().size());

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/NotificationTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/NotificationTestITCase.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/NotificationTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/NotificationTestITCase.java Mon Dec 16 13:26:45 2013
@@ -45,7 +45,7 @@ public class NotificationTestITCase exte
         notificationTO.setTraceLevel(TraceLevel.SUMMARY);
         notificationTO.getEvents().add("create");
 
-        notificationTO.setAbout(SyncopeClient.getSearchConditionBuilder().
+        notificationTO.setAbout(SyncopeClient.getUserSearchConditionBuilder().
                 is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query());
 
         notificationTO.setRecipientAttrName("email");
@@ -76,7 +76,7 @@ public class NotificationTestITCase exte
     @Test
     public void create() {
         NotificationTO notificationTO = buildNotificationTO();
-        notificationTO.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
+        notificationTO.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(7L).query());
 
         Response response = notificationService.create(notificationTO);
         NotificationTO actual = getObject(response.getLocation(), NotificationService.class,
@@ -91,7 +91,7 @@ public class NotificationTestITCase exte
     @Test
     public void update() {
         NotificationTO notificationTO = notificationService.read(1L);
-        notificationTO.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
+        notificationTO.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(7L).query());
 
         notificationService.update(notificationTO.getId(), notificationTO);
         NotificationTO actual = notificationService.read(notificationTO.getId());

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java Mon Dec 16 13:26:45 2013
@@ -42,7 +42,7 @@ public class SearchTestITCase extends Ab
     public void searchUser() {
         // LIKE
         PagedResult<UserTO> matchedUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().
+                SyncopeClient.getUserSearchConditionBuilder().
                 is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query());
         assertNotNull(matchedUsers);
         assertFalse(matchedUsers.getResult().isEmpty());
@@ -53,7 +53,7 @@ public class SearchTestITCase extends Ab
 
         // ISNULL
         matchedUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().isNull("loginDate").query());
+                SyncopeClient.getUserSearchConditionBuilder().isNull("loginDate").query());
         assertNotNull(matchedUsers);
         assertFalse(matchedUsers.getResult().isEmpty());
 
@@ -68,7 +68,7 @@ public class SearchTestITCase extends Ab
     @Test
     public void searchByUsernameAndId() {
         final PagedResult<UserTO> matchingUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().
+                SyncopeClient.getUserSearchConditionBuilder().
                 is("username").equalTo("rossini").and("id").lessThan(2).query());
 
         assertNotNull(matchingUsers);
@@ -80,8 +80,7 @@ public class SearchTestITCase extends Ab
     @Test
     public void searchByRolenameAndId() {
         final PagedResult<RoleTO> matchingRoles = roleService.search(
-                SyncopeClient.getSearchConditionBuilder().
-                is("name").equalTo("root").and("id").lessThan(2).query());
+                SyncopeClient.getRoleSearchConditionBuilder().is("name").equalTo("root").and("id").lessThan(2).query());
 
         assertNotNull(matchingRoles);
         assertEquals(1, matchingRoles.getResult().size());
@@ -92,7 +91,7 @@ public class SearchTestITCase extends Ab
     @Test
     public void searchUserByResourceName() {
         PagedResult<UserTO> matchedUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().hasResources(RESOURCE_NAME_MAPPINGS2).query());
+                SyncopeClient.getUserSearchConditionBuilder().hasResources(RESOURCE_NAME_MAPPINGS2).query());
         assertNotNull(matchedUsers);
         assertFalse(matchedUsers.getResult().isEmpty());
 
@@ -109,7 +108,7 @@ public class SearchTestITCase extends Ab
     public void paginatedSearch() {
         // LIKE
         PagedResult<UserTO> matchedUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().
+                SyncopeClient.getUserSearchConditionBuilder().
                 is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query(), 1, 2);
         assertNotNull(matchedUsers);
 
@@ -120,7 +119,7 @@ public class SearchTestITCase extends Ab
 
         // ISNULL
         matchedUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().isNull("loginDate").query(), 1, 2);
+                SyncopeClient.getUserSearchConditionBuilder().isNull("loginDate").query(), 1, 2);
 
         assertNotNull(matchedUsers);
         assertFalse(matchedUsers.getResult().isEmpty());
@@ -134,7 +133,7 @@ public class SearchTestITCase extends Ab
     @Test
     public void searchByBooleanAttributableCond() {
         final PagedResult<RoleTO> matchingRoles = roleService.search(
-                SyncopeClient.getSearchConditionBuilder().is("inheritAttrs").equalTo("true").query());
+                SyncopeClient.getRoleSearchConditionBuilder().is("inheritAttrs").equalTo("true").query());
         assertNotNull(matchingRoles);
         assertFalse(matchingRoles.getResult().isEmpty());
     }
@@ -142,14 +141,14 @@ public class SearchTestITCase extends Ab
     @Test
     public void searchByEntitlement() {
         final PagedResult<RoleTO> matchingRoles = roleService.search(
-                SyncopeClient.getSearchConditionBuilder().hasEntitlements("USER_LIST", "USER_READ").query());
+                SyncopeClient.getRoleSearchConditionBuilder().hasEntitlements("USER_LIST", "USER_READ").query());
         assertNotNull(matchingRoles);
         assertFalse(matchingRoles.getResult().isEmpty());
     }
 
     @Test
     public void searchByRelationshipAttributableCond() {
-        final PagedResult<RoleTO> matchingRoles = roleService.search(SyncopeClient.getSearchConditionBuilder().
+        final PagedResult<RoleTO> matchingRoles = roleService.search(SyncopeClient.getRoleSearchConditionBuilder().
                 isNotNull("passwordPolicy").and("userOwner").equalTo(5).query());
 
         assertNotNull(matchingRoles);

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java Mon Dec 16 13:26:45 2013
@@ -412,12 +412,12 @@ public class TaskTestITCase extends Abst
 
         // 2. verify that synchronized role is found, with expected attributes
         final PagedResult<RoleTO> matchingRoles = roleService.search(
-                SyncopeClient.getSearchConditionBuilder().is("name").equalTo("testLDAPGroup").query());
+                SyncopeClient.getRoleSearchConditionBuilder().is("name").equalTo("testLDAPGroup").query());
         assertNotNull(matchingRoles);
         assertEquals(1, matchingRoles.getResult().size());
 
         final PagedResult<UserTO> matchingUsers = userService.search(
-                SyncopeClient.getSearchConditionBuilder().is("username").equalTo("syncFromLDAP").query());
+                SyncopeClient.getUserSearchConditionBuilder().is("username").equalTo("syncFromLDAP").query());
         assertNotNull(matchingUsers);
         assertEquals(1, matchingUsers.getResult().size());
 
@@ -435,7 +435,7 @@ public class TaskTestITCase extends Abst
 
         // 3. verify that LDAP group membership is propagated as Syncope role membership
         final PagedResult<UserTO> members = userService.search(
-                SyncopeClient.getSearchConditionBuilder().hasRoles(roleTO.getId()).query());
+                SyncopeClient.getUserSearchConditionBuilder().hasRoles(roleTO.getId()).query());
         assertNotNull(members);
         assertEquals(1, members.getResult().size());
     }
@@ -537,9 +537,9 @@ public class TaskTestITCase extends Abst
         notification.setTraceLevel(TraceLevel.FAILURES);
         notification.getEvents().add("[REST]:[UserController]:[]:[create]:[SUCCESS]");
 
-        notification.setAbout(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
+        notification.setAbout(SyncopeClient.getUserSearchConditionBuilder().hasRoles(7L).query());
 
-        notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(8L).query());
+        notification.setRecipients(SyncopeClient.getUserSearchConditionBuilder().hasRoles(8L).query());
         notification.setSelfAsRecipient(true);
 
         notification.setRecipientAttrName("email");

Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java?rev=1551204&r1=1551203&r2=1551204&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java Mon Dec 16 13:26:45 2013
@@ -35,7 +35,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void eq() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("username").equalTo("rossini").query();
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().is("username").equalTo("rossini").query();
         assertEquals("username==rossini", fiqlExpression);
 
         AttributableCond attrCond = new AttributableCond(AttributeCond.Type.EQ);
@@ -48,7 +48,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void like() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("username").equalTo("ros*").query();
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().is("username").equalTo("ros*").query();
         assertEquals("username==ros*", fiqlExpression);
 
         AttributeCond attrCond = new AttributableCond(AttributeCond.Type.LIKE);
@@ -61,7 +61,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void isNull() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("loginDate").nullValue().query();
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().is("loginDate").nullValue().query();
         assertEquals("loginDate==" + SpecialAttr.NULL, fiqlExpression);
 
         AttributeCond attrCond = new AttributeCond(AttributeCond.Type.ISNULL);
@@ -73,7 +73,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void isNotNull() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("loginDate").notNullValue().query();
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().is("loginDate").notNullValue().query();
         assertEquals("loginDate!=" + SpecialAttr.NULL, fiqlExpression);
 
         AttributeCond attrCond = new AttributeCond(AttributeCond.Type.ISNOTNULL);
@@ -85,7 +85,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void roles() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().hasRoles(1L).query();
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().hasRoles(1L).query();
         assertEquals(SpecialAttr.ROLES + "==1", fiqlExpression);
 
         MembershipCond membCond = new MembershipCond();
@@ -97,7 +97,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void resources() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().hasResources("resource-ldap").query();
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().hasResources("resource-ldap").query();
         assertEquals(SpecialAttr.RESOURCES + "==resource-ldap", fiqlExpression);
 
         ResourceCond resCond = new ResourceCond();
@@ -109,7 +109,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void entitlements() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().hasEntitlements("USER_LIST").query();
+        String fiqlExpression = SyncopeClient.getRoleSearchConditionBuilder().hasEntitlements("USER_LIST").query();
         assertEquals(SpecialAttr.ENTITLEMENTS + "==USER_LIST", fiqlExpression);
 
         EntitlementCond entCond = new EntitlementCond();
@@ -121,7 +121,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void and() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().
                 is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query();
         assertEquals("fullname==*o*;fullname==*i*", fiqlExpression);
 
@@ -140,7 +140,7 @@ public class SearchCondConverterTest ext
 
     @Test
     public void or() {
-        String fiqlExpression = SyncopeClient.getSearchConditionBuilder().
+        String fiqlExpression = SyncopeClient.getUserSearchConditionBuilder().
                 is("fullname").equalTo("*o*", "*i*", "*ini").query();
         assertEquals("fullname==*o*,fullname==*i*,fullname==*ini", fiqlExpression);