branch develop updated (55c3766 -> a142971)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository coselmar. See https://gitlab.nuiton.org/codelutin/coselmar.git from 55c3766 [jgitflow-maven-plugin]Updating develop poms back to pre merge state new a142971 Some code quality The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit a142971830bf98eb48e505847de2532d9bb9a3c9 Author: Yannick Martel <martel@©odelutin.com> Date: Thu Jun 15 10:14:03 2017 +0200 Some code quality Summary of changes: .../fr/ifremer/coselmar/beans/AbstractMail.java | 2 +- .../fr/ifremer/coselmar/beans/DocumentBean.java | 8 ++- .../ifremer/coselmar/beans/DocumentSearchBean.java | 31 +++++++--- .../fr/ifremer/coselmar/beans/QuestionBean.java | 24 ++++++-- .../ifremer/coselmar/beans/QuestionSearchBean.java | 32 ++++++++--- .../ifremer/coselmar/beans/QuestionTreeNode.java | 16 ++++-- .../coselmar/converter/BeanEntityConverter.java | 67 ++++------------------ .../coselmar/services/CoselmarRestUtil.java | 4 ++ .../services/DefaultCoselmarServicesContext.java | 7 ++- .../services/StringLongMapValueComparator.java | 8 ++- .../indexation/DocumentsIndexationService.java | 7 ++- 11 files changed, 115 insertions(+), 91 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository coselmar. See https://gitlab.nuiton.org/codelutin/coselmar.git commit a142971830bf98eb48e505847de2532d9bb9a3c9 Author: Yannick Martel <martel@©odelutin.com> Date: Thu Jun 15 10:14:03 2017 +0200 Some code quality --- .../fr/ifremer/coselmar/beans/AbstractMail.java | 2 +- .../fr/ifremer/coselmar/beans/DocumentBean.java | 8 ++- .../ifremer/coselmar/beans/DocumentSearchBean.java | 31 +++++++--- .../fr/ifremer/coselmar/beans/QuestionBean.java | 24 ++++++-- .../ifremer/coselmar/beans/QuestionSearchBean.java | 32 ++++++++--- .../ifremer/coselmar/beans/QuestionTreeNode.java | 16 ++++-- .../coselmar/converter/BeanEntityConverter.java | 67 ++++------------------ .../coselmar/services/CoselmarRestUtil.java | 4 ++ .../services/DefaultCoselmarServicesContext.java | 7 ++- .../services/StringLongMapValueComparator.java | 8 ++- .../indexation/DocumentsIndexationService.java | 7 ++- 11 files changed, 115 insertions(+), 91 deletions(-) diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/AbstractMail.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/AbstractMail.java index c7ce0cb..bd7f4b0 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/AbstractMail.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/AbstractMail.java @@ -56,7 +56,7 @@ public abstract class AbstractMail { this.to = mail; } - abstract public String getSubject(); + public abstract String getSubject(); @Override public String toString() { diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java index 0c26bbb..5ec0d92 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentBean.java @@ -152,12 +152,14 @@ public class DocumentBean implements Serializable { } public Date getDepositDate() { - return depositDate; + return depositDate != null ? new Date(depositDate.getTime()) : null; } public void setDepositDate(Date depositDate) { if (depositDate != null) { this.depositDate = new Date(depositDate.getTime()); + } else { + this.depositDate = null; } } @@ -225,12 +227,14 @@ public class DocumentBean implements Serializable { } public Date getPublicationDate() { - return publicationDate; + return publicationDate != null ? new Date(publicationDate.getTime()) : null; } public void setPublicationDate(Date publicationDate) { if (publicationDate != null) { this.publicationDate = new Date(publicationDate.getTime()); + } else { + this.publicationDate = null; } } diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentSearchBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentSearchBean.java index 0fe4745..17a7599 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentSearchBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/DocumentSearchBean.java @@ -82,34 +82,49 @@ public class DocumentSearchBean extends DocumentBean { } public Date getDepositAfterDate() { - return depositAfterDate; + return depositAfterDate != null ? new Date(depositAfterDate.getTime()) : null; } public void setDepositAfterDate(Date depositAfterDate) { - this.depositAfterDate = depositAfterDate; + if (depositAfterDate != null) { + this.depositAfterDate = new Date(depositAfterDate.getTime()); + } else { + this.depositAfterDate = null; + } } public Date getDepositBeforeDate() { - return depositBeforeDate; + return depositBeforeDate != null ? new Date(depositBeforeDate.getTime()) : null; } public void setDepositBeforeDate(Date depositBeforeDate) { - this.depositBeforeDate = depositBeforeDate; + if (depositBeforeDate != null) { + this.depositBeforeDate = new Date(depositBeforeDate.getTime()); + } else { + this.depositBeforeDate = null; + } } public Date getPublicationAfterDate() { - return publicationAfterDate; + return publicationAfterDate != null ? new Date(publicationAfterDate.getTime()) : null; } public void setPublicationAfterDate(Date publicationAfterDate) { - this.publicationAfterDate = publicationAfterDate; + if (publicationAfterDate != null) { + this.publicationAfterDate = new Date(publicationAfterDate.getTime()); + } else { + this.publicationAfterDate = null; + } } public Date getPublicationBeforeDate() { - return publicationBeforeDate; + return publicationBeforeDate != null ? new Date(publicationBeforeDate.getTime()) : null; } public void setPublicationBeforeDate(Date publicationBeforeDate) { - this.publicationBeforeDate = publicationBeforeDate; + if (publicationBeforeDate != null) { + this.publicationBeforeDate = new Date(publicationBeforeDate.getTime()); + } + this.publicationBeforeDate = null; } } diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionBean.java index 037d51b..c5395aa 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionBean.java @@ -102,19 +102,27 @@ public class QuestionBean implements Serializable { } public Date getSubmissionDate() { - return submissionDate; + return submissionDate != null ? new Date(submissionDate.getTime()) : null; } public void setSubmissionDate(Date submissionDate) { - this.submissionDate = submissionDate; + if (submissionDate != null) { + this.submissionDate = new Date(submissionDate.getTime()); + } else { + this.submissionDate = null; + } } public Date getDeadline() { - return deadline; + return deadline != null ? new Date(deadline.getTime()) : null; } public void setDeadline(Date deadline) { - this.deadline = deadline; + if (deadline != null) { + this.deadline = new Date(deadline.getTime()); + } else { + this.deadline = null; + } } public Set<String> getThemes() { @@ -134,11 +142,15 @@ public class QuestionBean implements Serializable { } public Date getClosingDate() { - return closingDate; + return closingDate != null ? new Date(closingDate.getTime()) : null; } public void setClosingDate(Date closingDate) { - this.closingDate = closingDate; + if (closingDate != null) { + this.closingDate = new Date(closingDate.getTime()); + } else { + this.closingDate = null; + } } public String getType() { diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionSearchBean.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionSearchBean.java index e7591ea..d1fd0f7 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionSearchBean.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionSearchBean.java @@ -77,35 +77,51 @@ public class QuestionSearchBean extends QuestionBean { } public Date getSubmissionAfterDate() { - return submissionAfterDate; + return submissionAfterDate != null ? new Date(submissionAfterDate.getTime()) : null; } public void setSubmissionAfterDate(Date submissionAfterDate) { - this.submissionAfterDate = submissionAfterDate; + if (submissionAfterDate != null) { + this.submissionAfterDate = new Date(submissionAfterDate.getTime()); + } else { + this.submissionAfterDate = null; + } } public Date getSubmissionBeforeDate() { - return submissionBeforeDate; + return submissionBeforeDate != null ? new Date(submissionBeforeDate.getTime()) : null; } public void setSubmissionBeforeDate(Date submissionBeforeDate) { - this.submissionBeforeDate = submissionBeforeDate; + if (submissionBeforeDate != null) { + this.submissionBeforeDate = new Date(submissionBeforeDate.getTime()); + } else { + this.submissionBeforeDate = null; + } } public Date getDeadlineAfterDate() { - return deadlineAfterDate; + return deadlineAfterDate != null ? new Date(deadlineAfterDate.getTime()) : null; } public void setDeadlineAfterDate(Date deadlineAfterDate) { - this.deadlineAfterDate = deadlineAfterDate; + if (deadlineAfterDate != null) { + this.deadlineAfterDate = new Date(deadlineAfterDate.getTime()); + } else { + this.deadlineAfterDate = null; + } } public Date getDeadlineBeforeDate() { - return deadlineBeforeDate; + return deadlineBeforeDate != null ? new Date(deadlineBeforeDate.getTime()) : null; } public void setDeadlineBeforeDate(Date deadlineBeforeDate) { - this.deadlineBeforeDate = deadlineBeforeDate; + if (deadlineBeforeDate != null) { + this.deadlineBeforeDate = new Date(deadlineBeforeDate.getTime()); + } else { + this.deadlineBeforeDate = null; + } } public String getParticipantId() { diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionTreeNode.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionTreeNode.java index ee6743d..d5cc11c 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionTreeNode.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/beans/QuestionTreeNode.java @@ -67,19 +67,27 @@ public class QuestionTreeNode implements Serializable { } public Date getSubmissionDate() { - return submissionDate; + return submissionDate != null ? new Date(submissionDate.getTime()) : null; } public void setSubmissionDate(Date submissionDate) { - this.submissionDate = submissionDate; + if (submissionDate != null) { + this.submissionDate = new Date(submissionDate.getTime()); + } else { + this.submissionDate = null; + } } public Date getDeadline() { - return deadline; + return deadline != null ? new Date(deadline.getTime()) : null; } public void setDeadline(Date deadline) { - this.deadline = deadline; + if (deadline != null) { + this.deadline = new Date(deadline.getTime()); + } else { + this.deadline = null; + } } public Set<String> getThemes() { diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java index d36354b..b470a39 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/converter/BeanEntityConverter.java @@ -56,6 +56,10 @@ import java.util.Set; */ public class BeanEntityConverter { + private BeanEntityConverter() { + throw new IllegalAccessError("Utility class"); + } + public static DocumentBean toBean(TopiaIdFactory idFactory, Document document) { String lightId = idFactory.getRandomPart(document.getTopiaId()); Date depositeDate = document.getDepositDate(); @@ -98,7 +102,7 @@ public class BeanEntityConverter { ); } - public static UserBean toBean(String lightId ,CoselmarUser user) { + public static UserBean toBean(String lightId, CoselmarUser user) { return new UserBean(lightId, user.getFirstname(), user.getName(), @@ -129,34 +133,7 @@ public class BeanEntityConverter { } public static QuestionBean toBean(TopiaIdFactory idFactory, Question question) { - QuestionBean result = new QuestionBean(); - result.setId(idFactory.getRandomPart(question.getTopiaId())); - - result.setTitle(question.getTitle()); - result.setSummary(question.getSummary()); - result.setType(question.getType()); - result.setPrivacy(question.getPrivacy().name()); - result.setStatus(question.getStatus().name()); - - Collection<String> theme = question.getTheme(); - if (theme != null && !theme.isEmpty()) { - result.setThemes(new HashSet(theme)); - } - - Date submissionDate = question.getSubmissionDate(); - if (submissionDate != null){ - result.setSubmissionDate(new Date(submissionDate.getTime())); - } - - Date deadline = question.getDeadline(); - if (deadline != null){ - result.setDeadline(new Date(deadline.getTime())); - } - - Date closingDate = question.getClosingDate(); - if (closingDate != null){ - result.setClosingDate(new Date(closingDate.getTime())); - } + QuestionBean result = toLightBean(idFactory, question); CoselmarUserGroup participants = question.getParticipants(); if (participants != null && participants.getMembers() != null) { @@ -216,26 +193,6 @@ public class BeanEntityConverter { } result.setConclusion(question.getConclusion()); - Collection<Document> closingDocuments = question.getClosingDocuments(); - if (closingDocuments != null && !closingDocuments.isEmpty()) { - for (Document relatedDocument : closingDocuments) { - DocumentBean documentBean = toBean(idFactory, relatedDocument); - result.addClosingDocument(documentBean); - } - } - - result.setRestricted(question.isUnavailable()); - - Collection<Link> links = question.getLinks(); - if (links != null && !links.isEmpty()) { - for (Link link : links) { - LinkBean linkBean = new LinkBean(); - linkBean.setId(idFactory.getRandomPart(link.getTopiaId())); - linkBean.setName(link.getName()); - linkBean.setUrl(link.getUrl()); - result.addLink(linkBean); - } - } return result; } @@ -256,17 +213,17 @@ public class BeanEntityConverter { } Date submissionDate = question.getSubmissionDate(); - if (submissionDate != null){ + if (submissionDate != null) { result.setSubmissionDate(new Date(submissionDate.getTime())); } Date deadline = question.getDeadline(); - if (deadline != null){ + if (deadline != null) { result.setDeadline(new Date(deadline.getTime())); } Date closingDate = question.getClosingDate(); - if (closingDate != null){ + if (closingDate != null) { result.setClosingDate(new Date(closingDate.getTime())); result.setConclusion(question.getConclusion()); } @@ -387,17 +344,17 @@ public class BeanEntityConverter { } Date submissionDate = questionBean.getSubmissionDate(); - if (submissionDate != null){ + if (submissionDate != null) { question.setSubmissionDate(new Date(submissionDate.getTime())); } Date deadline = questionBean.getDeadline(); - if (deadline != null){ + if (deadline != null) { question.setDeadline(new Date(deadline.getTime())); } Date closingDate = questionBean.getClosingDate(); - if (closingDate != null){ + if (closingDate != null) { question.setClosingDate(new Date(closingDate.getTime())); question.setConclusion(questionBean.getConclusion()); } diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/CoselmarRestUtil.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/CoselmarRestUtil.java index 3c6bfa7..152ed50 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/CoselmarRestUtil.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/CoselmarRestUtil.java @@ -38,6 +38,10 @@ public class CoselmarRestUtil { public static final String HEADER_ACCESS_CONTROL_ALLOW_HEADERS = "Access-Control-Allow-Headers"; + private CoselmarRestUtil() { + throw new IllegalAccessError("Utility class"); + } + public static void prepareResponse(HttpContext context) { HttpServletResponse response = context.getResponse(); diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/DefaultCoselmarServicesContext.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/DefaultCoselmarServicesContext.java index b48a74f..70faf28 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/DefaultCoselmarServicesContext.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/DefaultCoselmarServicesContext.java @@ -38,6 +38,7 @@ import java.lang.reflect.InvocationTargetException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; +import java.util.Arrays; import java.util.Date; import java.util.Locale; @@ -50,6 +51,8 @@ public class DefaultCoselmarServicesContext implements CoselmarServicesContext { private static final Log log = getLog(DefaultCoselmarServicesContext.class); + protected static final int SALT_SIZE = 16; + protected CoselmarServicesConfig servicesConfig; protected CoselmarPersistenceContext persistenceContext; @@ -154,9 +157,9 @@ public class DefaultCoselmarServicesContext implements CoselmarServicesContext { } catch (NoSuchAlgorithmException e) { secureRandom = new SecureRandom(); } - byte[] salt = new byte[16]; + byte[] salt = new byte[SALT_SIZE]; secureRandom.nextBytes(salt); - return salt.toString(); + return Arrays.toString(salt); } @Override diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/StringLongMapValueComparator.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/StringLongMapValueComparator.java index f5168e9..ba2453e 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/StringLongMapValueComparator.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/StringLongMapValueComparator.java @@ -24,14 +24,18 @@ package fr.ifremer.coselmar.services; * #L% */ +import java.io.Serializable; import java.util.Comparator; import java.util.Map; /** * @author ymartel (martel@codelutin.com) */ -public class StringLongMapValueComparator implements Comparator<String> { - Map<String, Long> base; +public class StringLongMapValueComparator implements Comparator<String>, Serializable { + + private static final long serialVersionUID = 8730879698907790905L; + + protected Map<String, Long> base; public StringLongMapValueComparator(Map<String, Long> base) { this.base = base; diff --git a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/indexation/DocumentsIndexationService.java b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/indexation/DocumentsIndexationService.java index 137c228..ba46886 100644 --- a/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/indexation/DocumentsIndexationService.java +++ b/coselmar-rest/src/main/java/fr/ifremer/coselmar/services/indexation/DocumentsIndexationService.java @@ -79,6 +79,7 @@ public class DocumentsIndexationService extends CoselmarSimpleServiceSupport { protected static final String DOCUMENT_KEYWORD_CLOUD_TAG_PROPERTY = "documentCloudTagKeyword"; protected static final String DOCUMENT_FILE_CONTENT_INDEX_PROPERTY = "documentFileContent"; protected static final String DOCUMENT_TYPE = "documentindextype"; + protected static final int MAGICAL_SEARCH_SIZE = 1000; public void indexDocument(DocumentBean document, String fileContent) throws IOException { @@ -159,7 +160,7 @@ public class DocumentsIndexationService extends CoselmarSimpleServiceSupport { fullQueryBuilder.add(queryBuilder.build(), BooleanClause.Occur.MUST); fullQueryBuilder.add(new TermQuery(new Term("type", DOCUMENT_TYPE)), BooleanClause.Occur.MUST); - ScoreDoc[] hits = isearcher.search(fullQueryBuilder.build(), 1000).scoreDocs; + ScoreDoc[] hits = isearcher.search(fullQueryBuilder.build(), MAGICAL_SEARCH_SIZE).scoreDocs; List<String> documentIds = new ArrayList(hits.length); @@ -216,7 +217,7 @@ public class DocumentsIndexationService extends CoselmarSimpleServiceSupport { fullQueryBuilder.add(keywordsQueryBuilder.build(), BooleanClause.Occur.MUST); fullQueryBuilder.add(new TermQuery(new Term("type", DOCUMENT_TYPE)), BooleanClause.Occur.MUST); - ScoreDoc[] hits = isearcher.search(fullQueryBuilder.build(), 1000).scoreDocs; + ScoreDoc[] hits = isearcher.search(fullQueryBuilder.build(), MAGICAL_SEARCH_SIZE).scoreDocs; List<String> documentIds = new ArrayList(hits.length); @@ -239,7 +240,7 @@ public class DocumentsIndexationService extends CoselmarSimpleServiceSupport { queryBuilder.add(new TermQuery(new Term(DOCUMENT_ID_INDEX_PROPERTY, document.getId())), BooleanClause.Occur.MUST); queryBuilder.add(new TermQuery(new Term("type", DOCUMENT_TYPE)), BooleanClause.Occur.MUST); - ScoreDoc[] hits = isearcher.search(queryBuilder.build(), 1000).scoreDocs; + ScoreDoc[] hits = isearcher.search(queryBuilder.build(), MAGICAL_SEARCH_SIZE).scoreDocs; if (hits.length > 0) { Document doc = new Document(); doc.add(new StringField(DOCUMENT_ID_INDEX_PROPERTY, document.getId(), Field.Store.YES)); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm