You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by co...@apache.org on 2016/12/13 13:16:32 UTC

syncope git commit: Some FindBugs improvements in the core

Repository: syncope
Updated Branches:
  refs/heads/master e9fa33703 -> 06fef3620


Some FindBugs improvements in the core


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

Branch: refs/heads/master
Commit: 06fef3620a08a371fd590bf74a5410a9dd98f478
Parents: e9fa337
Author: Colm O hEigeartaigh <co...@apache.org>
Authored: Tue Dec 13 13:16:18 2016 +0000
Committer: Colm O hEigeartaigh <co...@apache.org>
Committed: Tue Dec 13 13:16:18 2016 +0000

----------------------------------------------------------------------
 .../validation/InvalidEntityException.java          |  5 +++--
 .../core/persistence/jpa/dao/JPAConfDAO.java        |  6 ++++--
 .../jpa/entity/AbstractAnnotatedEntity.java         |  8 +++++++-
 .../persistence/jpa/entity/JPAConnInstance.java     |  4 ++--
 .../persistence/jpa/entity/task/JPASchedTask.java   | 11 +++++++++--
 .../core/persistence/jpa/entity/user/JPAUser.java   | 13 ++++++++++---
 .../provisioning/api/cache/VirAttrCacheValue.java   | 16 +++++++++++++---
 .../provisioning/java/ConnectorFacadeProxy.java     |  4 +---
 .../java/data/PolicyDataBinderImpl.java             |  6 ------
 9 files changed, 49 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/attrvalue/validation/InvalidEntityException.java
----------------------------------------------------------------------
diff --git a/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/attrvalue/validation/InvalidEntityException.java b/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/attrvalue/validation/InvalidEntityException.java
index e0d6974..89ff590 100644
--- a/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/attrvalue/validation/InvalidEntityException.java
+++ b/core/persistence-api/src/main/java/org/apache/syncope/core/persistence/api/attrvalue/validation/InvalidEntityException.java
@@ -21,6 +21,7 @@ package org.apache.syncope.core.persistence.api.attrvalue.validation;
 import java.util.EnumSet;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Map.Entry;
 import java.util.Set;
 import javax.validation.ConstraintViolation;
 import javax.validation.ValidationException;
