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/01/22 14:33:25 UTC

svn commit: r1436910 [1/3] - in /syncope/trunk: client/ common/src/main/java/org/apache/syncope/common/services/ common/src/main/java/org/apache/syncope/common/to/ common/src/main/java/org/apache/syncope/common/types/ common/src/main/java/org/apache/sy...

Author: ilgrosso
Date: Tue Jan 22 13:33:22 2013
New Revision: 1436910

URL: http://svn.apache.org/viewvc?rev=1436910&view=rev
Log:
Removing (or silencing when not possible) unchecked calls from everywhere but console - too much crowded

Added:
    syncope/trunk/core/src/test/java/org/apache/syncope/core/AbstractNonDAOTest.java   (with props)
Modified:
    syncope/trunk/client/pom.xml
    syncope/trunk/common/src/main/java/org/apache/syncope/common/services/SchemaService.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MappingTO.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MembershipTO.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditElements.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditLoggerName.java
    syncope/trunk/common/src/main/java/org/apache/syncope/common/util/AttributableOperations.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttrValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttributable.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractMapping.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrUniqueValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MDerAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MVirAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/Membership.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrUniqueValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RDerAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMapping.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMappingItem.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RVirAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/SyncopeRole.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/SyncopeUser.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrUniqueValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrValue.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UDerAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMapping.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMappingItem.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UVirAttr.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/SchemaDAO.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/VirSchemaDAO.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AbstractAttributableDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrValueDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttributableSearchDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConfDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConnInstanceDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ContentLoader.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/DerAttrDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/DerSchemaDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/EntitlementDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/LoggerDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/MembershipDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/NotificationDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/PolicyDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ReportExecDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ResourceDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/RoleDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/SchemaDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/TaskExecDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/UserDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/UserRequestDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/VirAttrDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/VirSchemaDAOImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/openjpa/JBossPersistenceMappingFactory.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/policy/PolicyEvaluator.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/propagation/impl/ConnectorFacadeProxy.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/propagation/impl/PropagationManager.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/report/ReportJob.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/DerivedSchemaController.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/RoleController.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/SchemaController.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/VirtualSchemaController.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/PolicyDataBinder.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/ReportDataBinder.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/RoleDataBinder.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/services/DummyHTTPServletResponse.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/sync/impl/SyncopeSyncResultHandler.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/util/AttributableUtil.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/util/ImportExport.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/util/MappingUtil.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/util/TaskUtil.java
    syncope/trunk/core/src/main/java/org/apache/syncope/core/workflow/user/activiti/ActivitiUserWorkflowAdapter.java
    syncope/trunk/core/src/main/resources/logback.xml
    syncope/trunk/core/src/main/resources/persistenceContextEMFactory.xml
    syncope/trunk/core/src/test/java/org/apache/syncope/core/AbstractTest.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/connid/PasswordGeneratorTest.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/init/ConnInstanceLoaderTest.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/AbstractDAOTest.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/persistence/dao/impl/TestDbInitializer.java
    syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/ResourceDataTest.java
    syncope/trunk/core/src/test/resources/persistenceTestEnv.xml

Modified: syncope/trunk/client/pom.xml
URL: http://svn.apache.org/viewvc/syncope/trunk/client/pom.xml?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/client/pom.xml (original)
+++ syncope/trunk/client/pom.xml Tue Jan 22 13:33:22 2013
@@ -53,8 +53,8 @@ under the License.
       <artifactId>javax.ws.rs-api</artifactId>
     </dependency>
 
-	<dependency>
-	  <groupId>org.apache.cxf</groupId>
+    <dependency>
+      <groupId>org.apache.cxf</groupId>
       <artifactId>cxf-rt-frontend-jaxrs</artifactId>
     </dependency>
 

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/services/SchemaService.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/services/SchemaService.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/services/SchemaService.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/services/SchemaService.java Tue Jan 22 13:33:22 2013
@@ -19,7 +19,6 @@
 package org.apache.syncope.common.services;
 
 import java.util.List;
-
 import javax.ws.rs.DELETE;
 import javax.ws.rs.GET;
 import javax.ws.rs.POST;
@@ -28,7 +27,6 @@ import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.core.Response;
 import javax.xml.bind.annotation.XmlEnum;
-
 import org.apache.syncope.common.to.AbstractSchemaTO;
 import org.apache.syncope.common.types.AttributableType;
 

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MappingTO.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MappingTO.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MappingTO.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MappingTO.java Tue Jan 22 13:33:22 2013
@@ -21,7 +21,6 @@ package org.apache.syncope.common.to;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
-
 import org.apache.syncope.common.AbstractBaseBean;
 import org.apache.syncope.common.types.IntMappingType;
 
@@ -47,6 +46,7 @@ public class MappingTO extends AbstractB
         this.accountLink = accountLink;
     }
 
+    @SuppressWarnings("unchecked")
     public <T extends MappingItemTO> T getAccountIdItem() {
         T accountIdItem = null;
         for (MappingItemTO item : getItems()) {
@@ -103,6 +103,7 @@ public class MappingTO extends AbstractB
         }
     }
 
+    @SuppressWarnings("unchecked")
     public <T extends MappingItemTO> List<T> getItems() {
         return (List<T>) items;
     }

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MembershipTO.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MembershipTO.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MembershipTO.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/to/MembershipTO.java Tue Jan 22 13:33:22 2013
@@ -58,7 +58,7 @@ public class MembershipTO extends Abstra
 
     @Override
     public Set<String> getResources() {
-        return Collections.EMPTY_SET;
+        return Collections.<String>emptySet();
     }
 
     @Override
@@ -77,7 +77,7 @@ public class MembershipTO extends Abstra
 
     @Override
     public List<PropagationTO> getPropagationTOs() {
-        return Collections.EMPTY_LIST;
+        return Collections.<PropagationTO>emptyList();
     }
 
     @Override

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditElements.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditElements.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditElements.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditElements.java Tue Jan 22 13:33:22 2013
@@ -52,6 +52,7 @@ public final class AuditElements {
             return subCategory;
         }
 
