diff --git a/datastore_server/dist/etc/service.properties b/datastore_server/dist/etc/service.properties
index 492eb3353d0e07a0010f47cd05792e48dccb9ddd..8b6923932796afa24fa8cd4d4d33fd477f297c51 100644
--- a/datastore_server/dist/etc/service.properties
+++ b/datastore_server/dist/etc/service.properties
@@ -21,6 +21,9 @@ use-nio-selector-socket = false
 # Session timeout in minutes
 session-timeout = 720
 
+# The root directory for session workspace directories
+session-workspace-root-dir = data/sessionWorkspace
+
 #
 # Data set authorization cache
 #
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IPluginTaskInfoProvider.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IPluginTaskInfoProvider.java
new file mode 100644
index 0000000000000000000000000000000000000000..de73f4669403a1d45537ca661bf5bc3caf2708a1
--- /dev/null
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IPluginTaskInfoProvider.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2012 ETH Zuerich, CISD
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.systemsx.cisd.openbis.dss.generic.server.plugins.tasks;
+
+import java.io.File;
+
+import ch.systemsx.cisd.openbis.generic.shared.dto.DatastoreServiceDescriptions;
+
+/**
+ * Info provider for plugin tasks.
+ *
+ * @author Bernd Rinn
+ */
+public interface IPluginTaskInfoProvider
+{
+
+    /**
+     * Returns the root directory of the data store.
+     */
+    public File getStoreRoot();
+
+    /**
+     * Returns the root directory of session workspaces.
+     */
+    public File getSessionWorkspaceRootDir();
+
+    public PluginTaskProvider<IReportingPluginTask> getReportingPluginsProvider();
+
+    public PluginTaskProvider<IProcessingPluginTask> getProcessingPluginsProvider();
+
+    public ArchiverPluginFactory getArchiverPluginFactory();
+
+    public void logConfigurations();
+
+    public DatastoreServiceDescriptions getPluginTaskDescriptions();
+
+}
\ No newline at end of file
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/PluginTaskInfoProvider.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/PluginTaskInfoProvider.java
index ca03d064ae3471e0065dc7857054ef3622318632..88292cceb2b267ec23e9fbbf5f986aeb1682cf91 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/PluginTaskInfoProvider.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/PluginTaskInfoProvider.java
@@ -33,13 +33,13 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.DatastoreServiceDescriptions;
  * 
  * @author Tomasz Pylak
  */
-public class PluginTaskInfoProvider
+public class PluginTaskInfoProvider implements IPluginTaskInfoProvider
 {
     public static final String STOREROOT_DIR_KEY = "storeroot-dir";
 
     private static final String SESSION_WORKSPACE_ROOT_DIR_KEY = "session-workspace-root-dir";
 
-    private static final String SESSION_WORKSPACE_ROOT_DIR_DEFAULT = "sessionWorkspace";
+    private static final String SESSION_WORKSPACE_ROOT_DIR_DEFAULT = "data/sessionWorkspace";
 
     /** name of archiver properties section */
     @Private
@@ -56,7 +56,7 @@ public class PluginTaskInfoProvider
     private final File sessionWorkspaceRootDir;
 
     /** for external injections */
-    public static PluginTaskInfoProvider create()
+    public static IPluginTaskInfoProvider create()
     {
         IServletPropertiesManager servletPropertiesManager = DataStoreServer.getConfigParameters();
         Properties properties = DssPropertyParametersUtil.loadServiceProperties();
@@ -95,6 +95,7 @@ public class PluginTaskInfoProvider
     /**
      * Returns the root directory of the data store.
      */
+    @Override
     public final File getStoreRoot()
     {
         return storeRoot;
@@ -103,21 +104,25 @@ public class PluginTaskInfoProvider
     /**
      * Returns the root directory of session workspaces.
      */
+    @Override
     public File getSessionWorkspaceRootDir()
     {
         return sessionWorkspaceRootDir;
     }
 
+    @Override
     public PluginTaskProvider<IReportingPluginTask> getReportingPluginsProvider()
     {
         return reportingPlugins;
     }
 
+    @Override
     public PluginTaskProvider<IProcessingPluginTask> getProcessingPluginsProvider()
     {
         return processingPlugins;
     }
 
+    @Override
     public ArchiverPluginFactory getArchiverPluginFactory()
     {
         return archiverTaskFactory;
@@ -129,6 +134,7 @@ public class PluginTaskInfoProvider
         reportingPlugins.check(false);
     }
 
+    @Override
     public void logConfigurations()
     {
         processingPlugins.logConfigurations();
@@ -194,6 +200,7 @@ public class PluginTaskInfoProvider
                 sectionName, false);
     }
 
+    @Override
     public DatastoreServiceDescriptions getPluginTaskDescriptions()
     {
         return new DatastoreServiceDescriptions(reportingPlugins.getPluginDescriptions(),