branch feature/1375-Ne_pas_interrompre_export created (now 125f89c)
This is an automated email from the git hooks/post-receive script. New change to branch feature/1375-Ne_pas_interrompre_export in repository lima. See https://gitlab.nuiton.org/chorem/lima.git at 125f89c refs #1375 [ISO] refactoring This branch includes the following new commits: new c7bb6a0 refs #1375 [ISO] refactoring new 0dd526f refs #1314 [ISO] renommage de méthode new 8c15145 refs #1314 mise à jour du mavenpom new 2253fd3 refs #1375 [ISO] refactoring new 125f89c refs #1375 [ISO] refactoring The 5 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 125f89cd600a957ecf7344fe8175e594297ca859 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 15:19:00 2016 +0100 refs #1375 [ISO] refactoring commit 2253fd31a0518f09f86453ab9ee49e833a1dd356 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 15:06:56 2016 +0100 refs #1375 [ISO] refactoring commit 8c15145492a0e6bfff76e576f29ea143759e5d91 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 15:02:28 2016 +0100 refs #1314 mise à jour du mavenpom commit 0dd526f3afb3de583f0a75653bd9bb48ad7c257f Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 14:50:58 2016 +0100 refs #1314 [ISO] renommage de méthode commit c7bb6a0b8cbaab1d5494e84b0975518726e0f0c5 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 14:41:10 2016 +0100 refs #1375 [ISO] refactoring -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/1375-Ne_pas_interrompre_export in repository lima. See https://gitlab.nuiton.org/chorem/lima.git commit c7bb6a0b8cbaab1d5494e84b0975518726e0f0c5 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 14:41:10 2016 +0100 refs #1375 [ISO] refactoring --- .../lima/business/ejb/ExportServiceImpl.java | 155 +++++++++------------ 1 file changed, 63 insertions(+), 92 deletions(-) diff --git a/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java b/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java index 4a1f4bf..86859e2 100644 --- a/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java +++ b/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java @@ -59,6 +59,7 @@ import org.chorem.lima.entity.FiscalPeriod; import org.chorem.lima.entity.Identity; import org.chorem.lima.entity.VatStatement; import org.nuiton.csv.Export; +import org.nuiton.csv.ExportModel; import javax.ejb.EJB; import javax.ejb.Remote; @@ -107,20 +108,26 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @EJB protected IdentityService identityService; + protected void processExport(String charset, Class exportedClass, ExportResult exportResult, Iterable entities, ExportModel model) { + try { + String exportData = Export.exportToString(model, entities, Charset.forName(charset), true); + exportResult.setExportData(exportData); + } catch (Exception e) { + exportResult.addException(new ExportException(String.format("Could not export class %s.", exportedClass), e)); + } + } + @Override public ImportExportResults exportAccountsAsCSV(String charset) { ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(Account.class); + Class<Account> exportedClass = Account.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); AccountTopiaDao accountTopiaDao = getDaoHelper().getAccountDao(); List<Account> entities = accountTopiaDao.findAll(); if (entities != null && !entities.isEmpty()) { AccountModel model = new AccountModel(); - try { - exportResult.setExportData(Export.exportToString(model, entities, java.nio.charset.Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export accounts.", e)); - } + processExport(charset, exportedClass, exportResult, entities, model); } return results; } @@ -128,55 +135,46 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportEntryBooksAsCSV(String charset){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(EntryBook.class); + Class exportedClass = EntryBook.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); EntryBookTopiaDao entryBookTopiaDao = getDaoHelper().getEntryBookDao(); List<EntryBook> entities = entryBookTopiaDao.findAll(); - if (entities != null && !entities.isEmpty()) { - EntryBookModel model = new EntryBookModel(); - try { - exportResult.setExportData(Export.exportToString(model, entities, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export entry books.", e)); - } - } + + entities = entities == null ? Lists.newArrayList() : entities; + EntryBookModel model = new EntryBookModel(); + processExport(charset, exportedClass, exportResult, entities, model); + return results; } @Override public ImportExportResults exportFiscalPeriodsAsCSV(String charset){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(FiscalPeriod.class); + Class<FiscalPeriod> exportedClass = FiscalPeriod.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); List<FiscalPeriod> entities = fiscalPeriodService.getAllFiscalPeriods(); - if (entities != null && !entities.isEmpty()) { - FiscalPeriodModel model = new FiscalPeriodModel(); - try { - exportResult.setExportData(Export.exportToString(model, entities, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export fiscal periods.", e)); - } - } + entities = entities == null ? Lists.newArrayList() : entities; + FiscalPeriodModel model = new FiscalPeriodModel(); + processExport(charset, exportedClass, exportResult, entities, model); return results; } protected ImportExportResults exportFinancialTransactionsFile(String charset){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(FinancialTransaction.class); + Class<FinancialTransaction> exportedClass = FinancialTransaction.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); FinancialTransactionTopiaDao financialTransactionTopiaDao = getDaoHelper().getFinancialTransactionDao(); List<FinancialTransaction> entities = financialTransactionTopiaDao.findAll(); - if (entities != null && !entities.isEmpty()) { - FinancialTransactionModel model = new FinancialTransactionModel(entryBookService); - try { - exportResult.setExportData(Export.exportToString(model, entities, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export financial transactions.", e)); - } - } + + entities = entities == null ? Lists.newArrayList() : entities; + FinancialTransactionModel model = new FinancialTransactionModel(entryBookService); + processExport(charset, exportedClass, exportResult, entities, model); return results; } @@ -184,18 +182,14 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportEntriesAsCSV(String charset, Boolean humanReadable){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(Entry.class); + Class<Entry> exportedClass = Entry.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); EntryTopiaDao dao = getDaoHelper().getEntryDao(); List<Entry> entities = dao.findAll(); - if (entities != null && !entities.isEmpty()) { - EntryModel model = new EntryModel(accountService, entryBookService, financialTransactionService , humanReadable); - try { - exportResult.setExportData(Export.exportToString(model, entities, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export entries.", e)); - } - } + entities = entities == null ? Lists.newArrayList() : entities; + EntryModel model = new EntryModel(accountService, entryBookService, financialTransactionService , humanReadable); + processExport(charset, exportedClass, exportResult, entities, model); return results; } @@ -212,18 +206,15 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportFinancialStatements(String charset){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(FinancialStatement.class); + Class<FinancialStatement> exportedClass = FinancialStatement.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); List<FinancialStatement> rootFinancialStatements = financialStatementService.getRootFinancialStatements(); if (rootFinancialStatements != null) { FinancialStatementModel model = new FinancialStatementModel(); List<FinancialStatement> financialStatements = new ArrayList<>(); addAllSubFinancialStatements(financialStatements, rootFinancialStatements); - try { - exportResult.setExportData(Export.exportToString(model, financialStatements, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export financial statements.", e)); - } + processExport(charset, exportedClass, exportResult, financialStatements, model); } return results; } @@ -241,38 +232,31 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportVatStatements(String charset) { ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(VatStatement.class); + Class<VatStatement> exportedClass = VatStatement.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); List<VatStatement> rootVatStatements = vatStatementService.getRootVatStatements(); if (rootVatStatements != null) { VatStatementModel model = new VatStatementModel(); List<VatStatement> vatStatements = new ArrayList<>(); getAllSubVATStatements(vatStatements, rootVatStatements); - try { - exportResult.setExportData(Export.exportToString(model, vatStatements, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export VAT statements.", e)); - } + processExport(charset, exportedClass, exportResult, vatStatements, model); } return results; } protected ImportExportResults exportIdentity(String charset) { ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(Identity.class); + Class<Identity> exportedClass = Identity.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); Identity identity = identityService.getIdentity(); - if (identity != null) { - List<Identity> identities = new ArrayList<>(); - identities.add(identity); - - IdentityModel model = new IdentityModel(); - try { - exportResult.setExportData(Export.exportToString(model, identities, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export identity.", e)); - } - } + + List<Identity> identities = identity == null ? new ArrayList<>() : Lists.newArrayList(identity); + + IdentityModel model = new IdentityModel(); + processExport(charset, exportedClass, exportResult, identities, model); + return results; } @@ -280,12 +264,12 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ public ImportExportResults exportBackup(String charset) { ImportExportResults results = exportAccountsAsCSV(charset); - results.pushExportResults(exportEntryBooksAsCSV(charset)); results.pushExportResults(exportFiscalPeriodsAsCSV(charset)); results.pushExportResults(exportFinancialTransactionsFile(charset)); results.pushExportResults(exportEntriesAsCSV(charset, false)); results.pushExportResults(exportIdentity(charset)); + return results; } @@ -294,16 +278,13 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportAccountAsEbp(String charset) { ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(Account.class); + Class<Account> exportedClass = Account.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); List<Account> accounts = accountService.getAllAccounts(); if (accounts != null && !accounts.isEmpty()) { AccountEBPModel model = new AccountEBPModel(); - try { - exportResult.setExportData(Export.exportToString(model, accounts, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export accounts.", e)); - } + processExport(charset, exportedClass, exportResult, accounts, model); } return results; } @@ -311,16 +292,13 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportEntriesAsEbp(String charset){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(Entry.class); + Class<Entry> exportedClass = Entry.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); List<Entry> entries = getDaoHelper().getEntryDao().findAll(); if (entries != null && !entries.isEmpty()) { EntryEBPModel model = new EntryEBPModel(); - try { - exportResult.setExportData(Export.exportToString(model, entries, Charset.forName(charset),true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export entries.", e)); - } + processExport(charset, exportedClass, exportResult, entries, model); } @@ -330,25 +308,22 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ @Override public ImportExportResults exportEntryBookAsEbp(String charset){ ImportExportResults results = new ImportExportResults(); - ExportResult exportResult = results.createAddAndGetExportResult(EntryBook.class); + Class<EntryBook> exportedClass = EntryBook.class; + ExportResult exportResult = results.createAddAndGetExportResult(exportedClass); List<EntryBook> entryBooks = entryBookService.getAllEntryBooks(); if (entryBooks != null && !entryBooks.isEmpty()) { EntryBookModel model = new EntryBookModel(); - try { - exportResult.setExportData(Export.exportToString(model, entryBooks, Charset.forName(charset))); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export entry books.", e)); - - } + processExport(charset, exportedClass, exportResult, entryBooks, model); } return results; } @Override public ExportResult exportFiscalControl(FiscalPeriod period, EntryBook entryBookAtNew, String charset) { - ExportResult exportResult = new ExportResult(Entry.class); + Class<Entry> exportedClass = Entry.class; + ExportResult exportResult = new ExportResult(exportedClass); EntryTopiaDao dao = getDaoHelper().getEntryDao(); List<Entry> entities = dao.findAllEntryByDate(period.getBeginDate(), period.getEndDate()); @@ -362,11 +337,7 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ if (!entries.isEmpty()) { FiscalControlExportModel model = new FiscalControlExportModel(); - try { - exportResult.setExportData(Export.exportToString(model, entries, Charset.forName(charset), true)); - } catch (Exception e) { - exportResult.addException(new ExportException("Could not export entries.", e)); - } + processExport(charset, exportedClass, exportResult, entities, model); } return exportResult; -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/1375-Ne_pas_interrompre_export in repository lima. See https://gitlab.nuiton.org/chorem/lima.git commit 0dd526f3afb3de583f0a75653bd9bb48ad7c257f Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 14:50:58 2016 +0100 refs #1314 [ISO] renommage de méthode --- .../java/org/chorem/lima/business/api/ExportService.java | 2 +- .../java/org/chorem/lima/business/ejb/ExportServiceImpl.java | 2 +- .../org/chorem/lima/business/ImportExportServiceTest.java | 12 +++++------- .../java/org/chorem/lima/ui/importexport/ImportExport.java | 3 +-- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/lima-business-api/src/main/java/org/chorem/lima/business/api/ExportService.java b/lima-business-api/src/main/java/org/chorem/lima/business/api/ExportService.java index bebba6c..20bfa5d 100644 --- a/lima-business-api/src/main/java/org/chorem/lima/business/api/ExportService.java +++ b/lima-business-api/src/main/java/org/chorem/lima/business/api/ExportService.java @@ -54,7 +54,7 @@ public interface ExportService { ImportExportResults exportVatStatements(String charset); - ImportExportResults exportBackup(String charset); + ImportExportResults exportAll(String charset); //####################################### EBP ############################################## diff --git a/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java b/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java index 86859e2..ca0d7bb 100644 --- a/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java +++ b/lima-business/src/main/java/org/chorem/lima/business/ejb/ExportServiceImpl.java @@ -261,7 +261,7 @@ public class ExportServiceImpl extends AbstractLimaService implements ExportServ } @Override - public ImportExportResults exportBackup(String charset) { + public ImportExportResults exportAll(String charset) { ImportExportResults results = exportAccountsAsCSV(charset); results.pushExportResults(exportEntryBooksAsCSV(charset)); diff --git a/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java b/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java index 4fbd06a..80e4d95 100644 --- a/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java +++ b/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java @@ -71,6 +71,8 @@ import java.util.zip.ZipOutputStream; */ public class ImportExportServiceTest extends AbstractLimaTest { + public static final String JAVA_IO_TMPDIR = System.getProperty("java.io.tmpdir")+"/"; + @Test public void testExportImportAccounts() throws Exception { initTestWithAccounts(); @@ -80,13 +82,11 @@ public class ImportExportServiceTest extends AbstractLimaTest { List<Account> accounts = accountService.getAllAccounts(); Assert.assertTrue(accountService.getAllAccounts().size() > 0); - // export accounts - String tmpDir = System.getProperty("java.io.tmpdir")+"/"; ImportExportResults export = exportService.exportAccountsAsCSV(Charset.defaultCharset().name()); InputStream stream = IOUtils.toInputStream(export.getExportResults().get(0).exportData); - FileOutputStream res = new FileOutputStream(tmpDir + "export-accounts.csv"); + FileOutputStream res = new FileOutputStream(JAVA_IO_TMPDIR + "export-accounts.csv"); IOUtils.copy(stream, res); // remove accounts @@ -99,7 +99,7 @@ public class ImportExportServiceTest extends AbstractLimaTest { // import accounts InputStream contentStream = null; try { - contentStream = new FileInputStream(tmpDir + "export-accounts.csv"); + contentStream = new FileInputStream(JAVA_IO_TMPDIR + "export-accounts.csv"); String inportStream = IOUtils.toString(contentStream); ImportExportResults result = importService.importAccountAsCSV(inportStream); @@ -267,7 +267,7 @@ public class ImportExportServiceTest extends AbstractLimaTest { identity.setCity("Saint-Sébastien-sur-Loire"); identityService.updateIdentity(identity); - ImportExportResults export = exportService.exportBackup(Charset.defaultCharset().name()); + ImportExportResults export = exportService.exportAll(Charset.defaultCharset().name()); String tmpDir = System.getProperty("java.io.tmpdir")+"/TMP_BACKUP.zip"; createZipFile(export, tmpDir); @@ -289,8 +289,6 @@ public class ImportExportServiceTest extends AbstractLimaTest { } } - public static final String JAVA_IO_TMPDIR = System.getProperty("java.io.tmpdir")+"/"; - protected ImportExportResults createZipFile(ImportExportResults streamData, String path){ ZipOutputStream export = null; diff --git a/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java b/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java index 6ee3c74..3c61f72 100644 --- a/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java +++ b/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java @@ -276,7 +276,7 @@ public class ImportExport { createFile(exportFilePath, defaultCharset.name(), results.getExportResults().get(0).getExportData()); break; case CSV_ALL_EXPORT: - results = exportBackup(exportFilePath, defaultCharset.name()); + results = exportAll(exportFilePath, defaultCharset.name()); break; case CSV_ALL_IMPORT: results = importAllFromZipFile(importURL); @@ -501,7 +501,6 @@ public class ImportExport { return message; } - /** * open choose file dialog with appropriate file mode view * folders for export or folders+files for import -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/1375-Ne_pas_interrompre_export in repository lima. See https://gitlab.nuiton.org/chorem/lima.git commit 8c15145492a0e6bfff76e576f29ea143759e5d91 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 15:02:28 2016 +0100 refs #1314 mise à jour du mavenpom --- .../chorem/lima/ui/importexport/ImportExport.java | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java b/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java index 3c61f72..e2a39fa 100644 --- a/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java +++ b/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java @@ -100,6 +100,8 @@ public class ImportExport { private static final Log log = LogFactory.getLog(ImportExport.class); public static final int BUFFER_SIZE = 1024; + public static final String CSV = ".csv"; + public static final String EXPORT_DATE_PATTERN = "dd-MM-yyyy HH:mm:ss"; /** Parent view. */ protected Component viewComponent; @@ -113,6 +115,8 @@ public class ImportExport { protected ErrorHelper errorHelper; public static final String JAVA_IO_TMPDIR = System.getProperty("java.io.tmpdir")+"/"; + public static final String EXPORT_ALL_ZIP_FILE_NAME = "%s/LIMA-BACKUP-%s.zip"; + public static final String TEMPORARY_EXTRACT_CSV_FILE_PATH = JAVA_IO_TMPDIR + "%s" + CSV; public ImportExport(Component view) { viewComponent = view; @@ -601,19 +605,21 @@ public class ImportExport { return result; } - protected ImportExportResults exportBackup(String path, String charset){ - ImportExportResults streamData = exportService.exportBackup(charset); + protected ImportExportResults exportAll(String path, String charset){ + ImportExportResults streamData = exportService.exportAll(charset); ZipOutputStream export = null; FileOutputStream result = null; try { - SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); - result = new FileOutputStream(path + "/LIMA-BACKUP-"+ dateFormat.format(new Date())); + SimpleDateFormat dateFormat = new SimpleDateFormat(EXPORT_DATE_PATTERN); + result = new FileOutputStream(String.format(EXPORT_ALL_ZIP_FILE_NAME, path, dateFormat.format(new Date()))); export = new ZipOutputStream(result); - for (ExportResult exportedData : streamData.getExportResults()) { + List<ExportResult> exportResults = streamData.getExportResults(); + for (ExportResult exportedData : exportResults) { if (exportedData != null && StringUtils.isNotBlank(exportedData.getExportData())) { String data = exportedData.getExportData(); - File file = createFile(JAVA_IO_TMPDIR + exportedData.getFromSource().getSimpleName(), charset, data); + String entityFileName = exportedData.getFromSource().getSimpleName(); + File file = createFile(String.format(TEMPORARY_EXTRACT_CSV_FILE_PATH, entityFileName), charset, data); if (file != null) { FileInputStream stream = null; try { @@ -630,9 +636,6 @@ public class ImportExport { FileUtils.forceDelete(file); } } - } else { - // export failed - break; } } export.flush(); -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/1375-Ne_pas_interrompre_export in repository lima. See https://gitlab.nuiton.org/chorem/lima.git commit 2253fd31a0518f09f86453ab9ee49e833a1dd356 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 15:06:56 2016 +0100 refs #1375 [ISO] refactoring --- .../chorem/lima/business/api/ImportService.java | 2 +- .../lima/business/ejb/ImportServiceImpl.java | 2 +- .../chorem/lima/ui/importexport/ImportExport.java | 72 ++++++++++++---------- 3 files changed, 42 insertions(+), 34 deletions(-) diff --git a/lima-business-api/src/main/java/org/chorem/lima/business/api/ImportService.java b/lima-business-api/src/main/java/org/chorem/lima/business/api/ImportService.java index bbccb51..4ccbbe7 100644 --- a/lima-business-api/src/main/java/org/chorem/lima/business/api/ImportService.java +++ b/lima-business-api/src/main/java/org/chorem/lima/business/api/ImportService.java @@ -43,7 +43,7 @@ public interface ImportService { ImportExportResults importVATStatementsAsCSV(String contents); - ImportExportResults importBackup(String entryBooks, String transactions, String fiscalPeriods, String accounts, String entries, String identity); + ImportExportResults importAll(String entryBooks, String transactions, String fiscalPeriods, String accounts, String entries, String identity); //####################################### EBP ############################################## diff --git a/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java b/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java index f361bc9..554c319 100644 --- a/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java +++ b/lima-business/src/main/java/org/chorem/lima/business/ejb/ImportServiceImpl.java @@ -797,7 +797,7 @@ public class ImportServiceImpl extends AbstractLimaService implements ImportServ } @Override - public ImportExportResults importBackup(String entryBooks, String financialTransactions, String fiscalPeriods, String accounts, String entries, String identity) { + public ImportExportResults importAll(String entryBooks, String financialTransactions, String fiscalPeriods, String accounts, String entries, String identity) { ImportExportResults globalResult = importAccountAsCSV(accounts); if (globalResult.isErrors()){ return globalResult; diff --git a/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java b/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java index e2a39fa..2b1f0b1 100644 --- a/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java +++ b/lima-swing/src/main/java/org/chorem/lima/ui/importexport/ImportExport.java @@ -115,6 +115,7 @@ public class ImportExport { protected ErrorHelper errorHelper; public static final String JAVA_IO_TMPDIR = System.getProperty("java.io.tmpdir")+"/"; + public static final String TMP_BACKUP_FILE_MODEL = "%s%s-%s" + CSV; public static final String EXPORT_ALL_ZIP_FILE_NAME = "%s/LIMA-BACKUP-%s.zip"; public static final String TEMPORARY_EXTRACT_CSV_FILE_PATH = JAVA_IO_TMPDIR + "%s" + CSV; @@ -655,7 +656,7 @@ public class ImportExport { String tmpDir = System.getProperty("java.io.tmpdir")+"/"; String determinant = String.valueOf(new Date().getTime()); ImportResult result = extractZipFile(url, tmpDir, determinant); - ImportExportResults results = processBackup(result, tmpDir, determinant); + ImportExportResults results = processRestoreAll(result, tmpDir, determinant); return results; } @@ -677,7 +678,8 @@ public class ImportExport { FileOutputStream fileoutputstream = null; try { byte[] buffer = new byte[BUFFER_SIZE]; - String targetFileName= tmpDir + entry.getName() + "-" + determinant +".csv"; + String entityName = StringUtils.substring(entry.getName(), 0, -4); + String targetFileName= String.format(TMP_BACKUP_FILE_MODEL, tmpDir, entityName, determinant); fileoutputstream = new FileOutputStream(targetFileName); int n; @@ -700,51 +702,57 @@ public class ImportExport { return result; } - protected ImportExportResults processBackup(ImportResult result, String tmpDir, String determinant) { + protected ImportExportResults processRestoreAll(ImportResult result, String tmpDir, String determinant) { ImportExportResults results = null; - InputStream entryBooksStream = null, transactionsStream = null, fiscalPeriodsStream = null, accountsStream = null, entriesStream = null, identityStream = null; if (result.getAllExceptionsByLine().isEmpty()) { - try { - entryBooksStream = new FileInputStream(tmpDir + EntryBook.class.getSimpleName() + "-" + determinant + ".csv"); - String entryBooksStreamString = IOUtils.toString(entryBooksStream); - IOUtils.closeQuietly(entryBooksStream); - // import - transactionsStream = new FileInputStream(tmpDir + FinancialTransaction.class.getSimpleName() + "-" + determinant + ".csv"); - String transactionsStreamString = IOUtils.toString(transactionsStream); - IOUtils.closeQuietly(transactionsStream); + String pathname = String.format(TMP_BACKUP_FILE_MODEL, tmpDir, EntryBook.class.getSimpleName(), determinant); + String entryBooksStreamString = extractFile(result, pathname); + + pathname = String.format(TMP_BACKUP_FILE_MODEL, tmpDir, FinancialTransaction.class.getSimpleName(), determinant); + String transactionsStreamString = extractFile(result, pathname); - accountsStream = new FileInputStream(tmpDir + Account.class.getSimpleName() + "-" + determinant + ".csv"); - String accountsStreamString = IOUtils.toString(accountsStream); - IOUtils.closeQuietly(accountsStream); + pathname = String.format(TMP_BACKUP_FILE_MODEL, tmpDir, Account.class.getSimpleName(), determinant); + String accountsStreamString = extractFile(result, pathname); - entriesStream = new FileInputStream(tmpDir + Entry.class.getSimpleName() + "-" + determinant + ".csv"); - String entriesStreamString = IOUtils.toString(entriesStream); - IOUtils.closeQuietly(entriesStream); + pathname = String.format(TMP_BACKUP_FILE_MODEL, tmpDir, Entry.class.getSimpleName(), determinant); + String entriesStreamString = extractFile(result, pathname); - fiscalPeriodsStream = new FileInputStream(tmpDir + FiscalPeriod.class.getSimpleName() + "-" + determinant + ".csv"); - String fiscalPeriodsStreamString = IOUtils.toString(fiscalPeriodsStream); - IOUtils.closeQuietly(fiscalPeriodsStream); + pathname = String.format(TMP_BACKUP_FILE_MODEL, tmpDir, FiscalPeriod.class.getSimpleName(), determinant); + String fiscalPeriodsStreamString = extractFile(result, pathname); - identityStream = new FileInputStream(tmpDir + Identity.class.getSimpleName() + "-" + determinant + ".csv"); - String identityStreamString = IOUtils.toString(identityStream); - IOUtils.closeQuietly(identityStream); + pathname = String.format(TMP_BACKUP_FILE_MODEL, tmpDir, Identity.class.getSimpleName(), determinant); + String identityStreamString = extractFile(result, pathname); - results = importService.importBackup(entryBooksStreamString, transactionsStreamString, fiscalPeriodsStreamString, accountsStreamString, entriesStreamString, identityStreamString); + try { + results = importService.importAll(entryBooksStreamString, transactionsStreamString, fiscalPeriodsStreamString, accountsStreamString, entriesStreamString, identityStreamString); } catch (Exception ex) { if(log.isInfoEnabled()) { log.info(ex); } result.addInitException(new ImportFileException(t("lima.import.error.extractFile"))); - } finally { - IOUtils.closeQuietly(entryBooksStream); - IOUtils.closeQuietly(transactionsStream); - IOUtils.closeQuietly(fiscalPeriodsStream); - IOUtils.closeQuietly(accountsStream); - IOUtils.closeQuietly(entriesStream); - IOUtils.closeQuietly(identityStream); } } return results; } + + private String extractFile(ImportResult result, String pathname){ + InputStream stream = null; + File file = new File(pathname); + String extractedStream = ""; + if (file.exists()) { + try { + stream = new FileInputStream(file); + extractedStream = IOUtils.toString(stream); + } catch (IOException ex) { + if(log.isInfoEnabled()) { + log.info(ex); + } + result.addInitException(new ImportFileException(t("lima.import.error.extractFile"))); + } finally { + IOUtils.closeQuietly(stream); + } + } + return extractedStream; + } } -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/1375-Ne_pas_interrompre_export in repository lima. See https://gitlab.nuiton.org/chorem/lima.git commit 125f89cd600a957ecf7344fe8175e594297ca859 Author: David Cossé <cosse@codelutin.com> Date: Fri Dec 23 15:19:00 2016 +0100 refs #1375 [ISO] refactoring --- .../src/test/java/org/chorem/lima/business/ImportExportServiceTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java b/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java index 80e4d95..31e219e 100644 --- a/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java +++ b/lima-business/src/test/java/org/chorem/lima/business/ImportExportServiceTest.java @@ -422,7 +422,7 @@ public class ImportExportServiceTest extends AbstractLimaTest { String identityStreamString = IOUtils.toString(identityStream); IOUtils.closeQuietly(identityStream); - results = importService.importBackup(entryBooksStreamString, transactionsStreamString, fiscalPeriodsStreamString, accountsStreamString, entriesStreamString, identityStreamString).getImportResults(); + results = importService.importAll(entryBooksStreamString, transactionsStreamString, fiscalPeriodsStreamString, accountsStreamString, entriesStreamString, identityStreamString).getImportResults(); } catch (Exception ex) { if(log.isInfoEnabled()) { -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
participants (1)
-
chorem.org scm