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 <cohei...@apache.org> Authored: Tue Dec 13 13:16:18 2016 +0000 Committer: Colm O hEigeartaigh <cohei...@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());