+        @SuppressWarnings("unchecked")
         public EnumSet<? extends Enum<?>> getSubCategoryElements() {
             return EnumSet.allOf(getSubCategory());
         }
@@ -232,7 +233,9 @@ public final class AuditElements {
         read,
         update,
         delete,
-        isCreateAllowed,}
+        isCreateAllowed
+
+    }
 
     public enum WorkflowSubCategory {
 

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditLoggerName.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditLoggerName.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditLoggerName.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/types/AuditLoggerName.java Tue Jan 22 13:33:22 2013
@@ -75,6 +75,7 @@ public class AuditLoggerName extends Abs
                 append(result.name()).toString();
     }
 
+    @SuppressWarnings("unchecked")
     public static AuditLoggerName fromLoggerName(final String loggerName)
             throws IllegalArgumentException, ParseException {
 

Modified: syncope/trunk/common/src/main/java/org/apache/syncope/common/util/AttributableOperations.java
URL: http://svn.apache.org/viewvc/syncope/trunk/common/src/main/java/org/apache/syncope/common/util/AttributableOperations.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/common/src/main/java/org/apache/syncope/common/util/AttributableOperations.java (original)
+++ syncope/trunk/common/src/main/java/org/apache/syncope/common/util/AttributableOperations.java Tue Jan 22 13:33:22 2013
@@ -49,6 +49,7 @@ public final class AttributableOperation
     private AttributableOperations() {
     }
 
+    @SuppressWarnings("unchecked")
     public static <T extends AbstractAttributableTO> T clone(final T original) {
         return (T) SerializationUtils.clone(original);
     }
@@ -69,7 +70,7 @@ public final class AttributableOperation
 
             Set<String> originalValues = originalAttrs.containsKey(entry.getKey())
                     ? new HashSet<String>(originalAttrs.get(entry.getKey()).getValues())
-                    : Collections.EMPTY_SET;
+                    : Collections.<String>emptySet();
 
             if (!updatedValues.equals(originalValues)) {
                 // avoid unwanted inputs

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/connid/ConnObjectUtil.java Tue Jan 22 13:33:22 2013
@@ -26,7 +26,6 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-
 import org.apache.commons.lang.RandomStringUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.syncope.common.mod.AbstractAttributableMod;
@@ -186,7 +185,10 @@ public class ConnObjectUtil {
      * @param attrUtil AttributableUtil
      * @param <T> user/role
      * @return modifications for the user/role to be updated
+     * @throws NotFoundException if given id does not correspond to a T instance
+     * @throws UnauthorizedRoleException if there are no enough entitlements to access the T instance
      */
+    @SuppressWarnings("unchecked")
     @Transactional(readOnly = true)
     public <T extends AbstractAttributableMod> T getAttributableMod(final Long id, final ConnectorObject obj,
             final AbstractAttributableTO original, final SyncTask syncTask, final AttributableUtil attrUtil)

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/init/JobInstanceLoader.java Tue Jan 22 13:33:22 2013
@@ -24,7 +24,6 @@ import java.util.List;
 import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-
 import org.apache.commons.lang.StringUtils;
 import org.apache.syncope.core.notification.NotificationJob;
 import org.apache.syncope.core.persistence.beans.Report;
@@ -214,6 +213,7 @@ public class JobInstanceLoader {
         unregisterJob(getJobName(report));
     }
 
+    @SuppressWarnings("unchecked")
     @Transactional(readOnly = true)
     public void load() {
         // 1. jobs for SchedTasks

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttrValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttrValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttrValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttrValue.java Tue Jan 22 13:33:22 2013
@@ -21,14 +21,12 @@ package org.apache.syncope.core.persiste
 import java.text.DateFormat;
 import java.text.DecimalFormat;
 import java.util.Date;
-
 import javax.persistence.Basic;
 import javax.persistence.MappedSuperclass;
 import javax.persistence.Temporal;
 import javax.persistence.TemporalType;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
-
 import org.apache.commons.lang.builder.ReflectionToStringBuilder;
 import org.apache.commons.lang.builder.ToStringStyle;
 import org.apache.commons.lang.time.DateUtils;
@@ -169,6 +167,7 @@ public abstract class AbstractAttrValue 
         }
     }
 
+    @SuppressWarnings("unchecked")
     public <T> T getValue() {
         return (T) (booleanValue != null
                 ? getBooleanValue()

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttributable.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttributable.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttributable.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractAttributable.java Tue Jan 22 13:33:22 2013
@@ -29,6 +29,7 @@ public abstract class AbstractAttributab
 
     private static final long serialVersionUID = -4801685541488201119L;
 
+    @SuppressWarnings("unchecked")
     public <T extends AbstractAttr> T getAttribute(final String schemaName) {
         T result = null;
         for (Iterator<? extends AbstractAttr> itor = getAttributes().iterator(); result == null && itor.hasNext();) {
@@ -40,6 +41,7 @@ public abstract class AbstractAttributab
         return result;
     }
 
+    @SuppressWarnings("unchecked")
     public <T extends AbstractDerAttr> T getDerivedAttribute(final String derivedSchemaName) {
         T result = null;
         for (Iterator<? extends AbstractDerAttr> itor = getDerivedAttributes().iterator();
@@ -56,6 +58,7 @@ public abstract class AbstractAttributab
         return result;
     }
 
+    @SuppressWarnings("unchecked")
     public <T extends AbstractVirAttr> T getVirtualAttribute(final String virtualSchemaName) {
         T result = null;
         for (Iterator<? extends AbstractVirAttr> itor = getVirtualAttributes().iterator();

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractMapping.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractMapping.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractMapping.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/AbstractMapping.java Tue Jan 22 13:33:22 2013
@@ -19,10 +19,8 @@
 package org.apache.syncope.core.persistence.beans;
 
 import java.util.List;
-
 import javax.persistence.Cacheable;
 import javax.persistence.MappedSuperclass;
-
 import org.apache.syncope.common.types.IntMappingType;
 import org.identityconnectors.framework.common.objects.Uid;
 
@@ -51,6 +49,7 @@ public abstract class AbstractMapping ex
         this.accountLink = accountLink;
     }
 
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMappingItem> T getAccountIdItem() {
         T accountIdItem = null;
         for (AbstractMappingItem item : getItems()) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttr.java Tue Jan 22 13:33:22 2013
@@ -20,7 +20,6 @@ package org.apache.syncope.core.persiste
 
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
@@ -30,7 +29,6 @@ import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.validation.Valid;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
@@ -69,6 +67,7 @@ public class MAttr extends AbstractAttr 
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
@@ -82,6 +81,7 @@ public class MAttr extends AbstractAttr 
         this.owner = (Membership) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractSchema> T getSchema() {
         return (T) schema;
@@ -116,11 +116,13 @@ public class MAttr extends AbstractAttr 
         return result;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> List<T> getValues() {
         return (List<T>) values;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> void setValues(final List<T> attributeValues) {
 
@@ -133,6 +135,7 @@ public class MAttr extends AbstractAttr 
         }
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> T getUniqueValue() {
         return (T) uniqueValue;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrUniqueValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrUniqueValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrUniqueValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrUniqueValue.java Tue Jan 22 13:33:22 2013
@@ -23,7 +23,6 @@ import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrUniqueValue;
 import org.apache.syncope.core.persistence.beans.AbstractSchema;
@@ -48,6 +47,7 @@ public class MAttrUniqueValue extends Ab
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> T getAttribute() {
         return (T) attribute;
@@ -61,6 +61,7 @@ public class MAttrUniqueValue extends Ab
         this.attribute = (MAttr) attribute;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractSchema> T getSchema() {
         return (T) schema;
@@ -68,7 +69,7 @@ public class MAttrUniqueValue extends Ab
 
     @Override
     public <T extends AbstractSchema> void setSchema(final T schema) {
-                if (!(schema instanceof MSchema)) {
+        if (!(schema instanceof MSchema)) {
             throw new ClassCastException("expected type MSchema, found: " + schema.getClass().getName());
         }
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MAttrValue.java Tue Jan 22 13:33:22 2013
@@ -24,7 +24,6 @@ import javax.persistence.Inheritance;
 import javax.persistence.InheritanceType;
 import javax.persistence.ManyToOne;
 import javax.validation.constraints.NotNull;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 
@@ -32,8 +31,11 @@ import org.apache.syncope.core.persisten
 @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
 public class MAttrValue extends AbstractAttrValue {
 
+    private static final long serialVersionUID = -7188881172631198385L;
+
     @Id
     private Long id;
+
     @ManyToOne
     @NotNull
     private MAttr attribute;
@@ -43,11 +45,13 @@ public class MAttrValue extends Abstract
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> T getAttribute() {
         return (T) attribute;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> void setAttribute(T attribute) {
         if (!(attribute instanceof MAttr)) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MDerAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MDerAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MDerAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MDerAttr.java Tue Jan 22 13:33:22 2013
@@ -21,7 +21,6 @@ package org.apache.syncope.core.persiste
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractDerAttr;
 import org.apache.syncope.core.persistence.beans.AbstractDerSchema;
@@ -30,31 +29,35 @@ import org.apache.syncope.core.persisten
 public class MDerAttr extends AbstractDerAttr {
 
     private static final long serialVersionUID = -443509121923448129L;
+
     @ManyToOne
     private Membership owner;
+
     @ManyToOne(fetch = FetchType.EAGER)
     private MDerSchema derivedSchema;
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
     }
 
     @Override
-    public <T extends AbstractAttributable> void setOwner(T owner) {
+    public <T extends AbstractAttributable> void setOwner(final T owner) {
         if (!(owner instanceof Membership)) {
             throw new ClassCastException("expected type Membership, found: " + owner.getClass().getName());
         }
         this.owner = (Membership) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractDerSchema> T getDerivedSchema() {
         return (T) derivedSchema;
     }
 
     @Override
-    public <T extends AbstractDerSchema> void setDerivedSchema(T derivedSchema) {
+    public <T extends AbstractDerSchema> void setDerivedSchema(final T derivedSchema) {
         if (!(derivedSchema instanceof MDerSchema)) {
             throw new ClassCastException("expected type MDerSchema, found: " + derivedSchema.getClass().getName());
         }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MVirAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MVirAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MVirAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/MVirAttr.java Tue Jan 22 13:33:22 2013
@@ -20,11 +20,9 @@ package org.apache.syncope.core.persiste
 
 import java.util.Collections;
 import java.util.List;
-
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractVirAttr;
 import org.apache.syncope.core.persistence.beans.AbstractVirSchema;
@@ -40,6 +38,7 @@ public class MVirAttr extends AbstractVi
     @ManyToOne(fetch = FetchType.EAGER)
     private MVirSchema virtualSchema;
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
@@ -54,6 +53,7 @@ public class MVirAttr extends AbstractVi
         this.owner = (Membership) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractVirSchema> T getVirtualSchema() {
         return (T) virtualSchema;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/Membership.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/Membership.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/Membership.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/membership/Membership.java Tue Jan 22 13:33:22 2013
@@ -22,7 +22,6 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Set;
-
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.Id;
@@ -31,7 +30,6 @@ import javax.persistence.OneToMany;
 import javax.persistence.Table;
 import javax.persistence.UniqueConstraint;
 import javax.validation.Valid;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractDerAttr;
@@ -123,6 +121,7 @@ public class Membership extends Abstract
         return attributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setAttributes(final List<? extends AbstractAttr> attributes) {
         this.attributes.clear();
@@ -153,6 +152,7 @@ public class Membership extends Abstract
         return derivedAttributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setDerivedAttributes(final List<? extends AbstractDerAttr> derivedAttributes) {
         this.derivedAttributes.clear();
@@ -184,6 +184,7 @@ public class Membership extends Abstract
         return virtualAttributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setVirtualAttributes(final List<? extends AbstractVirAttr> virtualAttributes) {
         this.virtualAttributes.clear();
@@ -214,6 +215,7 @@ public class Membership extends Abstract
 
     @Override
     public void setResources(final Set<ExternalResource> resources) {
+        // Memberships cannot be directly associated to resources.
     }
 
     @Override

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttr.java Tue Jan 22 13:33:22 2013
@@ -20,7 +20,6 @@ package org.apache.syncope.core.persiste
 
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
@@ -30,7 +29,6 @@ import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.validation.Valid;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
@@ -69,6 +67,7 @@ public class RAttr extends AbstractAttr 
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
@@ -82,6 +81,7 @@ public class RAttr extends AbstractAttr 
         this.owner = (SyncopeRole) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractSchema> T getSchema() {
         return (T) schema;
@@ -113,11 +113,13 @@ public class RAttr extends AbstractAttr 
         return values.remove((RAttrValue) attributeValue);
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> List<T> getValues() {
         return (List<T>) values;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> void setValues(final List<T> attributeValues) {
 
@@ -130,6 +132,7 @@ public class RAttr extends AbstractAttr 
         }
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> T getUniqueValue() {
         return (T) uniqueValue;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrUniqueValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrUniqueValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrUniqueValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrUniqueValue.java Tue Jan 22 13:33:22 2013
@@ -23,7 +23,6 @@ import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrUniqueValue;
 import org.apache.syncope.core.persistence.beans.AbstractSchema;
@@ -32,10 +31,13 @@ import org.apache.syncope.core.persisten
 public class RAttrUniqueValue extends AbstractAttrUniqueValue {
 
     private static final long serialVersionUID = 4681561795607192855L;
+
     @Id
     private Long id;
+
     @OneToOne(optional = false)
     private RAttr attribute;
+
     @ManyToOne(optional = false)
     @JoinColumn(name = "schema_name")
     private RSchema schema;
@@ -45,6 +47,7 @@ public class RAttrUniqueValue extends Ab
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> T getAttribute() {
         return (T) attribute;
@@ -58,6 +61,7 @@ public class RAttrUniqueValue extends Ab
         this.attribute = (RAttr) attribute;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractSchema> T getSchema() {
         return (T) schema;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RAttrValue.java Tue Jan 22 13:33:22 2013
@@ -24,7 +24,6 @@ import javax.persistence.Inheritance;
 import javax.persistence.InheritanceType;
 import javax.persistence.ManyToOne;
 import javax.validation.constraints.NotNull;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 
@@ -32,8 +31,11 @@ import org.apache.syncope.core.persisten
 @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
 public class RAttrValue extends AbstractAttrValue {
 
+    private static final long serialVersionUID = -766808291128424707L;
+
     @Id
     private Long id;
+
     @ManyToOne
     @NotNull
     private RAttr attribute;
@@ -43,11 +45,13 @@ public class RAttrValue extends Abstract
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> T getAttribute() {
         return (T) attribute;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> void setAttribute(T attribute) {
         if (!(attribute instanceof RAttr)) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RDerAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RDerAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RDerAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RDerAttr.java Tue Jan 22 13:33:22 2013
@@ -21,7 +21,6 @@ package org.apache.syncope.core.persiste
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractDerAttr;
 import org.apache.syncope.core.persistence.beans.AbstractDerSchema;
@@ -30,18 +29,21 @@ import org.apache.syncope.core.persisten
 public class RDerAttr extends AbstractDerAttr {
 
     private static final long serialVersionUID = 8007080005675899946L;
+
     @ManyToOne
     private SyncopeRole owner;
+
     @ManyToOne(fetch = FetchType.EAGER, optional = false)
     private RDerSchema derivedSchema;
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
     }
 
     @Override
-    public <T extends AbstractAttributable> void setOwner(T owner) {
+    public <T extends AbstractAttributable> void setOwner(final T owner) {
         if (!(owner instanceof SyncopeRole)) {
             throw new ClassCastException("expected type SyncopeRole, found: " + owner.getClass().getName());
         }
@@ -49,13 +51,14 @@ public class RDerAttr extends AbstractDe
         this.owner = (SyncopeRole) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractDerSchema> T getDerivedSchema() {
         return (T) derivedSchema;
     }
 
     @Override
-    public <T extends AbstractDerSchema> void setDerivedSchema(T derivedSchema) {
+    public <T extends AbstractDerSchema> void setDerivedSchema(final T derivedSchema) {
         if (!(derivedSchema instanceof RDerSchema)) {
             throw new ClassCastException("expected type RDerSchema, found: " + derivedSchema.getClass().getName());
         }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMapping.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMapping.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMapping.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMapping.java Tue Jan 22 13:33:22 2013
@@ -82,6 +82,7 @@ public class RMapping extends AbstractMa
     }
 
     @Override
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMappingItem> List<T> getItems() {
         return (List<T>) this.items;
     }
@@ -103,6 +104,7 @@ public class RMapping extends AbstractMa
     }
 
     @Override
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMappingItem> void setItems(final List<T> items) {
         this.items.clear();
         if (items != null && !items.isEmpty()) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMappingItem.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMappingItem.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMappingItem.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RMappingItem.java Tue Jan 22 13:33:22 2013
@@ -41,6 +41,7 @@ public class RMappingItem extends Abstra
     }
 
     @Override
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMapping> T getMapping() {
         return (T) mapping;
     }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RVirAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RVirAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RVirAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/RVirAttr.java Tue Jan 22 13:33:22 2013
@@ -20,11 +20,9 @@ package org.apache.syncope.core.persiste
 
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractVirAttr;
 import org.apache.syncope.core.persistence.beans.AbstractVirSchema;
@@ -40,6 +38,7 @@ public class RVirAttr extends AbstractVi
     @ManyToOne(fetch = FetchType.EAGER)
     private RVirSchema virtualSchema;
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
@@ -53,6 +52,7 @@ public class RVirAttr extends AbstractVi
         this.owner = (SyncopeRole) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractVirSchema> T getVirtualSchema() {
         return (T) virtualSchema;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/SyncopeRole.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/SyncopeRole.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/SyncopeRole.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/role/SyncopeRole.java Tue Jan 22 13:33:22 2013
@@ -25,7 +25,6 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
-
 import javax.persistence.Basic;
 import javax.persistence.Cacheable;
 import javax.persistence.CascadeType;
@@ -43,7 +42,6 @@ import javax.validation.Valid;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import javax.validation.constraints.NotNull;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractDerAttr;
@@ -254,6 +252,7 @@ public class SyncopeRole extends Abstrac
         return attributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setAttributes(final List<? extends AbstractAttr> attributes) {
         this.attributes.clear();
@@ -283,11 +282,12 @@ public class SyncopeRole extends Abstrac
         return derivedAttributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setDerivedAttributes(final List<? extends AbstractDerAttr> derivedAttributes) {
-        this.attributes.clear();
-        if (attributes != null && !attributes.isEmpty()) {
-            this.attributes.addAll((List<RAttr>) attributes);
+        this.derivedAttributes.clear();
+        if (derivedAttributes != null && !derivedAttributes.isEmpty()) {
+            this.derivedAttributes.addAll((List<RDerAttr>) derivedAttributes);
         }
     }
 
@@ -312,6 +312,7 @@ public class SyncopeRole extends Abstrac
         return virtualAttributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setVirtualAttributes(final List<? extends AbstractVirAttr> virtualAttributes) {
         this.virtualAttributes.clear();
@@ -333,6 +334,7 @@ public class SyncopeRole extends Abstrac
      *
      * @return a list of inherited and only inherited attributes.
      */
+    @SuppressWarnings("unchecked")
     public List<RAttr> findInheritedAttributes() {
         final Map<RSchema, RAttr> result = new HashMap<RSchema, RAttr>();
 
@@ -371,6 +373,7 @@ public class SyncopeRole extends Abstrac
      *
      * @return a list of inherited and only inherited attributes.
      */
+    @SuppressWarnings("unchecked")
     public List<RDerAttr> findInheritedDerivedAttributes() {
         final Map<RDerSchema, RDerAttr> result = new HashMap<RDerSchema, RDerAttr>();
 
@@ -410,6 +413,7 @@ public class SyncopeRole extends Abstrac
      *
      * @return a list of inherited and only inherited attributes.
      */
+    @SuppressWarnings("unchecked")
     public List<RVirAttr> findInheritedVirtualAttributes() {
         final Map<RVirSchema, RVirAttr> result = new HashMap<RVirSchema, RVirAttr>();
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/SyncopeUser.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/SyncopeUser.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/SyncopeUser.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/SyncopeUser.java Tue Jan 22 13:33:22 2013
@@ -28,7 +28,6 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
-
 import javax.crypto.BadPaddingException;
 import javax.crypto.IllegalBlockSizeException;
 import javax.crypto.NoSuchPaddingException;
@@ -54,7 +53,6 @@ import javax.validation.Valid;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import javax.validation.constraints.NotNull;
-
 import org.apache.commons.lang.RandomStringUtils;
 import org.apache.syncope.common.types.CipherAlgorithm;
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
@@ -306,6 +304,7 @@ public class SyncopeUser extends Abstrac
         return attributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setAttributes(final List<? extends AbstractAttr> attributes) {
         this.attributes.clear();
@@ -336,6 +335,7 @@ public class SyncopeUser extends Abstrac
         return derivedAttributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setDerivedAttributes(final List<? extends AbstractDerAttr> derivedAttributes) {
         this.derivedAttributes.clear();
@@ -365,6 +365,7 @@ public class SyncopeUser extends Abstrac
         return virtualAttributes;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public void setVirtualAttributes(final List<? extends AbstractVirAttr> virtualAttributes) {
         this.virtualAttributes.clear();
@@ -459,9 +460,7 @@ public class SyncopeUser extends Abstrac
     }
 
     public Integer getFailedLogins() {
-        return failedLogins != null
-                ? failedLogins
-                : 0;
+        return failedLogins == null ? 0 : failedLogins;
     }
 
     public void setFailedLogins(final Integer failedLogins) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttr.java Tue Jan 22 13:33:22 2013
@@ -20,7 +20,6 @@ package org.apache.syncope.core.persiste
 
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
@@ -30,7 +29,6 @@ import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.validation.Valid;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
@@ -90,6 +88,7 @@ public class UAttr extends AbstractAttr 
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
@@ -103,6 +102,7 @@ public class UAttr extends AbstractAttr 
         this.owner = (SyncopeUser) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractSchema> T getSchema() {
         return (T) schema;
@@ -134,11 +134,13 @@ public class UAttr extends AbstractAttr 
         return values.remove((UAttrValue) attributeValue);
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> List<T> getValues() {
         return (List<T>) values;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> void setValues(final List<T> attributeValues) {
 
@@ -151,6 +153,7 @@ public class UAttr extends AbstractAttr 
         }
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttrValue> T getUniqueValue() {
         return (T) uniqueValue;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrUniqueValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrUniqueValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrUniqueValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrUniqueValue.java Tue Jan 22 13:33:22 2013
@@ -23,7 +23,6 @@ import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrUniqueValue;
 import org.apache.syncope.core.persistence.beans.AbstractSchema;
@@ -32,10 +31,13 @@ import org.apache.syncope.core.persisten
 public class UAttrUniqueValue extends AbstractAttrUniqueValue {
 
     private static final long serialVersionUID = -64080804563305387L;
+
     @Id
     private Long id;
+
     @OneToOne(optional = false)
     private UAttr attribute;
+
     @ManyToOne(optional = false)
     @JoinColumn(name = "schema_name")
     private USchema schema;
@@ -45,6 +47,7 @@ public class UAttrUniqueValue extends Ab
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> T getAttribute() {
         return (T) attribute;
@@ -58,6 +61,7 @@ public class UAttrUniqueValue extends Ab
         this.attribute = (UAttr) attribute;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractSchema> T getSchema() {
         return (T) schema;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrValue.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrValue.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrValue.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UAttrValue.java Tue Jan 22 13:33:22 2013
@@ -24,7 +24,6 @@ import javax.persistence.Inheritance;
 import javax.persistence.InheritanceType;
 import javax.persistence.ManyToOne;
 import javax.validation.constraints.NotNull;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 
@@ -32,8 +31,11 @@ import org.apache.syncope.core.persisten
 @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
 public class UAttrValue extends AbstractAttrValue {
 
+    private static final long serialVersionUID = -6259576015647897446L;
+
     @Id
     private Long id;
+
     @ManyToOne
     @NotNull
     private UAttr attribute;
@@ -43,11 +45,13 @@ public class UAttrValue extends Abstract
         return id;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> T getAttribute() {
         return (T) attribute;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttr> void setAttribute(final T attribute) {
         if (!(attribute instanceof UAttr)) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UDerAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UDerAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UDerAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UDerAttr.java Tue Jan 22 13:33:22 2013
@@ -21,7 +21,6 @@ package org.apache.syncope.core.persiste
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractDerAttr;
 import org.apache.syncope.core.persistence.beans.AbstractDerSchema;
@@ -30,18 +29,21 @@ import org.apache.syncope.core.persisten
 public class UDerAttr extends AbstractDerAttr {
 
     private static final long serialVersionUID = 4723044452807292060L;
+
     @ManyToOne
     private SyncopeUser owner;
+
     @ManyToOne(fetch = FetchType.EAGER)
     private UDerSchema derivedSchema;
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
     }
 
     @Override
-    public <T extends AbstractAttributable> void setOwner(T owner) {
+    public <T extends AbstractAttributable> void setOwner(final T owner) {
         if (!(owner instanceof SyncopeUser)) {
             throw new ClassCastException("expected type SyncopeUser, found: " + owner.getClass().getName());
         }
@@ -49,13 +51,14 @@ public class UDerAttr extends AbstractDe
         this.owner = (SyncopeUser) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractDerSchema> T getDerivedSchema() {
         return (T) derivedSchema;
     }
 
     @Override
-    public <T extends AbstractDerSchema> void setDerivedSchema(T derivedSchema) {
+    public <T extends AbstractDerSchema> void setDerivedSchema(final T derivedSchema) {
         if (!(derivedSchema instanceof UDerSchema)) {
             throw new ClassCastException("expected type UDerSchema, found: " + derivedSchema.getClass().getName());
         }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMapping.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMapping.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMapping.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMapping.java Tue Jan 22 13:33:22 2013
@@ -20,14 +20,12 @@ package org.apache.syncope.core.persiste
 
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.Id;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractMapping;
 import org.apache.syncope.core.persistence.beans.AbstractMappingItem;
 import org.apache.syncope.core.persistence.beans.ExternalResource;
@@ -101,6 +99,7 @@ public class UMapping extends AbstractMa
     }
 
     @Override
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMappingItem> List<T> getItems() {
         return (List<T>) this.items;
     }
@@ -122,6 +121,7 @@ public class UMapping extends AbstractMa
     }
 
     @Override
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMappingItem> void setItems(final List<T> items) {
         this.items.clear();
         if (items != null && !items.isEmpty()) {

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMappingItem.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMappingItem.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMappingItem.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UMappingItem.java Tue Jan 22 13:33:22 2013
@@ -21,7 +21,6 @@ package org.apache.syncope.core.persiste
 import javax.persistence.Entity;
 import javax.persistence.Id;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractMapping;
 import org.apache.syncope.core.persistence.beans.AbstractMappingItem;
 
@@ -42,6 +41,7 @@ public class UMappingItem extends Abstra
     }
 
     @Override
+    @SuppressWarnings("unchecked")
     public <T extends AbstractMapping> T getMapping() {
         return (T) mapping;
     }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UVirAttr.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UVirAttr.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UVirAttr.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/beans/user/UVirAttr.java Tue Jan 22 13:33:22 2013
@@ -20,11 +20,9 @@ package org.apache.syncope.core.persiste
 
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.ManyToOne;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttributable;
 import org.apache.syncope.core.persistence.beans.AbstractVirAttr;
 import org.apache.syncope.core.persistence.beans.AbstractVirSchema;
@@ -40,6 +38,7 @@ public class UVirAttr extends AbstractVi
     @ManyToOne(fetch = FetchType.EAGER)
     private UVirSchema virtualSchema;
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractAttributable> T getOwner() {
         return (T) owner;
@@ -53,6 +52,7 @@ public class UVirAttr extends AbstractVi
         this.owner = (SyncopeUser) owner;
     }
 
+    @SuppressWarnings("unchecked")
     @Override
     public <T extends AbstractVirSchema> T getVirtualSchema() {
         return (T) virtualSchema;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/SchemaDAO.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/SchemaDAO.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/SchemaDAO.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/SchemaDAO.java Tue Jan 22 13:33:22 2013
@@ -19,7 +19,6 @@
 package org.apache.syncope.core.persistence.dao;
 
 import java.util.List;
-
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.beans.AbstractSchema;
 import org.apache.syncope.core.persistence.validation.entity.InvalidEntityException;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/VirSchemaDAO.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/VirSchemaDAO.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/VirSchemaDAO.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/VirSchemaDAO.java Tue Jan 22 13:33:22 2013
@@ -19,7 +19,6 @@
 package org.apache.syncope.core.persistence.dao;
 
 import java.util.List;
-
 import org.apache.syncope.core.persistence.beans.AbstractVirAttr;
 import org.apache.syncope.core.persistence.beans.AbstractVirSchema;
 import org.apache.syncope.core.persistence.validation.entity.InvalidEntityException;

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AbstractAttributableDAOImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AbstractAttributableDAOImpl.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AbstractAttributableDAOImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AbstractAttributableDAOImpl.java Tue Jan 22 13:33:22 2013
@@ -26,10 +26,9 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 import java.util.regex.Pattern;
-
 import javax.persistence.Query;
 import javax.persistence.TemporalType;
-
+import javax.persistence.TypedQuery;
 import org.apache.commons.jexl2.parser.Parser;
 import org.apache.commons.jexl2.parser.ParserConstants;
 import org.apache.commons.jexl2.parser.Token;
@@ -59,7 +58,7 @@ public abstract class AbstractAttributab
      *
      * @param attrValue value to be split
      * @param literals literals/tokens
-     * @return
+     * @return splitted value
      */
     private List<String> split(final String attrValue, final List<String> literals) {
         final List<String> attrValues = new ArrayList<String>();
@@ -80,6 +79,7 @@ public abstract class AbstractAttributab
      *
      * @param expression derived schema expression
      * @param value derived attribute value
+     * @param attrUtil USER / ROLE
      * @return where clauses to use to build the query
      * @throws InvalidSearchConditionException in case of errors retrieving identifiers
      */
@@ -97,7 +97,6 @@ public abstract class AbstractAttributab
         // Get schema names and literals
         Token token;
         while ((token = parser.getNextToken()) != null && StringUtils.hasText(token.toString())) {
-
             if (token.kind == ParserConstants.STRING_LITERAL) {
                 literals.add(token.toString().substring(1, token.toString().length() - 1));
             }
@@ -111,7 +110,7 @@ public abstract class AbstractAttributab
         Collections.sort(literals, new Comparator<String>() {
 
             @Override
-            public int compare(String t, String t1) {
+            public int compare(final String t, final String t1) {
                 if (t == null && t1 == null) {
                     return 0;
                 } else if (t != null && t1 == null) {
@@ -203,7 +202,7 @@ public abstract class AbstractAttributab
         return clauses;
     }
 
-    protected abstract <T extends AbstractAttributable> T find(final Long id);
+    protected abstract <T extends AbstractAttributable> T findInternal(final Long id);
 
     @Override
     public <T extends AbstractAttributable> List<T> findByAttrValue(final String schemaName,
@@ -212,19 +211,20 @@ public abstract class AbstractAttributab
         AbstractSchema schema = schemaDAO.find(schemaName, attrUtil.schemaClass());
         if (schema == null) {
             LOG.error("Invalid schema name '{}'", schemaName);
-            return Collections.EMPTY_LIST;
+            return Collections.<T>emptyList();
         }
 
         final String entityName = schema.isUniqueConstraint()
                 ? attrUtil.attrUniqueValueClass().getName()
                 : attrUtil.attrValueClass().getName();
 
-        Query query = entityManager.createQuery("SELECT e FROM " + entityName + " e"
+        TypedQuery<AbstractAttrValue> query = entityManager.createQuery("SELECT e FROM " + entityName + " e"
                 + " WHERE e.attribute.schema.name = :schemaName " + " AND (e.stringValue IS NOT NULL"
                 + " AND e.stringValue = :stringValue)" + " OR (e.booleanValue IS NOT NULL"
                 + " AND e.booleanValue = :booleanValue)" + " OR (e.dateValue IS NOT NULL"
                 + " AND e.dateValue = :dateValue)" + " OR (e.longValue IS NOT NULL" + " AND e.longValue = :longValue)"
-                + " OR (e.doubleValue IS NOT NULL" + " AND e.doubleValue = :doubleValue)");
+                + " OR (e.doubleValue IS NOT NULL" + " AND e.doubleValue = :doubleValue)",
+                AbstractAttrValue.class);
 
         query.setParameter("schemaName", schemaName);
         query.setParameter("stringValue", attrValue.getStringValue());
@@ -240,7 +240,7 @@ public abstract class AbstractAttributab
         query.setParameter("doubleValue", attrValue.getDoubleValue());
 
         List<T> result = new ArrayList<T>();
-        for (AbstractAttrValue value : (List<AbstractAttrValue>) query.getResultList()) {
+        for (AbstractAttrValue value : query.getResultList()) {
             T subject = value.getAttribute().getOwner();
             if (!result.contains(subject)) {
                 result.add(subject);
@@ -276,8 +276,10 @@ public abstract class AbstractAttributab
      * specify a derived attribute expression you must be quite sure that string literals used to build the expression
      * cannot be found into the attribute values used to replace attribute schema names used as identifiers.
      *
+     * @param <T> user / role
      * @param schemaName derived schema name
      * @param value derived attribute value
+     * @param attrUtil AttributableUtil
      * @return list of users / roles
      * @throws InvalidSearchConditionException in case of errors retrieving schema names used to buid the derived schema
      * expression.
@@ -290,7 +292,7 @@ public abstract class AbstractAttributab
         AbstractDerSchema schema = derSchemaDAO.find(schemaName, attrUtil.derSchemaClass());
         if (schema == null) {
             LOG.error("Invalid schema name '{}'", schemaName);
-            return Collections.EMPTY_LIST;
+            return Collections.<T>emptyList();
         }
 
         // query string
@@ -321,7 +323,7 @@ public abstract class AbstractAttributab
         final List<T> result = new ArrayList<T>();
 
         for (Object userId : query.getResultList()) {
-            T subject = find(Long.parseLong(userId.toString()));
+            T subject = findInternal(Long.parseLong(userId.toString()));
             if (!result.contains(subject)) {
                 result.add(subject);
             }
@@ -334,8 +336,8 @@ public abstract class AbstractAttributab
     public <T extends AbstractAttributable> List<T> findByResource(final ExternalResource resource,
             final Class<T> reference) {
 
-        Query query = entityManager.createQuery("SELECT e FROM " + reference.getSimpleName() + " e "
-                + "WHERE :resource MEMBER OF e.resources");
+        TypedQuery<T> query = entityManager.createQuery("SELECT e FROM " + reference.getSimpleName() + " e "
+                + "WHERE :resource MEMBER OF e.resources", reference);
         query.setParameter("resource", resource);
 
         return query.getResultList();

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrDAOImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrDAOImpl.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrDAOImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrDAOImpl.java Tue Jan 22 13:33:22 2013
@@ -19,9 +19,7 @@
 package org.apache.syncope.core.persistence.dao.impl;
 
 import java.util.List;
-
-import javax.persistence.Query;
-
+import javax.persistence.TypedQuery;
 import org.apache.syncope.core.persistence.beans.AbstractAttr;
 import org.apache.syncope.core.persistence.dao.AttrDAO;
 import org.springframework.stereotype.Repository;
@@ -37,7 +35,7 @@ public class AttrDAOImpl extends Abstrac
 
     @Override
     public <T extends AbstractAttr> List<T> findAll(final Class<T> reference) {
-        Query query = entityManager.createQuery("SELECT e FROM " + reference.getSimpleName() + " e");
+        TypedQuery<T> query = entityManager.createQuery("SELECT e FROM " + reference.getSimpleName() + " e", reference);
         return query.getResultList();
     }
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrValueDAOImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrValueDAOImpl.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrValueDAOImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttrValueDAOImpl.java Tue Jan 22 13:33:22 2013
@@ -19,9 +19,7 @@
 package org.apache.syncope.core.persistence.dao.impl;
 
 import java.util.List;
-
-import javax.persistence.Query;
-
+import javax.persistence.TypedQuery;
 import org.apache.syncope.core.persistence.beans.AbstractAttrValue;
 import org.apache.syncope.core.persistence.dao.AttrValueDAO;
 import org.springframework.stereotype.Repository;
@@ -31,14 +29,12 @@ public class AttrValueDAOImpl extends Ab
 
     @Override
     public <T extends AbstractAttrValue> T find(final Long id, final Class<T> reference) {
-
         return entityManager.find(reference, id);
     }
 
     @Override
     public <T extends AbstractAttrValue> List<T> findAll(final Class<T> reference) {
-
-        Query query = entityManager.createQuery("SELECT e FROM " + reference.getSimpleName() + " e");
+        TypedQuery<T> query = entityManager.createQuery("SELECT e FROM " + reference.getSimpleName() + " e", reference);
         return query.getResultList();
     }
 
@@ -49,7 +45,6 @@ public class AttrValueDAOImpl extends Ab
 
     @Override
     public <T extends AbstractAttrValue> void delete(final Long id, final Class<T> reference) {
-
         T attributeValue = find(id, reference);
         if (attributeValue == null) {
             return;
@@ -60,7 +55,6 @@ public class AttrValueDAOImpl extends Ab
 
     @Override
     public <T extends AbstractAttrValue> void delete(final T attributeValue) {
-
         if (attributeValue.getAttribute() != null) {
             attributeValue.getAttribute().removeValue(attributeValue);
         }

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttributableSearchDAOImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttributableSearchDAOImpl.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttributableSearchDAOImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/AttributableSearchDAOImpl.java Tue Jan 22 13:33:22 2013
@@ -26,14 +26,12 @@ import java.util.Date;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
 import javax.persistence.Entity;
 import javax.persistence.Query;
 import javax.persistence.TemporalType;
 import javax.validation.ValidationException;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
-
 import org.apache.syncope.common.search.AttributableCond;
 import org.apache.syncope.common.search.AttributeCond;
 import org.apache.syncope.common.search.EntitlementCond;
@@ -205,6 +203,7 @@ public class AttributableSearchDAOImpl e
         }
     }
 
+    @SuppressWarnings("unchecked")
     private <T extends AbstractAttributable> List<T> doSearch(final Set<Long> adminRoles, final NodeCond nodeCond,
             final int page, final int itemsPerPage, final AttributableUtil attrUtil) {
 
@@ -532,6 +531,7 @@ public class AttributableSearchDAOImpl e
         return query.toString();
     }
 
+    @SuppressWarnings("rawtypes")
     private String getQuery(final AttributableCond cond, final boolean not, final List<Object> parameters,
             final AttributableUtil attrUtil) {
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConfDAOImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConfDAOImpl.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConfDAOImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConfDAOImpl.java Tue Jan 22 13:33:22 2013
@@ -19,9 +19,7 @@
 package org.apache.syncope.core.persistence.dao.impl;
 
 import java.util.List;
-
-import javax.persistence.Query;
-
+import javax.persistence.TypedQuery;
 import org.apache.syncope.core.persistence.beans.SyncopeConf;
 import org.apache.syncope.core.persistence.dao.ConfDAO;
 import org.apache.syncope.core.persistence.dao.MissingConfKeyException;
@@ -32,7 +30,6 @@ public class ConfDAOImpl extends Abstrac
 
     @Override
     public SyncopeConf find(final String name) throws MissingConfKeyException {
-
         SyncopeConf result = find(name, null);
         if (result == null) {
             throw new MissingConfKeyException(name);
@@ -56,13 +53,12 @@ public class ConfDAOImpl extends Abstrac
 
     @Override
     public List<SyncopeConf> findAll() {
-        Query query = entityManager.createQuery("SELECT e FROM SyncopeConf e");
+        TypedQuery<SyncopeConf> query = entityManager.createQuery("SELECT e FROM SyncopeConf e", SyncopeConf.class);
         return query.getResultList();
     }
 
     @Override
     public SyncopeConf save(final SyncopeConf syncopeConfiguration) {
-
         return entityManager.merge(syncopeConfiguration);
     }
 

Modified: syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConnInstanceDAOImpl.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConnInstanceDAOImpl.java?rev=1436910&r1=1436909&r2=1436910&view=diff
==============================================================================
--- syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConnInstanceDAOImpl.java (original)
+++ syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/ConnInstanceDAOImpl.java Tue Jan 22 13:33:22 2013
@@ -21,9 +21,7 @@ package org.apache.syncope.core.persiste
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
-
-import javax.persistence.Query;
-
+import javax.persistence.TypedQuery;
 import org.apache.syncope.core.persistence.beans.ConnInstance;
 import org.apache.syncope.core.persistence.beans.ExternalResource;
 import org.apache.syncope.core.persistence.dao.ConnInstanceDAO;
@@ -49,7 +47,8 @@ public class ConnInstanceDAOImpl extends
 
     @Override
     public List<ConnInstance> findAll() {
-        Query query = entityManager.createQuery("SELECT e " + "FROM " + ConnInstance.class.getSimpleName() + " e");
+        TypedQuery<ConnInstance> query = entityManager.createQuery(
+                "SELECT e " + "FROM " + ConnInstance.class.getSimpleName() + " e", ConnInstance.class);
         return query.getResultList();
     }