Title: [912] trunk/core/src/main/java/org/servicemix/jbi/container/EnvironmentContext.java: SM-114: javax.jbi.JBIException thrown if jbiRootDir is not a directory or
Revision
912
Author
gastaldi
Date
2005-11-23 16:04:42 -0500 (Wed, 23 Nov 2005)

Log Message

SM-114: javax.jbi.JBIException thrown if jbiRootDir is not a directory or 
could not be created.

Modified Paths

Diff

Modified: trunk/core/src/main/java/org/servicemix/jbi/container/EnvironmentContext.java (911 => 912)

--- trunk/core/src/main/java/org/servicemix/jbi/container/EnvironmentContext.java	2005-11-23 20:29:52 UTC (rev 911)
+++ trunk/core/src/main/java/org/servicemix/jbi/container/EnvironmentContext.java	2005-11-23 21:04:42 UTC (rev 912)
@@ -151,10 +151,19 @@
      * 
      * @param container
      * @param rootDirPath
+     * @exception javax.jbi.JBIException if the root directory informed could not be created or it is not a directory
      */
     public void init(JBIContainer container, String rootDirPath) throws JBIException {
         this.container = container;
-        jbiRootDir = new File(rootDirPath + File.separator + container.getName());
+        jbiRootDir = new File(rootDirPath, container.getName());
+        if (!jbiRootDir.exists()) {
+            log.warn("Directory does not exist: " + jbiRootDir.getAbsolutePath());
+            if (!jbiRootDir.mkdir()) {
+            	throw new JBIException("Directory could not be created: "+jbiRootDir.getAbsolutePath());
+            }
+        } else if (!jbiRootDir.isDirectory()) {
+        	throw new JBIException("Not a directory: " + jbiRootDir.getAbsolutePath());
+        }         
         buildDirectoryStructure();
         container.getManagementContext().registerSystemService(this, LifeCycleMBean.class);
     }

Reply via email to