@@ -120,8 +121,8 @@ public class InvalidEntityException extends ValidationException {
     public String getMessage() {
         StringBuilder sb = new StringBuilder();
 
-        for (Class<?> entity : violations.keySet()) {
-            sb.append(entity.getSimpleName()).append(' ').append(violations.get(entity).toString()).append(", ");
+        for (Entry<Class<?>, Set<EntityViolationType>> entry : violations.entrySet()) {
+            sb.append(entry.getKey().getSimpleName()).append(' ').append(entry.getValue().toString()).append(", ");
         }
         sb.delete(sb.lastIndexOf(", "), sb.length());
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAConfDAO.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAConfDAO.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAConfDAO.java
index d1df518..2366016 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAConfDAO.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/dao/JPAConfDAO.java
@@ -21,10 +21,12 @@ package org.apache.syncope.core.persistence.jpa.dao;
 import org.apache.syncope.core.persistence.api.dao.ConfDAO;
 import org.apache.syncope.core.persistence.api.dao.PlainSchemaDAO;
 import org.apache.syncope.core.persistence.api.entity.PlainAttrUniqueValue;
+import org.apache.syncope.core.persistence.api.entity.PlainAttrValue;
 import org.apache.syncope.core.persistence.api.entity.PlainSchema;
 import org.apache.syncope.core.persistence.api.entity.conf.CPlainAttr;
 import org.apache.syncope.core.persistence.api.entity.conf.Conf;
 import org.apache.syncope.core.persistence.jpa.entity.conf.JPACPlainAttr;
+import org.apache.syncope.core.persistence.jpa.entity.conf.JPACPlainAttrUniqueValue;
 import org.apache.syncope.core.persistence.jpa.entity.conf.JPACPlainAttrValue;
 import org.apache.syncope.core.persistence.jpa.entity.conf.JPAConf;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -68,9 +70,9 @@ public class JPAConfDAO extends AbstractDAO<Conf> implements ConfDAO {
                 JPACPlainAttr newAttr = new JPACPlainAttr();
                 newAttr.setSchema(schemaDAO.find(key));
 
-                JPACPlainAttrValue attrValue;
+                PlainAttrValue attrValue;
                 if (newAttr.getSchema().isUniqueConstraint()) {
-                    attrValue = new JPACPlainAttrValue();
+                    attrValue = new JPACPlainAttrUniqueValue();
                     ((PlainAttrUniqueValue) attrValue).setSchema(newAttr.getSchema());
                 } else {
                     attrValue = new JPACPlainAttrValue();

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractAnnotatedEntity.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractAnnotatedEntity.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractAnnotatedEntity.java
index bf7ec39..cbc6414 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractAnnotatedEntity.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/AbstractAnnotatedEntity.java
@@ -93,7 +93,13 @@ public abstract class AbstractAnnotatedEntity extends AbstractGeneratedKeyEntity
 
     @Override
     public Date getLastChangeDate() {
-        return lastChangeDate == null ? creationDate : lastChangeDate;
+        if (lastChangeDate != null) {
+            return new Date(lastChangeDate.getTime());
+        } else if (creationDate != null) {
+            return new Date(creationDate.getTime());
+        }
+
+        return null;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAConnInstance.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAConnInstance.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAConnInstance.java
index facb93f..c7da0ae 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAConnInstance.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/JPAConnInstance.java
@@ -209,9 +209,9 @@ public class JPAConnInstance extends AbstractGeneratedKeyEntity implements ConnI
     @Override
     public Integer getConnRequestTimeout() {
         // DEFAULT_TIMEOUT will be returned in case of null timeout:
-        // * instances created by the content loader 
+        // * instances created by the content loader
         // * or with a timeout nullified explicitely
-        return connRequestTimeout == null ? DEFAULT_TIMEOUT : connRequestTimeout;
+        return connRequestTimeout == null ? Integer.valueOf(DEFAULT_TIMEOUT) : connRequestTimeout;
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/task/JPASchedTask.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/task/JPASchedTask.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/task/JPASchedTask.java
index f51c078..3a27e1b 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/task/JPASchedTask.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/task/JPASchedTask.java
@@ -57,12 +57,19 @@ public class JPASchedTask extends AbstractTask implements SchedTask {
 
     @Override
     public Date getStartAt() {
-        return startAt;
+        if (startAt != null) {
+            return new Date(startAt.getTime());
+        }
+        return null;
     }
 
     @Override
     public void setStartAt(final Date start) {
-        this.startAt = start;
+        if (start != null) {
+            this.startAt = new Date(start.getTime());
+        } else {
+            this.startAt = null;
+        }
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/user/JPAUser.java
----------------------------------------------------------------------
diff --git a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/user/JPAUser.java b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/user/JPAUser.java
index eb865ab..472afa3 100644
--- a/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/user/JPAUser.java
+++ b/core/persistence-jpa/src/main/java/org/apache/syncope/core/persistence/jpa/entity/user/JPAUser.java
@@ -372,7 +372,7 @@ public class JPAUser
 
     @Override
     public Integer getFailedLogins() {
-        return failedLogins == null ? 0 : failedLogins;
+        return failedLogins == null ? Integer.valueOf(0) : failedLogins;
     }
 
     @Override
@@ -406,12 +406,19 @@ public class JPAUser
 
     @Override
     public Date getLastRecertification() {
-        return lastRecertification;
+        if (lastRecertification != null) {
+            return new Date(lastRecertification.getTime());
+        }
+        return null;
     }
 
     @Override
     public void setLastRecertification(final Date lastRecertification) {
-        this.lastRecertification = lastRecertification;
+        if (lastRecertification != null) {
+            this.lastRecertification = new Date(lastRecertification.getTime());
+        } else {
+            this.lastRecertification = null;
+        }
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/cache/VirAttrCacheValue.java
----------------------------------------------------------------------
diff --git a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/cache/VirAttrCacheValue.java b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/cache/VirAttrCacheValue.java
index 93b9c63..1822744 100644
--- a/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/cache/VirAttrCacheValue.java
+++ b/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/cache/VirAttrCacheValue.java
@@ -60,7 +60,10 @@ public class VirAttrCacheValue {
     }
 
     public Date getCreationDate() {
-        return creationDate;
+        if (creationDate != null) {
+            return new Date(creationDate.getTime());
+        }
+        return null;
     }
 
     public void forceExpiring() {
@@ -72,10 +75,17 @@ public class VirAttrCacheValue {
     }
 
     public Date getLastAccessDate() {
-        return lastAccessDate;
+        if (lastAccessDate != null) {
+            return new Date(lastAccessDate.getTime());
+        }
+        return null;
     }
 
     public void setLastAccessDate(final Date lastAccessDate) {
-        this.lastAccessDate = lastAccessDate;
+        if (lastAccessDate != null) {
+            this.lastAccessDate = new Date(lastAccessDate.getTime());
+        } else {
+            this.lastAccessDate = null;
+        }
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
index 83a97e6..a62444e 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/ConnectorFacadeProxy.java
@@ -318,9 +318,7 @@ public class ConnectorFacadeProxy implements Connector {
         try {
             return future == null ? null : future.get(connInstance.getConnRequestTimeout(), TimeUnit.SECONDS);
         } catch (java.util.concurrent.TimeoutException e) {
-            if (future != null) {
-                future.cancel(true);
-            }
+            future.cancel(true);
             throw new TimeoutException("Request timeout");
         } catch (Exception e) {
             LOG.error("Connector request execution failure", e);

http://git-wip-us.apache.org/repos/asf/syncope/blob/06fef362/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/PolicyDataBinderImpl.java
----------------------------------------------------------------------
diff --git a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/PolicyDataBinderImpl.java b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/PolicyDataBinderImpl.java
index 8829c03..a9dc2cc 100644
--- a/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/PolicyDataBinderImpl.java
+++ b/core/provisioning-java/src/main/java/org/apache/syncope/core/provisioning/java/data/PolicyDataBinderImpl.java
@@ -71,8 +71,6 @@ public class PolicyDataBinderImpl implements PolicyDataBinder {
         if (policyTO instanceof PasswordPolicyTO) {
             if (result == null) {
                 result = (T) entityFactory.newEntity(PasswordPolicy.class);
-            } else if (!(policyTO instanceof PasswordPolicyTO)) {
-                throwInvalidPolicy(policy, policyTO);
             }
 
             PasswordPolicy passwordPolicy = PasswordPolicy.class.cast(result);
@@ -88,8 +86,6 @@ public class PolicyDataBinderImpl implements PolicyDataBinder {
         } else if (policyTO instanceof AccountPolicyTO) {
             if (result == null) {
                 result = (T) entityFactory.newEntity(AccountPolicy.class);
-            } else if (!(policyTO instanceof AccountPolicyTO)) {
-                throwInvalidPolicy(policy, policyTO);
             }
 
             AccountPolicy accountPolicy = AccountPolicy.class.cast(result);
@@ -115,8 +111,6 @@ public class PolicyDataBinderImpl implements PolicyDataBinder {
         } else if (policyTO instanceof PullPolicyTO) {
             if (result == null) {
                 result = (T) entityFactory.newEntity(PullPolicy.class);
-            } else if (!(policyTO instanceof PullPolicyTO)) {
-                throwInvalidPolicy(policy, policyTO);
             }
 
             ((PullPolicy) result).setSpecification(((PullPolicyTO) policyTO).getSpecification());