Author: cziegeler
Date: Thu Apr 21 13:04:01 2005
New Revision: 164112

URL: http://svn.apache.org/viewcvs?rev=164112&view=rev
Log:
Remove the need for context object (where possible)
Reduce default logging output during junit tests

Modified:
    
cocoon/blocks/core/forms/trunk/java/org/apache/cocoon/forms/binding/MultiValueJXPathBinding.java
    
cocoon/blocks/supported/portal/trunk/java/org/apache/cocoon/portlet/CocoonPortlet.java
    cocoon/trunk/build.properties
    cocoon/trunk/src/java/org/apache/cocoon/Cocoon.java
    cocoon/trunk/src/java/org/apache/cocoon/bean/CocoonWrapper.java
    cocoon/trunk/src/java/org/apache/cocoon/core/Core.java
    cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java
    
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java
    cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java
    
cocoon/trunk/src/java/org/apache/cocoon/core/container/CoreServiceManager.java
    
cocoon/trunk/src/java/org/apache/cocoon/serialization/AbstractTextSerializer.java
    cocoon/trunk/src/test/org/apache/cocoon/CocoonTestCase.java
    cocoon/trunk/src/test/org/apache/cocoon/SitemapComponentTestCase.java
    
cocoon/trunk/src/test/org/apache/cocoon/core/container/ContainerTestCase.java

Modified: 
cocoon/blocks/core/forms/trunk/java/org/apache/cocoon/forms/binding/MultiValueJXPathBinding.java
URL: 
http://svn.apache.org/viewcvs/cocoon/blocks/core/forms/trunk/java/org/apache/cocoon/forms/binding/MultiValueJXPathBinding.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/blocks/core/forms/trunk/java/org/apache/cocoon/forms/binding/MultiValueJXPathBinding.java
 (original)
+++ 
cocoon/blocks/core/forms/trunk/java/org/apache/cocoon/forms/binding/MultiValueJXPathBinding.java
 Thu Apr 21 13:04:01 2005
@@ -15,7 +15,6 @@
  */
 package org.apache.cocoon.forms.binding;
 
-import java.util.Collection;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.Locale;
@@ -24,7 +23,6 @@
 import org.apache.cocoon.forms.datatype.convertor.Convertor;
 import org.apache.cocoon.forms.datatype.convertor.ConversionResult;
 import org.apache.cocoon.forms.formmodel.Widget;
-import org.apache.commons.jxpath.AbstractFactory;
 import org.apache.commons.jxpath.JXPathContext;
 import org.apache.commons.jxpath.Pointer;
 

Modified: 
cocoon/blocks/supported/portal/trunk/java/org/apache/cocoon/portlet/CocoonPortlet.java
URL: 
http://svn.apache.org/viewcvs/cocoon/blocks/supported/portal/trunk/java/org/apache/cocoon/portlet/CocoonPortlet.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/blocks/supported/portal/trunk/java/org/apache/cocoon/portlet/CocoonPortlet.java
 (original)
+++ 
cocoon/blocks/supported/portal/trunk/java/org/apache/cocoon/portlet/CocoonPortlet.java
 Thu Apr 21 13:04:01 2005
@@ -35,8 +35,6 @@
 import org.apache.cocoon.components.notification.DefaultNotifyingBuilder;
 import org.apache.cocoon.components.notification.Notifier;
 import org.apache.cocoon.components.notification.Notifying;
-import org.apache.cocoon.configuration.Settings;
-import org.apache.cocoon.core.Core;
 import org.apache.cocoon.environment.Environment;
 import org.apache.cocoon.environment.portlet.PortletContext;
 import org.apache.cocoon.environment.portlet.PortletEnvironment;
