This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git commit 491bf7f77e5c6d70eddb61ce3c9791b5aef2996b Author: jcouteau <couteau@codelutin.com> Date: Tue Oct 30 21:56:38 2018 +0100 Use try-with-ressources on all closeables Fix some other Sonar warnings --- .../faxtomail/persistence/entities/AttachmentFileImpl.java | 14 +++++--------- .../faxtomail/services/service/EmailServiceImpl.java | 6 +++++- .../faxtomail/ui/swing/actions/ShowRechercheAction.java | 7 +++++-- .../swing/content/attachment/AttachmentEditorUIModel.java | 6 +----- .../actions/GenerateAnnotatedAttachmentAction.java | 14 +++++++------- .../faxtomail/ui/swing/util/DemandeTableModel.java | 4 ++-- .../faxtomail/web/action/admin/ImportArchiveAction.java | 8 ++------ .../franciaflex/faxtomail/web/action/admin/LdapAction.java | 8 ++------ .../com/franciaflex/faxtomail/web/job/ClientUpdateJob.java | 14 ++++++-------- .../franciaflex/faxtomail/web/job/EDIManagementJob.java | 14 ++++++-------- .../com/franciaflex/faxtomail/web/job/MailFilterJob.java | 12 +++--------- 11 files changed, 44 insertions(+), 63 deletions(-) diff --git a/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/AttachmentFileImpl.java b/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/AttachmentFileImpl.java index 00c679dd..cc04f02f 100644 --- a/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/AttachmentFileImpl.java +++ b/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/AttachmentFileImpl.java @@ -37,6 +37,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.URLEncoder; +import java.nio.file.Files; public class AttachmentFileImpl extends AttachmentFileAbstract { @@ -102,15 +103,10 @@ public class AttachmentFileImpl extends AttachmentFileAbstract { */ @Override protected void finalize() throws Throwable { - try { - if (tmpLocalFile != null && tmpLocalFile.exists()) { - if (log.isDebugEnabled()) { - log.debug(String.format("Deleting file : %s", tmpLocalFile.getAbsolutePath())); - } - tmpLocalFile.delete(); - } - } finally { - super.finalize(); + if (log.isDebugEnabled()) { + log.debug(String.format("Deleting file : %s", tmpLocalFile.getAbsolutePath())); } + Files.delete(tmpLocalFile.toPath()); + super.finalize(); } } diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java index dc385221..2c076d92 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java @@ -423,7 +423,11 @@ public class EmailServiceImpl extends FaxToMailServiceSupport implements EmailSe int result2 = historyStatement.executeUpdate(); if (result != 1 || result2 != 1) { - log.error(String.format("Could not take email (%s) by user (%s)", email.getTopiaId(), user.getTopiaId())); + if (user != null) { + log.error(String.format("Could not take email (%s) by user (%s)", email.getTopiaId(), user.getTopiaId())); + } else { + log.error(String.format("Could not take email (%s) by null user", email.getTopiaId())); + } } } } diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java index 58e47d33..694fe4f2 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ShowRechercheAction.java @@ -24,6 +24,7 @@ package com.franciaflex.faxtomail.ui.swing.actions; import com.franciaflex.faxtomail.persistence.entities.Client; import com.franciaflex.faxtomail.persistence.entities.FaxToMailUser; +import com.franciaflex.faxtomail.services.FaxToMailServiceContext; import com.franciaflex.faxtomail.ui.swing.FaxToMailScreen; import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext; import com.franciaflex.faxtomail.ui.swing.content.MainUIHandler; @@ -51,8 +52,10 @@ public class ShowRechercheAction extends AbstractChangeScreenAction { context.setCurrentPaginationParameter(null); FaxToMailUser currentUser = context.getCurrentUser(); - List<Client> allowedClients = context.newServiceContext().getClientService().getAllClientsForUser(currentUser); - getUI().setContextValue(allowedClients, SearchUIModel.PROPERTY_ALLOWED_CLIENTS); + try(FaxToMailServiceContext serviceContext = context.newServiceContext()) { + List<Client> allowedClients = serviceContext.getClientService().getAllClientsForUser(currentUser); + getUI().setContextValue(allowedClients, SearchUIModel.PROPERTY_ALLOWED_CLIENTS); + } } super.doAction(); diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/attachment/AttachmentEditorUIModel.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/attachment/AttachmentEditorUIModel.java index 09f539b2..6fd72558 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/attachment/AttachmentEditorUIModel.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/attachment/AttachmentEditorUIModel.java @@ -55,13 +55,9 @@ public class AttachmentEditorUIModel extends AbstractFaxToMailBeanUIModel<Attach @Override public int compare(Attachment o1, Attachment o2) { if (o1 == null) { - - if (o2 == null) { - return 0; - } - return o2 == null ? 0 : -1; } + if (o2 == null) { return 1; } diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/pdfeditor/actions/GenerateAnnotatedAttachmentAction.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/pdfeditor/actions/GenerateAnnotatedAttachmentAction.java index ee5002f2..190baae9 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/pdfeditor/actions/GenerateAnnotatedAttachmentAction.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/pdfeditor/actions/GenerateAnnotatedAttachmentAction.java @@ -188,9 +188,9 @@ public class GenerateAnnotatedAttachmentAction extends AbstractFaxToMailAction<P cb.setColorStroke(BaseColor.BLUE); cb.moveTo(x, y); if (rotation % 180 == 0 ^ !panel.isHorizontal()) { - cb.lineTo(x + width, y); + cb.lineTo((float)x + width, y); } else { - cb.lineTo(x, y + height); + cb.lineTo(x, (float)y + height); } cb.stroke(); cb.restoreState(); @@ -206,10 +206,10 @@ public class GenerateAnnotatedAttachmentAction extends AbstractFaxToMailAction<P cb.saveState(); cb.setColorStroke(BaseColor.BLUE); cb.moveTo(x, y); - cb.lineTo(x + width, y + height); + cb.lineTo((float)x + width, (float)y + height); cb.stroke(); - cb.moveTo(x + width, y); - cb.lineTo(x, y + height); + cb.moveTo((float)x + width, y); + cb.lineTo(x, (float)y + height); cb.stroke(); cb.restoreState(); } @@ -237,7 +237,7 @@ public class GenerateAnnotatedAttachmentAction extends AbstractFaxToMailAction<P String text = note.getText(); String[] rows = text.split("\n"); - int rowHeight = (int) ((textArea.getHeight() / rows.length) / zoom); + int rowHeight = (int) (((double)textArea.getHeight() / rows.length) / zoom); int xxx = x; int yyy = y; @@ -298,7 +298,7 @@ public class GenerateAnnotatedAttachmentAction extends AbstractFaxToMailAction<P String text = stamp.getText(); String[] rows = text.split("\n"); - int rowHeight = (int) ((stamp.getHeight() / rows.length) / zoom); + int rowHeight = (int) (((double)stamp.getHeight() / rows.length) / zoom); int xxx = x; int yyy = y; diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/DemandeTableModel.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/DemandeTableModel.java index ee6149f1..883435c1 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/DemandeTableModel.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/DemandeTableModel.java @@ -425,8 +425,8 @@ public class DemandeTableModel extends AbstractTableModel { boolean result = (COLUMN_IDENTIFIERS.get(MailField.ATTACHMENT).equals(propertyName) || - COLUMN_IDENTIFIERS.get(MailField.REPLIES).equals(propertyName) || - entry.isEditable()) + COLUMN_IDENTIFIERS.get(MailField.REPLIES).equals(propertyName) || + (entry != null && entry.isEditable())) && !noneEditableCols.contains(propertyName); return result; } diff --git a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ImportArchiveAction.java b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ImportArchiveAction.java index c989d67a..7043df73 100644 --- a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ImportArchiveAction.java +++ b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/ImportArchiveAction.java @@ -113,11 +113,9 @@ public class ImportArchiveAction extends FaxToMailActionSupport implements Prepa // cette methode doit ouvrir sa propre connexion sinon l'interceptor va la fermer // and cause du execAndWait - FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); + try (FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); + FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext)){ - try { - persistenceContext = applicationContext.newPersistenceContext(); - FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext); EmailService emailService = serviceContext.getEmailService(); try (InputStream is = new FileInputStream(archiveFile)) { @@ -137,8 +135,6 @@ public class ImportArchiveAction extends FaxToMailActionSupport implements Prepa result = ERROR; } - } finally { - persistenceContext.close(); } return result; diff --git a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/LdapAction.java b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/LdapAction.java index 5de1eb67..74338409 100644 --- a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/LdapAction.java +++ b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/admin/LdapAction.java @@ -93,14 +93,10 @@ public class LdapAction extends FaxToMailActionSupport implements Preparable { // cette methode doit ouvrir sa propre connexion sinon l'interceptor va la fermer // and cause du execAndWait - FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); - try { - persistenceContext = applicationContext.newPersistenceContext(); - FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext); + try (FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); + FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext)){ LdapService ldapService2 = serviceContext.getLdapService(); ldapService2.updateLdapData(); - } finally { - persistenceContext.close(); } return SUCCESS; diff --git a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/ClientUpdateJob.java b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/ClientUpdateJob.java index 4e63239c..55ea9ab6 100644 --- a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/ClientUpdateJob.java +++ b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/ClientUpdateJob.java @@ -34,6 +34,8 @@ import org.quartz.DisallowConcurrentExecution; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; +import java.io.IOException; + /** * @author Kevin Morin (Code Lutin) */ @@ -48,11 +50,9 @@ public class ClientUpdateJob extends AbstractFaxToMailJob { public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { applicationContext = getApplicationContext(jobExecutionContext); - FaxToMailTopiaPersistenceContext persistenceContext = null; - try { - persistenceContext = applicationContext.newPersistenceContext(); - FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext); + try (FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); + FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext)){ if (log.isInfoEnabled()) { log.info("Running ClientUpdateJob at " + serviceContext.getNow()); @@ -64,10 +64,8 @@ public class ClientUpdateJob extends AbstractFaxToMailJob { if (log.isDebugEnabled()) { log.debug("ClientUpdateJob ended at " + serviceContext.getNow()); } - } finally { - if (persistenceContext != null) { - persistenceContext.close(); - } + } catch (IOException eee) { + log.error("Error executing client update job",eee); } } } diff --git a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/EDIManagementJob.java b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/EDIManagementJob.java index c5dc2b99..9a4c2250 100644 --- a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/EDIManagementJob.java +++ b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/EDIManagementJob.java @@ -34,6 +34,8 @@ import org.quartz.DisallowConcurrentExecution; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; +import java.io.IOException; + /** * @author Kevin Morin (Code Lutin) */ @@ -47,11 +49,9 @@ public class EDIManagementJob extends AbstractFaxToMailJob { @Override public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { applicationContext = getApplicationContext(jobExecutionContext); - FaxToMailTopiaPersistenceContext persistenceContext = null; - try { - persistenceContext = applicationContext.newPersistenceContext(); - FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext); + try (FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); + FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext)){ if (log.isInfoEnabled()) { log.info("Running EDIManagementJob at " + serviceContext.getNow()); } @@ -68,10 +68,8 @@ public class EDIManagementJob extends AbstractFaxToMailJob { if (log.isDebugEnabled()) { log.debug("End of EDIManagementJob"); } - } finally { - if (persistenceContext != null) { - persistenceContext.close(); - } + } catch (IOException eee) { + log.error("Error executing EDIManagementJob", eee); } } diff --git a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java index d96cfcd9..5ae0f42a 100644 --- a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java +++ b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java @@ -98,12 +98,10 @@ public class MailFilterJob extends AbstractFaxToMailJob { @Override public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { applicationContext = getApplicationContext(jobExecutionContext); - FaxToMailTopiaPersistenceContext persistenceContext = null; - - try { - persistenceContext = applicationContext.newPersistenceContext(); - FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext); + try (FaxToMailTopiaPersistenceContext persistenceContext = applicationContext.newPersistenceContext(); + FaxToMailServiceContext serviceContext = applicationContext.newServiceContext(persistenceContext)){ + config = serviceContext.getApplicationConfig(); if (log.isInfoEnabled()) { @@ -129,10 +127,6 @@ public class MailFilterJob extends AbstractFaxToMailJob { if (log.isErrorEnabled()) { log.error("Can't run quartz job", ex); } - } finally { - if (persistenceContext != null) { - persistenceContext.close(); - } } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.