This is an automated email from the git hooks/post-receive script. New commit to branch develop-4.x in repository tutti. See http://git.codelutin.com/tutti.git commit 50c5b7e2f620bdcf732a755803c83498e6aefe6e Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 13 15:53:18 2016 +0100 A la fermeture de l'application, on effectue une sauvegarde de la base locale --- .../java/fr/ird/observe/ObserveApplicationContext.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/observe-business/src/main/java/fr/ird/observe/ObserveApplicationContext.java b/observe-business/src/main/java/fr/ird/observe/ObserveApplicationContext.java index ee0f6de..a93612d 100644 --- a/observe-business/src/main/java/fr/ird/observe/ObserveApplicationContext.java +++ b/observe-business/src/main/java/fr/ird/observe/ObserveApplicationContext.java @@ -24,6 +24,7 @@ package fr.ird.observe; import fr.ird.observe.db.DataContext; import fr.ird.observe.db.DataSource; import fr.ird.observe.db.DataSourceFactory; +import fr.ird.observe.db.impl.H2DataSource; import fr.ird.observe.entities.constants.ReferenceLocale; import fr.ird.observe.gps.GPSService; import fr.ird.observe.validation.ObserveValidator; @@ -35,6 +36,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.decorator.Decorator; +import java.io.File; import java.util.Locale; /** @@ -207,8 +209,21 @@ public class ObserveApplicationContext extends DefaultApplicationContext { } // fermeture du context de données - if (getDataSource() != null) { + DataSource dataSource = getDataSource(); + if (dataSource != null) { + setDataSource(null); + + if (dataSource.isOpen() && dataSource instanceof H2DataSource) { + + // On effectue une sauvegarde de la base locale (voir #7866) + + File backupFile = getConfig().newLocalDataSourceBackupFile(); + + log.info(String.format("Sauvegarde de la base locale : %s", backupFile)); + dataSource.storeDB(backupFile); + } + } getValidationContext().closeDataSource(); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.