@@ -293,8 +291,6 @@
 
         this.portletContext = conf.getPortletContext();
         this.appContext.put(Constants.CONTEXT_ENVIRONMENT_CONTEXT, new 
PortletContext(this.portletContext));
-        // FIXME - add settings
-        appContext.put(Core.CONTEXT_SETTINGS, new Settings());
         this.portletContextPath = this.portletContext.getRealPath("/");
 
         // first init the work-directory for the logger.

Modified: cocoon/trunk/build.properties
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/build.properties?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/build.properties (original)
+++ cocoon/trunk/build.properties Thu Apr 21 13:04:01 2005
@@ -74,7 +74,7 @@
 
 junit.test.debugport=8000
 #junit.testcase=org.apache.cocoon.util.test.NetUtilsTestCase
-junit.test.loglevel=0
+junit.test.loglevel=1
 
 # ---- IDE 
---------------------------------------------------------------------
 

Modified: cocoon/trunk/src/java/org/apache/cocoon/Cocoon.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/Cocoon.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/Cocoon.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/Cocoon.java Thu Apr 21 13:04:01 2005
@@ -116,6 +116,9 @@
     /** An optional Avalon Component that is called before and after 
processing all requests. */
     protected RequestListener requestListener;
 
+    /** The Cocoon Core */
+    protected Core core;
+
     /**
      * Creates a new <code>Cocoon</code> instance.
      *
@@ -144,6 +147,7 @@
     public void service(ServiceManager manager)
     throws ServiceException {
         this.parentServiceManager = manager;
+        this.core = (Core)this.parentServiceManager.lookup(Core.ROLE);
     }
 
     /* (non-Javadoc)
@@ -152,17 +156,6 @@
     public void contextualize(Context context) throws ContextException {
         this.context = new ComponentContext(context);
         ((DefaultContext)this.context).makeReadOnly();
-
-        final Settings settings = Core.getSettings(this.context);
-        try {
-            URLSource urlSource = new URLSource();
-            urlSource.init(new URL(settings.getConfiguration()), null);
-            this.configurationFile = new DelayedRefreshSourceWrapper(urlSource,
-                                                                     
settings.getConfigurationReloadDelay());
-
-        } catch (IOException e) {
-            throw new ContextException("Could not open configuration file: " + 
settings.getConfiguration(), e);
-        }
     }
 
     /**
@@ -180,15 +173,27 @@
      * @see org.apache.avalon.framework.activity.Initializable#initialize()
      */
     public void initialize() throws Exception {
+        getLogger().debug("Initializing new Cocoon object.");
+        final Settings settings = this.core.getSettings();
+        try {
+            URLSource urlSource = new URLSource();
+            urlSource.init(new URL(settings.getConfiguration()), null);
+            this.configurationFile = new DelayedRefreshSourceWrapper(urlSource,
+                                                                     
settings.getConfigurationReloadDelay());
+
+        } catch (IOException e) {
+            throw new ConfigurationException(
+                    "Could not open configuration file: " + 
settings.getConfiguration(), e);
+        }
+
         this.serviceManager = new 
CocoonServiceManager(this.parentServiceManager);
         ContainerUtil.enableLogging(this.serviceManager, 
this.rootLogger.getChildLogger("manager"));
         ContainerUtil.contextualize(this.serviceManager, this.context);
-        getLogger().debug("Initializing new Cocoon object.");
 
         // Log the System Properties.
         dumpSystemProperties();
 
-        configure();
+        this.configure();
 
         // add the logger manager to the component locator
 
@@ -236,7 +241,7 @@
     private void configure() throws Exception {
         InputSource is = SourceUtil.getInputSource(this.configurationFile);
 
-        final Settings settings = Core.getSettings(context);
+        final Settings settings = this.core.getSettings();
         ConfigurationBuilder builder = new ConfigurationBuilder(settings);
         Configuration conf = builder.build(is);
 

Modified: cocoon/trunk/src/java/org/apache/cocoon/bean/CocoonWrapper.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/bean/CocoonWrapper.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/bean/CocoonWrapper.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/bean/CocoonWrapper.java Thu Apr 21 
13:04:01 2005
@@ -165,8 +165,6 @@
             appContext.put(Constants.CONTEXT_CONFIG_URL, conf.toURL());
             appContext.put(Constants.CONTEXT_DEFAULT_ENCODING, "ISO-8859-1");
             appContext.put(ContextHelper.CONTEXT_ROOT_URL, 
this.context.toURL());
-            // FIXME - add settings
-            appContext.put(Core.CONTEXT_SETTINGS, new Settings());
 
             loadClasses(classList);
 

Modified: cocoon/trunk/src/java/org/apache/cocoon/core/Core.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/Core.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/Core.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/Core.java Thu Apr 21 13:04:01 
2005
@@ -25,7 +25,6 @@
 import org.apache.avalon.framework.CascadingRuntimeException;
 import org.apache.avalon.framework.context.Context;
 import org.apache.avalon.framework.context.ContextException;
-import org.apache.avalon.framework.context.Contextualizable;
 import org.apache.cocoon.Constants;
 import org.apache.cocoon.components.ContextHelper;
 import org.apache.cocoon.configuration.Settings;
@@ -40,17 +39,11 @@
  * @version SVN $Id$
  * @since 2.2
  */
-public class Core
-    implements Contextualizable {
+public class Core {
 
     /** The key to lookup the component. */
     public static String ROLE = Core.class.getName();
 
-    /** Application <code>Context</code> Key for the settings. Please don't
-     * use this constant to lookup the settings object. Lookup the core
-     * component and use [EMAIL PROTECTED] #getSettings()} instead. */
-    public static final String CONTEXT_SETTINGS = "settings";
-
     /**
      * The cleanup threads that are invoked after the processing of a
      * request is finished.
@@ -58,7 +51,7 @@
     private static final ThreadLocal cleanup = new ThreadLocal();
 
     /** The component context. */
-    private Context context;
+    private final Context context;
 
     private final Settings settings;
     
@@ -67,13 +60,6 @@
         this.context = c;
     }
 
-    /* (non-Javadoc)
-     * @see 
org.apache.avalon.framework.context.Contextualizable#contextualize(org.apache.avalon.framework.context.Context)
-     */
-    public void contextualize(Context context) throws ContextException {
-        this.context = context;
-    }
-
     public static void addCleanupTask(CleanupTask task) {
         List l = (List)cleanup.get();
         if ( l == null ) {
@@ -160,22 +146,4 @@
             throw new CascadingRuntimeException("Unable to get the cache 
directory from the context.", ce);
         }        
     }
-
-    /**
-     * Return the current settings.
-     * Please don't use this method directly, look up the Core component
-     * and use [EMAIL PROTECTED] #getSettings()} instead.
-     * @param context The component context.
-     * @return The settings.
-     * FIXME - will be removed before the release
-     */
-    public static final Settings getSettings(Context context) {
-        // the settings object is always present
-        try {
-            return (Settings)context.get(CONTEXT_SETTINGS);
-        } catch (ContextException ce) {
-            throw new CascadingRuntimeException("Unable to get the settings 
object from the context.", ce);
-        }
-    }
-    
 }

Modified: cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java Thu Apr 21 
13:04:01 2005
@@ -107,7 +107,6 @@
 
         // create settings
         this.settings = this.createSettings();
-        this.appContext.put(Core.CONTEXT_SETTINGS, this.settings);
 
         if (this.settings.isInitClassloader()) {
             // Force context classloader so that JAXP can work correctly

Modified: 
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java
 (original)
+++ 
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentEnvironment.java
 Thu Apr 21 13:04:01 2005
@@ -22,6 +22,7 @@
 import org.apache.avalon.framework.configuration.Configuration;
 import org.apache.avalon.framework.context.Context;
 import org.apache.avalon.framework.logger.Logger;
+import org.apache.avalon.framework.service.ServiceException;
 import org.apache.avalon.framework.service.ServiceManager;
 import org.apache.cocoon.components.ComponentInfo;
 import org.apache.cocoon.configuration.ConfigurationBuilder;
@@ -42,7 +43,8 @@
     public final RoleManager roleManager;
     public final LoggerManager loggerManager;
     private final ClassLoader classLoader;
-    
+    private Core core;
+
     public ComponentEnvironment(ClassLoader classLoader, Logger logger, 
RoleManager roleManager, LoggerManager loggerManager,
             Context context, ServiceManager serviceManager) {
 
@@ -60,6 +62,11 @@
         this.loggerManager = loggerManager;
         this.context = context;
         this.serviceManager = serviceManager;
+        try {
+            this.core = (Core)this.serviceManager.lookup(Core.ROLE);
+        } catch (ServiceException ignore) {
+            // this can never happen
+        }
     }
 
     public Class loadClass(String name) throws ClassNotFoundException {
@@ -73,7 +80,7 @@
         ComponentInfo ci = null;
         final InputStream is = 
this.classLoader.getResourceAsStream(bu.toString());
         if ( is != null ) {
-            final Settings settings = Core.getSettings(this.context);
+            final Settings settings = this.core.getSettings();
             final ConfigurationBuilder cb = new ConfigurationBuilder(settings);
             final Configuration conf = cb.build(is);
             ci = new ComponentInfo();

Modified: 
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java 
(original)
+++ 
cocoon/trunk/src/java/org/apache/cocoon/core/container/ComponentFactory.java 
Thu Apr 21 13:04:01 2005
@@ -23,7 +23,10 @@
 import org.apache.avalon.framework.logger.Logger;
 import org.apache.avalon.framework.parameters.Parameterizable;
 import org.apache.avalon.framework.parameters.Parameters;
+import org.apache.avalon.framework.service.ServiceException;
 import org.apache.cocoon.components.ComponentInfo;
+import org.apache.cocoon.configuration.Settings;
+import org.apache.cocoon.core.Core;
 
 /**
  * Factory for Avalon based components.
@@ -50,6 +53,8 @@
     protected final Method destroyMethod;
     protected final Method poolInMethod;
     protected final Method poolOutMethod;
+    protected Method configureSettingsMethod;
+    protected Core core;
 
     /**
      * Construct a new component factory for the specified component.
@@ -61,6 +66,11 @@
     public ComponentFactory( final ComponentEnvironment environment,
                              final ComponentInfo info) 
     throws Exception {
+        try {
+            this.core = (Core)environment.serviceManager.lookup(Core.ROLE);
+        } catch (ServiceException ignore) {
+            // this can never happen
+        }
         this.environment = environment;
         this.serviceInfo = info;
         
@@ -108,6 +118,11 @@
         } else {
             this.poolOutMethod = null;
         }
+        try {
+            this.configureSettingsMethod = 
this.serviceClass.getMethod("configure", new Class[] {Settings.class});
+        } catch (NoSuchMethodException ignore) {
+            this.configureSettingsMethod = null;
+        }
     }
     
     /**
@@ -135,6 +150,9 @@
         ContainerUtil.enableLogging(component, this.componentLogger);
         ContainerUtil.contextualize( component, this.environment.context );
         ContainerUtil.service( component, this.environment.serviceManager );
+        if ( this.configureSettingsMethod != null ) {
+            this.configureSettingsMethod.invoke( component, new Object[] 
{this.core.getSettings()});
+        }
         ContainerUtil.configure( component, 
this.serviceInfo.getConfiguration() );
 
         if( component instanceof Parameterizable ) {

Modified: 
cocoon/trunk/src/java/org/apache/cocoon/core/container/CoreServiceManager.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/container/CoreServiceManager.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/trunk/src/java/org/apache/cocoon/core/container/CoreServiceManager.java 
(original)
+++ 
cocoon/trunk/src/java/org/apache/cocoon/core/container/CoreServiceManager.java 
Thu Apr 21 13:04:01 2005
@@ -133,6 +133,13 @@
         // Always create a role manager, it can be filled several times either 
through
         // the root "roles" attribute or through loading of includes
         this.roleManager = new RoleManager(parentRoleManager);
+        
+        // get settings
+        try {
+            this.settings = ((Core)parent.lookup(Core.ROLE)).getSettings();
+        } catch (ServiceException ignore) {
+            // this can never happen!
+        }
     }
 
     
//=============================================================================================
@@ -152,7 +159,6 @@
      */
     public void contextualize( final Context context ) {
         this.context = context;
-        this.settings = Core.getSettings(context);
     }
 
     /**
@@ -735,8 +741,7 @@
                 // load it and store it in the read set
                 Configuration includeConfig = null;
                 try {
-                    final Settings settings = Core.getSettings(context);
-                    ConfigurationBuilder builder = new 
ConfigurationBuilder(settings);
+                    ConfigurationBuilder builder = new 
ConfigurationBuilder(this.settings);
                     includeConfig = builder.build(src.getInputStream(), uri);
                 } catch (ConfigurationException ce) {
                     throw ce;

Modified: 
cocoon/trunk/src/java/org/apache/cocoon/serialization/AbstractTextSerializer.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/serialization/AbstractTextSerializer.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/trunk/src/java/org/apache/cocoon/serialization/AbstractTextSerializer.java
 (original)
+++ 
cocoon/trunk/src/java/org/apache/cocoon/serialization/AbstractTextSerializer.java
 Thu Apr 21 13:04:01 2005
@@ -18,13 +18,9 @@
 import org.apache.avalon.framework.configuration.Configurable;
 import org.apache.avalon.framework.configuration.Configuration;
 import org.apache.avalon.framework.configuration.ConfigurationException;
-import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.context.ContextException;
-import org.apache.avalon.framework.context.Contextualizable;
 import org.apache.cocoon.Constants;
 import org.apache.cocoon.caching.CacheableProcessingComponent;
 import org.apache.cocoon.configuration.Settings;
-import org.apache.cocoon.core.Core;
 import org.apache.cocoon.util.ClassUtils;
 import org.apache.cocoon.util.TraxErrorHandler;
 import org.apache.cocoon.xml.AbstractXMLPipe;
@@ -60,7 +56,7 @@
  * @version CVS $Id$
  */
 public abstract class AbstractTextSerializer extends AbstractSerializer
-        implements Configurable, CacheableProcessingComponent, 
Contextualizable {
+        implements Configurable, CacheableProcessingComponent {
 
     /**
      * The trax <code>TransformerFactory</code> used by this serializer.
@@ -166,15 +162,11 @@
         //  }
     }
 
-    /**
-     * Uses the context to retrieve a default encoding for the serializers.
-     */
-    public void contextualize(Context context) throws ContextException {
-        final Settings s = Core.getSettings(context);
-        String defaultEncoding  = s.getFormEncoding();
+    public void configure(Settings settings) {
+        String defaultEncoding  = settings.getFormEncoding();
         if (defaultEncoding != null) {
             this.format.setProperty(OutputKeys.ENCODING, defaultEncoding);
-        }
+        }        
     }
 
     /**

Modified: cocoon/trunk/src/test/org/apache/cocoon/CocoonTestCase.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/test/org/apache/cocoon/CocoonTestCase.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/src/test/org/apache/cocoon/CocoonTestCase.java (original)
+++ cocoon/trunk/src/test/org/apache/cocoon/CocoonTestCase.java Thu Apr 21 
13:04:01 2005
@@ -20,8 +20,6 @@
 import org.apache.avalon.framework.configuration.DefaultConfiguration;
 import org.apache.avalon.framework.context.DefaultContext;
 import org.apache.avalon.framework.service.ServiceException;
-import org.apache.cocoon.configuration.Settings;
-import org.apache.cocoon.core.Core;
 import org.apache.cocoon.core.container.CoreServiceManager;
 import org.apache.cocoon.core.container.StandaloneServiceSelector;
 import org.apache.cocoon.core.container.ContainerTestCase;
@@ -36,10 +34,6 @@
  * @version CVS $Id: SitemapComponentTestCase.java 55427 2004-10-24 11:38:37Z 
cziegeler $
  */
 public abstract class CocoonTestCase extends ContainerTestCase {
-
-    protected void addContext(DefaultContext context) {
-        context.put(Core.CONTEXT_SETTINGS, new Settings());
-    }
 
     /* (non-Javadoc)
      * @see 
org.apache.cocoon.core.container.ContainerTestCase#addComponents(org.apache.cocoon.core.container.CocoonServiceManager)

Modified: cocoon/trunk/src/test/org/apache/cocoon/SitemapComponentTestCase.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/test/org/apache/cocoon/SitemapComponentTestCase.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- cocoon/trunk/src/test/org/apache/cocoon/SitemapComponentTestCase.java 
(original)
+++ cocoon/trunk/src/test/org/apache/cocoon/SitemapComponentTestCase.java Thu 
Apr 21 13:04:01 2005
@@ -40,8 +40,6 @@
 import org.apache.cocoon.components.flow.FlowHelper;
 import org.apache.cocoon.components.flow.Interpreter;
 import org.apache.cocoon.components.source.SourceResolverAdapter;
-import org.apache.cocoon.configuration.Settings;
-import org.apache.cocoon.core.Core;
 import org.apache.cocoon.core.container.CoreServiceManager;
 import org.apache.cocoon.core.container.StandaloneServiceSelector;
 import org.apache.cocoon.environment.ObjectModelHelper;
@@ -108,7 +106,6 @@
         context.put(ContextHelper.CONTEXT_REQUEST_OBJECT, request);
         context.put(ContextHelper.CONTEXT_RESPONSE_OBJECT, response);
         context.put(ContextHelper.CONTEXT_OBJECT_MODEL, objectmodel);
-        context.put(Core.CONTEXT_SETTINGS, new Settings());
     }
 
     /* (non-Javadoc)

Modified: 
cocoon/trunk/src/test/org/apache/cocoon/core/container/ContainerTestCase.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/test/org/apache/cocoon/core/container/ContainerTestCase.java?rev=164112&r1=164111&r2=164112&view=diff
==============================================================================
--- 
cocoon/trunk/src/test/org/apache/cocoon/core/container/ContainerTestCase.java 
(original)
+++ 
cocoon/trunk/src/test/org/apache/cocoon/core/container/ContainerTestCase.java 
Thu Apr 21 13:04:01 2005
@@ -36,6 +36,9 @@
 import org.apache.avalon.framework.parameters.Parameters;
 import org.apache.avalon.framework.service.ServiceException;
 import org.apache.avalon.framework.service.ServiceManager;
+import org.apache.cocoon.configuration.Settings;
+import org.apache.cocoon.core.Core;
+import org.apache.cocoon.core.CoreUtil;
 import org.apache.cocoon.util.log.DeprecationLogger;
 
 /**
@@ -296,8 +299,12 @@
         roleManager.enableLogging( this.getLogger() );
         roleManager.configure( confRM );
 
+        // Set up root manager for Core
+        Core core = new Core(new Settings(), this.context);
+        CoreUtil.RootServiceManager rsm = new 
CoreUtil.RootServiceManager(null, core);
+ 
         // Set up the ComponentLocator
-        CoreServiceManager ecManager = new CoreServiceManager(null);
+        CoreServiceManager ecManager = new CoreServiceManager(rsm);
         ecManager.enableLogging( this.getLogger() );
         ecManager.contextualize( this.context );
         ecManager.setRoleManager( roleManager );


Reply via email to