Fork me on GitHub

FindBugs Bug Detector Report

The following document contains the results of FindBugs

FindBugs Version is 3.0.1

Threshold is

Effort is max

Summary

Classes Bugs Errors Missing Classes
256 67 0 78

Files

Class Bugs
fr.paris.lutece.plugins.identitystore.business.contract.ServiceContract 4
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.ExcludedIdentities 2
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentity 4
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentityLock 2
fr.paris.lutece.plugins.identitystore.business.identity.Identity 10
fr.paris.lutece.plugins.identitystore.business.referentiel.RefAttributeCertificationProcessus 1
fr.paris.lutece.plugins.identitystore.business.rules.duplicate.DuplicateRule 2
fr.paris.lutece.plugins.identitystore.service.PurgeIdentityService 1
fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeService 1
fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeValidationService 1
fr.paris.lutece.plugins.identitystore.service.contract.AttributeCertificationDefinitionService 1
fr.paris.lutece.plugins.identitystore.service.contract.ServiceContractService 1
fr.paris.lutece.plugins.identitystore.service.duplicate.DuplicateRuleService 1
fr.paris.lutece.plugins.identitystore.service.history.IdentityHistoryService 3
fr.paris.lutece.plugins.identitystore.service.identity.IdentityQualityService 1
fr.paris.lutece.plugins.identitystore.service.identity.IdentityService 2
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion 8
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.business.IndexAction 2
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject 6
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject 9
fr.paris.lutece.plugins.identitystore.service.listeners.IdentityStoreNotifyListenerService 1
fr.paris.lutece.plugins.identitystore.v3.web.request.contract.ActiveServiceContractGetRequest 1
fr.paris.lutece.plugins.identitystore.v3.web.request.history.IdentityStoreHistoryGetRequest 1
fr.paris.lutece.plugins.identitystore.web.ServiceContractJspBean 2

fr.paris.lutece.plugins.identitystore.business.contract.ServiceContract

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.contract.ServiceContract.getEndingDate() may expose internal representation by returning ServiceContract._dateEndingDate MALICIOUS_CODE EI_EXPOSE_REP 274 Medium
fr.paris.lutece.plugins.identitystore.business.contract.ServiceContract.getStartingDate() may expose internal representation by returning ServiceContract._dateStartingDate MALICIOUS_CODE EI_EXPOSE_REP 264 Medium
fr.paris.lutece.plugins.identitystore.business.contract.ServiceContract.setEndingDate(Date) may expose internal representation by storing an externally mutable object into ServiceContract._dateEndingDate MALICIOUS_CODE EI_EXPOSE_REP2 279 Medium
fr.paris.lutece.plugins.identitystore.business.contract.ServiceContract.setStartingDate(Date) may expose internal representation by storing an externally mutable object into ServiceContract._dateStartingDate MALICIOUS_CODE EI_EXPOSE_REP2 269 Medium

fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.ExcludedIdentities

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.ExcludedIdentities.getExclusionDate() may expose internal representation by returning ExcludedIdentities._dateExclusionDate MALICIOUS_CODE EI_EXPOSE_REP 68 Medium
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.ExcludedIdentities.setExclusionDate(Date) may expose internal representation by storing an externally mutable object into ExcludedIdentities._dateExclusionDate MALICIOUS_CODE EI_EXPOSE_REP2 73 Medium

fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentity

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentity.getCreationDate() may expose internal representation by returning SuspiciousIdentity._dateCreationDate MALICIOUS_CODE EI_EXPOSE_REP 150 Medium
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentity.getLastUpdateDate() may expose internal representation by returning SuspiciousIdentity._dateLastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP 160 Medium
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentity.setCreationDate(Timestamp) may expose internal representation by storing an externally mutable object into SuspiciousIdentity._dateCreationDate MALICIOUS_CODE EI_EXPOSE_REP2 155 Medium
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentity.setLastUpdateDate(Timestamp) may expose internal representation by storing an externally mutable object into SuspiciousIdentity._dateLastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP2 165 Medium

fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentityLock

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentityLock.getLockEndDate() may expose internal representation by returning SuspiciousIdentityLock._dateLockEndDate MALICIOUS_CODE EI_EXPOSE_REP 57 Medium
fr.paris.lutece.plugins.identitystore.business.duplicates.suspicions.SuspiciousIdentityLock.setLockEndDate(Timestamp) may expose internal representation by storing an externally mutable object into SuspiciousIdentityLock._dateLockEndDate MALICIOUS_CODE EI_EXPOSE_REP2 62 Medium

fr.paris.lutece.plugins.identitystore.business.identity.Identity

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.identity.Identity.getCreationDate() may expose internal representation by returning Identity._dateCreationDate MALICIOUS_CODE EI_EXPOSE_REP 218 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.getDeleteDate() may expose internal representation by returning Identity._dateDeleteDate MALICIOUS_CODE EI_EXPOSE_REP 288 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.getExpirationDate() may expose internal representation by returning Identity._dateExpirationDate MALICIOUS_CODE EI_EXPOSE_REP 278 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.getLastUpdateDate() may expose internal representation by returning Identity._dateLastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP 258 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.getMergeDate() may expose internal representation by returning Identity._dateMergeDate MALICIOUS_CODE EI_EXPOSE_REP 238 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.setCreationDate(Timestamp) may expose internal representation by storing an externally mutable object into Identity._dateCreationDate MALICIOUS_CODE EI_EXPOSE_REP2 223 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.setDeleteDate(Timestamp) may expose internal representation by storing an externally mutable object into Identity._dateDeleteDate MALICIOUS_CODE EI_EXPOSE_REP2 293 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.setExpirationDate(Timestamp) may expose internal representation by storing an externally mutable object into Identity._dateExpirationDate MALICIOUS_CODE EI_EXPOSE_REP2 283 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.setLastUpdateDate(Timestamp) may expose internal representation by storing an externally mutable object into Identity._dateLastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP2 263 Medium
fr.paris.lutece.plugins.identitystore.business.identity.Identity.setMergeDate(Timestamp) may expose internal representation by storing an externally mutable object into Identity._dateMergeDate MALICIOUS_CODE EI_EXPOSE_REP2 243 Medium

fr.paris.lutece.plugins.identitystore.business.referentiel.RefAttributeCertificationProcessus

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.referentiel.RefAttributeCertificationProcessus defines equals but not hashCode BAD_PRACTICE HE_EQUALS_NO_HASHCODE 116 Medium

fr.paris.lutece.plugins.identitystore.business.rules.duplicate.DuplicateRule

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.business.rules.duplicate.DuplicateRule.getDaemonLastExecDate() may expose internal representation by returning DuplicateRule._dateDaemonLastExecDate MALICIOUS_CODE EI_EXPOSE_REP 254 Medium
fr.paris.lutece.plugins.identitystore.business.rules.duplicate.DuplicateRule.setDaemonLastExecDate(Timestamp) may expose internal representation by storing an externally mutable object into DuplicateRule._dateDaemonLastExecDate MALICIOUS_CODE EI_EXPOSE_REP2 259 Medium

fr.paris.lutece.plugins.identitystore.service.PurgeIdentityService

Bug Category Details Line Priority
Exception is caught when Exception is not thrown in fr.paris.lutece.plugins.identitystore.service.PurgeIdentityService.purge(RequestAuthor, String, List, int) STYLE REC_CATCH_EXCEPTION 174 Medium

fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeService

Bug Category Details Line Priority
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeService._instance in fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeService.instance() MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 79-81 Medium

fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeValidationService

Bug Category Details Line Priority
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeValidationService._instance in fr.paris.lutece.plugins.identitystore.service.attribute.IdentityAttributeValidationService.instance() MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 82-84 Medium

fr.paris.lutece.plugins.identitystore.service.contract.AttributeCertificationDefinitionService

Bug Category Details Line Priority
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.identitystore.service.contract.AttributeCertificationDefinitionService._instance in fr.paris.lutece.plugins.identitystore.service.contract.AttributeCertificationDefinitionService.instance() MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 52-54 Medium

fr.paris.lutece.plugins.identitystore.service.contract.ServiceContractService

Bug Category Details Line Priority
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.identitystore.service.contract.ServiceContractService._instance in fr.paris.lutece.plugins.identitystore.service.contract.ServiceContractService.instance() MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 87-89 Medium

