Introduce PostgreSQL and Subversion backups
[lgpl/argeo-commons.git] / server / runtime / org.argeo.server.core / src / main / java / org / argeo / server / backup / OsCallBackup.java
index 989c29a6872ddebda58f78fd307ff0459aac89a2..a7b6f1c2c405ff7a827044c4fc2aeb5a530b48ad 100644 (file)
@@ -28,6 +28,8 @@ public class OsCallBackup extends AbstractAtomicBackup {
        private Map<String, String> variables = new HashMap<String, String>();
        private Executor executor = new DefaultExecutor();
 
+       private Map<String, String> environment = new HashMap<String, String>();
+
        public OsCallBackup() {
        }
 
@@ -54,7 +56,7 @@ public class OsCallBackup extends AbstractAtomicBackup {
                        ExecuteStreamHandler streamHandler = new PumpStreamHandler(
                                        targetContent.getOutputStream(), errBos);
                        executor.setStreamHandler(streamHandler);
-                       executor.execute(commandLine);
+                       executor.execute(commandLine, environment);
                } catch (ExecuteException e) {
                        byte[] err = errBos.toByteArray();
                        String errStr = new String(err);
@@ -78,6 +80,14 @@ public class OsCallBackup extends AbstractAtomicBackup {
                return command;
        }
 
+       /**
+        * A reference to the environment variables that will be passed to the
+        * process. Empty by default.
+        */
+       protected Map<String, String> getEnvironment() {
+               return environment;
+       }
+
        protected Map<String, String> getVariables() {
                return variables;
        }