Author: lwaterman
Date: Wed Sep 13 22:03:13 2006
New Revision: 443233

URL: http://svn.apache.org/viewvc?view=rev&rev=443233
Log:
Enable injection of DeploymentManager implementation.
Supports unit tests that require a transient DeploymentManager.
See [ JIRA ODE-9 ]

Modified:
    
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java

Modified: 
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java?view=diff&rev=443233&r1=443232&r2=443233
==============================================================================
--- 
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
 (original)
+++ 
incubator/ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelServerImpl.java
 Wed Sep 13 22:03:13 2006
@@ -105,7 +105,7 @@
     private Map<QName, DeploymentUnitImpl> _deploymentUnits = new 
HashMap<QName, DeploymentUnitImpl>();
 
     /** Object that keeps track (persistently) of the deployment units */
-    private DeploymentManager _deploymentManager;
+    private DeploymentManager _deploymentManager = null;
 
     private ThreadLocal<Boolean> _associated = new ThreadLocal<Boolean>() {
         public Boolean initialValue() {
@@ -398,7 +398,7 @@
             }
 
             _db = new BpelDatabase(_contexts.dao, _contexts.scheduler);
-            _deploymentManager = new DeploymentManagerImpl(new 
File(_deployDir, "ode-deployed.dat"));
+            if (_deploymentManager == null ) _deploymentManager = new 
DeploymentManagerImpl(new File(_deployDir, "ode-deployed.dat"));
             _initialized = true;
         } finally {
             _mngmtLock.writeLock().unlock();
@@ -826,6 +826,17 @@
                 __log.error(errmsg, ex);
             }
 
+    }
+    
+    /**
+     * Inject a DeploymentManager implementation. If an implementation
+     * is not injected a default File based implementation is
+     * used. 
+     * 
+     * @param dm a DeploymentManager instance
+     */
+    public void setDeploymentManager(DeploymentManager dm) {
+       _deploymentManager = dm;
     }
 
 }


Reply via email to