fr.paris.lutece.plugins.identitystore.service.duplicate.DuplicateRuleService

Bug Category Details Line Priority
Incorrect lazy initialization and update of static field fr.paris.lutece.plugins.identitystore.service.duplicate.DuplicateRuleService._instance in fr.paris.lutece.plugins.identitystore.service.duplicate.DuplicateRuleService.instance() MT_CORRECTNESS LI_LAZY_INIT_UPDATE_STATIC 56-58 Medium

fr.paris.lutece.plugins.identitystore.service.history.IdentityHistoryService

Bug Category Details Line Priority
Redundant nullcheck of serviceContract, which is known to be non-null in fr.paris.lutece.plugins.identitystore.service.history.IdentityHistoryService.get(String, String) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 83 Medium
Redundant nullcheck of serviceContract, which is known to be non-null in fr.paris.lutece.plugins.identitystore.service.history.IdentityHistoryService.search(IdentityHistorySearchRequest, String) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 105 Medium
fr.paris.lutece.plugins.identitystore.service.history.IdentityHistoryService.search(IdentityHistorySearchRequest, String) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 126 Medium

fr.paris.lutece.plugins.identitystore.service.identity.IdentityQualityService

Bug Category Details Line Priority
Incorrect lazy initialization of static field fr.paris.lutece.plugins.identitystore.service.identity.IdentityQualityService._instance in fr.paris.lutece.plugins.identitystore.service.identity.IdentityQualityService.instance() MT_CORRECTNESS LI_LAZY_INIT_STATIC 78-80 Medium

fr.paris.lutece.plugins.identitystore.service.identity.IdentityService

Bug Category Details Line Priority
Redundant nullcheck of serviceContract, which is known to be non-null in fr.paris.lutece.plugins.identitystore.service.identity.IdentityService.search(String, String, IdentitySearchResponse, String, RequestAuthor) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 1006 Medium
Exception is caught when Exception is not thrown in fr.paris.lutece.plugins.identitystore.service.identity.IdentityService.create(IdentityChangeRequest, RequestAuthor, String, IdentityChangeResponse) STYLE REC_CATCH_EXCEPTION 275 Medium

fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion

Bug Category Details Line Priority
Found reliance on default encoding in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.buildDefaultHeaders(): new String(byte[]) I18N DM_DEFAULT_ENCODING 351 High
Nullcheck of _httpClient at line 275 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.DELETE(String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 275 Medium
Nullcheck of _httpClient at line 117 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.GET(String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 117 Medium
Nullcheck of _httpClient at line 136 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.HEAD(String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 136 Medium
Nullcheck of _httpClient at line 241 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.MSEARCH(String, String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 241 Medium
Nullcheck of _httpClient at line 186 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.POST(String, String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 186 Medium
Nullcheck of _httpClient at line 159 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.PUT(String, String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 159 Medium
Nullcheck of _httpClient at line 213 of value previously dereferenced in fr.paris.lutece.plugins.identitystore.service.indexer.elastic.client.ElasticConnexion.SEARCH(String, String) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 213 Medium

fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.business.IndexAction

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.business.IndexAction.getDateIndex() may expose internal representation by returning IndexAction._dateIndex MALICIOUS_CODE EI_EXPOSE_REP 89 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.business.IndexAction.setDateIndex(Date) may expose internal representation by storing an externally mutable object into IndexAction._dateIndex MALICIOUS_CODE EI_EXPOSE_REP2 94 Medium

fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject.getCertificateDate() may expose internal representation by returning AttributeObject.certificateDate MALICIOUS_CODE EI_EXPOSE_REP 155 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject.getCertificateExpirationDate() may expose internal representation by returning AttributeObject.certificateExpirationDate MALICIOUS_CODE EI_EXPOSE_REP 165 Medium
new fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject(String, String, String, String, String, boolean, String, String, Timestamp, Timestamp, String) may expose internal representation by storing an externally mutable object into AttributeObject.certificateDate MALICIOUS_CODE EI_EXPOSE_REP2 63 Medium
new fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject(String, String, String, String, String, boolean, String, String, Timestamp, Timestamp, String) may expose internal representation by storing an externally mutable object into AttributeObject.certificateExpirationDate MALICIOUS_CODE EI_EXPOSE_REP2 64 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject.setCertificateDate(Timestamp) may expose internal representation by storing an externally mutable object into AttributeObject.certificateDate MALICIOUS_CODE EI_EXPOSE_REP2 160 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.AttributeObject.setCertificateExpirationDate(Timestamp) may expose internal representation by storing an externally mutable object into AttributeObject.certificateExpirationDate MALICIOUS_CODE EI_EXPOSE_REP2 170 Medium

fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject

Bug Category Details Line Priority
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject.getCreationDate() may expose internal representation by returning IdentityObject.creationDate MALICIOUS_CODE EI_EXPOSE_REP 92 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject.getExpirationDate() may expose internal representation by returning IdentityObject.expirationDate MALICIOUS_CODE EI_EXPOSE_REP 111 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject.getLastUpdateDate() may expose internal representation by returning IdentityObject.lastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP 102 Medium
new fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject(String, String, Timestamp, Timestamp, Timestamp, boolean, Map) may expose internal representation by storing an externally mutable object into IdentityObject.creationDate MALICIOUS_CODE EI_EXPOSE_REP2 58 Medium
new fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject(String, String, Timestamp, Timestamp, Timestamp, boolean, Map) may expose internal representation by storing an externally mutable object into IdentityObject.expirationDate MALICIOUS_CODE EI_EXPOSE_REP2 60 Medium
new fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject(String, String, Timestamp, Timestamp, Timestamp, boolean, Map) may expose internal representation by storing an externally mutable object into IdentityObject.lastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP2 59 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject.setCreationDate(Timestamp) may expose internal representation by storing an externally mutable object into IdentityObject.creationDate MALICIOUS_CODE EI_EXPOSE_REP2 97 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject.setExpirationDate(Timestamp) may expose internal representation by storing an externally mutable object into IdentityObject.expirationDate MALICIOUS_CODE EI_EXPOSE_REP2 115 Medium
fr.paris.lutece.plugins.identitystore.service.indexer.elastic.index.model.IdentityObject.setLastUpdateDate(Timestamp) may expose internal representation by storing an externally mutable object into IdentityObject.lastUpdateDate MALICIOUS_CODE EI_EXPOSE_REP2 107 Medium

fr.paris.lutece.plugins.identitystore.service.listeners.IdentityStoreNotifyListenerService

Bug Category Details Line Priority
Incorrect lazy initialization of static field fr.paris.lutece.plugins.identitystore.service.listeners.IdentityStoreNotifyListenerService._singleton in fr.paris.lutece.plugins.identitystore.service.listeners.IdentityStoreNotifyListenerService.instance() MT_CORRECTNESS LI_LAZY_INIT_STATIC 109-111 Medium

fr.paris.lutece.plugins.identitystore.v3.web.request.contract.ActiveServiceContractGetRequest

Bug Category Details Line Priority
Redundant nullcheck of activeServiceContract, which is known to be non-null in fr.paris.lutece.plugins.identitystore.v3.web.request.contract.ActiveServiceContractGetRequest.doSpecificRequest() STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 89 Medium

fr.paris.lutece.plugins.identitystore.v3.web.request.history.IdentityStoreHistoryGetRequest

Bug Category Details Line Priority
Redundant nullcheck of identityHistory, which is known to be non-null in fr.paris.lutece.plugins.identitystore.v3.web.request.history.IdentityStoreHistoryGetRequest.doSpecificRequest() STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 68 Medium

fr.paris.lutece.plugins.identitystore.web.ServiceContractJspBean

Bug Category Details Line Priority
Call to equals(null) in fr.paris.lutece.plugins.identitystore.web.ServiceContractJspBean.doCreateServiceContract(HttpServletRequest) CORRECTNESS EC_NULL_ARG 307 Medium
Call to equals(null) in fr.paris.lutece.plugins.identitystore.web.ServiceContractJspBean.doModifyServiceContract(HttpServletRequest) CORRECTNESS EC_NULL_ARG 470 Medium