You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by vg...@apache.org on 2007/10/19 06:19:31 UTC
svn commit: r586258 [2/3] - in /cocoon/trunk/blocks:
cocoon-apples/cocoon-apples-impl/src/main/java/org/apache/cocoon/components/flow/apples/
cocoon-flowscript/cocoon-flowscript-impl/src/main/java/org/apache/cocoon/components/flow/javascript/
cocoon-fl...
Modified: cocoon/trunk/blocks/cocoon-taglib/cocoon-taglib-impl/src/main/java/org/apache/cocoon/transformation/TagTransformer.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-taglib/cocoon-taglib-impl/src/main/java/org/apache/cocoon/transformation/TagTransformer.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-taglib/cocoon-taglib-impl/src/main/java/org/apache/cocoon/transformation/TagTransformer.java (original)
+++ cocoon/trunk/blocks/cocoon-taglib/cocoon-taglib-impl/src/main/java/org/apache/cocoon/transformation/TagTransformer.java Thu Oct 18 21:19:27 2007
@@ -61,9 +61,9 @@
*
* @version $Id$
*/
-public class TagTransformer
- extends AbstractXMLProducer
- implements Transformer, Serviceable, Configurable, Disposable, Recyclable {
+public class TagTransformer extends AbstractXMLProducer
+ implements Transformer, Serviceable, Configurable,
+ Disposable, Recyclable {
private int recordingLevel;
private int skipLevel;
@@ -182,7 +182,7 @@
}
if (!tagSelectorStack.isEmpty()) {
- getLogger().fatalError("recycle: internal Error, tagSelectorStack not empty");
+ getLogger().fatal("recycle: internal Error, tagSelectorStack not empty");
tagSelectorStack.clear();
}
@@ -314,7 +314,7 @@
Tag tag = null;
if (namespaceURI != null && namespaceURI.length() > 0) {
// Try to find Tag corresponding to this element
- ServiceSelector tagSelector = null;
+ ServiceSelector tagSelector;
try {
tagSelector = (ServiceSelector) tagNamespaceSelector.select(namespaceURI);
tagSelectorStack.push(tagSelector);
@@ -501,7 +501,7 @@
if (tag instanceof XMLProducer) {
XMLConsumer tagConsumer;
if (transformerSelector != null) {
- Transformer tagTransformer = null;
+ Transformer tagTransformer;
try {
// Add additional (Tag)Transformer to the output of the Tag
tagTransformer = (Transformer) transformerSelector.select(transformerHint);
Modified: cocoon/trunk/blocks/cocoon-web3/cocoon-web3-impl/src/main/java/org/apache/cocoon/components/web3/impl/Web3DataSourceSelectorImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-web3/cocoon-web3-impl/src/main/java/org/apache/cocoon/components/web3/impl/Web3DataSourceSelectorImpl.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-web3/cocoon-web3-impl/src/main/java/org/apache/cocoon/components/web3/impl/Web3DataSourceSelectorImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-web3/cocoon-web3-impl/src/main/java/org/apache/cocoon/components/web3/impl/Web3DataSourceSelectorImpl.java Thu Oct 18 21:19:27 2007
@@ -33,7 +33,6 @@
import org.apache.cocoon.components.web3.Web3DataSource;
import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.util.ClassUtils;
-import org.apache.cocoon.util.avalon.CLLoggerWrapper;
import EDU.oswego.cs.dl.util.concurrent.Mutex;
@@ -112,7 +111,7 @@
true,
ClassUtils.getClassLoader());
pool = (Web3DataSource) theClass.newInstance();
- LifecycleHelper.setupComponent(pool, new CLLoggerWrapper(getLogger()), null, this.manager, c);
+ LifecycleHelper.setupComponent(pool, getLogger(), null, this.manager, c);
Web3DataSourceSelectorImpl.pools.put(obj, pool);
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/acting/ServerPagesAction.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/acting/ServerPagesAction.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/acting/ServerPagesAction.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/acting/ServerPagesAction.java Thu Oct 18 21:19:27 2007
@@ -90,8 +90,7 @@
try {
this.generatorHandler = AbstractComponentHandler.getComponentHandler(
ServerPagesGenerator.class,
- this.getLogger(),
- null, // Context
+ null, /* context */
this.manager,
conf
);
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/classloader/RepositoryClassLoader.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/classloader/RepositoryClassLoader.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/classloader/RepositoryClassLoader.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/classloader/RepositoryClassLoader.java Thu Oct 18 21:19:27 2007
@@ -16,12 +16,6 @@
*/
package org.apache.cocoon.components.classloader;
-import org.apache.avalon.framework.logger.LogEnabled;
-import org.apache.avalon.framework.logger.Logger;
-
-import org.apache.cocoon.CascadingIOException;
-import org.apache.cocoon.util.ClassUtils;
-
import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
@@ -31,6 +25,12 @@
import java.util.Iterator;
import java.util.Vector;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import org.apache.cocoon.CascadingIOException;
+import org.apache.cocoon.util.ClassUtils;
+
/**
* A class loader with a growable list of path search directories.
* BL: Changed to extend URLClassLoader for both maintenance and
@@ -39,13 +39,12 @@
*
* @version $Id$
*/
-public class RepositoryClassLoader extends URLClassLoader
- implements LogEnabled {
+public class RepositoryClassLoader extends URLClassLoader {
/**
* The logger
*/
- protected Logger log;
+ protected final Log log = LogFactory.getLog(getClass());
/**
* Create an empty new class loader.
@@ -91,17 +90,6 @@
} catch (IOException ioe) {
log.error("Repository could not be added", ioe);
}
- }
- }
-
- /**
- * Provide component with a logger.
- *
- * @param logger the logger
- */
- public void enableLogging(Logger logger) {
- if (this.log == null) {
- this.log = logger;
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/GeneratorSelector.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/GeneratorSelector.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/GeneratorSelector.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/GeneratorSelector.java Thu Oct 18 21:19:27 2007
@@ -26,14 +26,15 @@
import org.apache.avalon.framework.context.Context;
import org.apache.avalon.framework.context.Contextualizable;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.avalon.framework.thread.ThreadSafe;
+
import org.apache.cocoon.components.classloader.ClassLoaderManager;
import org.apache.cocoon.components.language.programming.Program;
import org.apache.cocoon.configuration.Settings;
+import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.xsp.handler.AbstractComponentHandler;
import org.apache.cocoon.xsp.handler.ComponentHandler;
@@ -43,7 +44,8 @@
*
* @version $Id$
*/
-public class GeneratorSelector extends AbstractLogEnabled implements ThreadSafe, Contextualizable, Serviceable {
+public class GeneratorSelector extends AbstractLogEnabled
+ implements ThreadSafe, Contextualizable, Serviceable {
public static final String ROLE = "org.apache.cocoon.components.language.generator.ServerPages";
@@ -58,7 +60,8 @@
protected final Map componentHandlers = Collections.synchronizedMap(new HashMap());
protected ClassLoaderManager classManager;
-
+
+
public void contextualize(Context context) {
this.context = context;
}
@@ -68,7 +71,7 @@
this.classManager = (ClassLoaderManager) manager.lookup(ClassLoaderManager.ROLE);
- final Settings settings = (Settings)manager.lookup(Settings.ROLE);
+ final Settings settings = (Settings) manager.lookup(Settings.ROLE);
try {
this.classManager.addDirectory(new File(settings.getWorkDirectory()));
} catch (Exception e) {
@@ -111,7 +114,7 @@
throws Exception {
try {
final ComponentHandler handler =
- generator.getHandler(newManager, this.context );
+ generator.getHandler(newManager, this.context);
handler.initialize();
this.componentHandlers.put(hint, handler);
if (getLogger().isDebugEnabled()) {
@@ -144,10 +147,10 @@
Iterator keys = this.componentHandlers.keySet().iterator();
List keyList = new ArrayList();
- while(keys.hasNext()) {
+ while (keys.hasNext()) {
Object key = keys.next();
AbstractComponentHandler handler =
- (AbstractComponentHandler)this.componentHandlers.get(key);
+ (AbstractComponentHandler) this.componentHandlers.get(key);
handler.dispose();
@@ -155,8 +158,7 @@
}
keys = keyList.iterator();
-
- while(keys.hasNext()) {
+ while (keys.hasNext()) {
this.componentHandlers.remove(keys.next());
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/ProgramGeneratorImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/ProgramGeneratorImpl.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/ProgramGeneratorImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/generator/ProgramGeneratorImpl.java Thu Oct 18 21:19:27 2007
@@ -16,11 +16,16 @@
*/
package org.apache.cocoon.components.language.generator;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.Writer;
+import java.net.MalformedURLException;
+
import org.apache.avalon.framework.activity.Disposable;
import org.apache.avalon.framework.context.Context;
import org.apache.avalon.framework.context.ContextException;
import org.apache.avalon.framework.context.Contextualizable;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.avalon.framework.parameters.Parameterizable;
import org.apache.avalon.framework.parameters.Parameters;
@@ -29,6 +34,8 @@
import org.apache.avalon.framework.service.ServiceSelector;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.avalon.framework.thread.ThreadSafe;
+import org.apache.excalibur.source.Source;
+
import org.apache.cocoon.Constants;
import org.apache.cocoon.ProcessingException;
import org.apache.cocoon.components.language.LanguageException;
@@ -38,14 +45,8 @@
import org.apache.cocoon.components.language.programming.ProgrammingLanguage;
import org.apache.cocoon.configuration.Settings;
import org.apache.cocoon.environment.SourceResolver;
+import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.util.IOUtils;
-import org.apache.excalibur.source.Source;
-
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.Writer;
-import java.net.MalformedURLException;
/**
* The default implementation of <code>ProgramGenerator</code>
@@ -53,8 +54,8 @@
* @version $Id$
*/
public class ProgramGeneratorImpl extends AbstractLogEnabled
- implements ProgramGenerator, Contextualizable, Serviceable, Parameterizable,
- Disposable, ThreadSafe {
+ implements ProgramGenerator, Contextualizable, Serviceable,
+ Parameterizable, Disposable, ThreadSafe {
/** The auto-reloading option */
protected boolean autoReload = true;
@@ -379,13 +380,13 @@
String normalizedName,
MarkupLanguage markupLanguage,
ProgrammingLanguage programmingLanguage)
- throws Exception {
-
- CompiledComponent programInstance = null;
+ throws Exception {
+ CompiledComponent programInstance;
try {
return (CompiledComponent) this.cache.select(normalizedName);
} catch (Exception e) {
+ // Continue if not in cache
}
try {
@@ -472,7 +473,7 @@
fw.write(string);
fw.flush();
} finally {
- if (fw != null) fw.close();
+ fw.close();
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/AbstractMarkupLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/AbstractMarkupLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/AbstractMarkupLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/AbstractMarkupLanguage.java Thu Oct 18 21:19:27 2007
@@ -16,39 +16,38 @@
*/
package org.apache.cocoon.components.language.markup;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.avalon.excalibur.pool.Recyclable;
import org.apache.avalon.framework.activity.Disposable;
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.logger.AbstractLogEnabled;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
-
-import org.apache.avalon.excalibur.pool.Recyclable;
import org.apache.excalibur.source.Source;
import org.apache.excalibur.source.SourceException;
import org.apache.excalibur.source.SourceResolver;
+import org.apache.excalibur.store.Store;
import org.apache.cocoon.ProcessingException;
-import org.apache.cocoon.xml.AbstractXMLPipe;
import org.apache.cocoon.components.language.programming.ProgrammingLanguage;
import org.apache.cocoon.components.source.SourceUtil;
-import org.apache.excalibur.store.Store;
+import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.util.HashMap;
+import org.apache.cocoon.xml.AbstractXMLPipe;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
/**
* Base implementation of <code>MarkupLanguage</code>. This class uses
* logicsheets as the only means of code generation. Code generation
@@ -199,8 +198,6 @@
resolver, getLogicsheetFilter());
}
- logicsheet.enableLogging(getLogger());
-
String logicsheetName = logicsheet.getSystemId();
logicsheetCache.store(CACHE_PREFIX + logicsheetName, logicsheet);
@@ -378,7 +375,6 @@
// Create code generator
LogicsheetCodeGenerator codeGenerator = new LogicsheetCodeGenerator();
- codeGenerator.enableLogging(getLogger());
codeGenerator.initialize();
// Set the transformer chain builder filter
TransformerChainBuilderFilter tranBuilder =
@@ -395,7 +391,7 @@
* @param codeGenerator The code generator
*/
protected void addLogicsheetsToGenerator(LogicsheetCodeGenerator codeGenerator)
- throws MalformedURLException, IOException, SAXException, ProcessingException {
+ throws MalformedURLException, IOException, SAXException, ProcessingException {
if (codeGenerator == null) {
getLogger().debug("This should never happen: codeGenerator is null");
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/CocoonMarkupLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/CocoonMarkupLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/CocoonMarkupLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/CocoonMarkupLanguage.java Thu Oct 18 21:19:27 2007
@@ -16,7 +16,15 @@
*/
package org.apache.cocoon.components.language.markup;
-import org.apache.avalon.framework.logger.Logger;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.commons.logging.Log;
import org.apache.cocoon.ProcessingException;
import org.apache.cocoon.components.language.programming.ProgrammingLanguage;
@@ -30,14 +38,6 @@
import org.xml.sax.ext.LexicalHandler;
import org.xml.sax.helpers.AttributesImpl;
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
/**
* Base implementation of <code>MarkupLanguage</code>. This class uses
* logicsheets as the only means of code generation. Code generation
@@ -84,7 +84,7 @@
AbstractXMLPipe filter,
ProgrammingLanguage language) {
PreProcessFilter prefilter = new PreProcessFilter(filter, filename, language);
- prefilter.enableLogging(getLogger());
+ prefilter.setLogger(getLogger());
return prefilter;
}
@@ -98,13 +98,11 @@
* @param logicsheetMarkupGenerator the logicsheet markup generator
* @return XMLFilter the filter that build on the fly the transformer chain
*/
- protected TransformerChainBuilderFilter getTransformerChainBuilder(
- LogicsheetCodeGenerator logicsheetMarkupGenerator)
+ protected TransformerChainBuilderFilter getTransformerChainBuilder(LogicsheetCodeGenerator logicsheetMarkupGenerator)
{
CocoonTransformerChainBuilderFilter filter =
- new CocoonTransformerChainBuilderFilter(
- logicsheetMarkupGenerator);
- filter.enableLogging(getLogger());
+ new CocoonTransformerChainBuilderFilter(logicsheetMarkupGenerator);
+ filter.setLogger(getLogger());
return filter;
}
@@ -112,7 +110,7 @@
// CocoonTransformerChainBuilderFilter invokes the method.
protected void addLogicsheetToList(LanguageDescriptor language,
String logicsheetLocation)
- throws IOException, SAXException, ProcessingException
+ throws IOException, SAXException, ProcessingException
{
super.addLogicsheetToList(language, logicsheetLocation);
}
@@ -154,7 +152,7 @@
* @see org.xml.sax.ContentHandler
*/
public class PreProcessFilter extends AbstractXMLPipe {
- protected Logger log;
+ protected Log log;
protected AbstractXMLPipe filter;
@@ -193,10 +191,8 @@
this.filter.setLexicalHandler(handler);
}
- public void enableLogging(Logger logger) {
- if (this.log == null) {
- this.log = logger;
- }
+ public void setLogger(Log logger) {
+ this.log = logger;
}
public void startDocument() throws SAXException {
@@ -268,10 +264,9 @@
*
* @see org.xml.sax.ContentHandler
*/
- public class CocoonTransformerChainBuilderFilter
- extends TransformerChainBuilderFilter {
+ public class CocoonTransformerChainBuilderFilter extends TransformerChainBuilderFilter {
- protected Logger log;
+ protected Log log;
private List startPrefix;
@@ -301,10 +296,8 @@
*
* @param logger the logger
*/
- public void enableLogging(Logger logger) {
- if (this.log == null) {
- this.log = logger;
- }
+ public void setLogger(Log logger) {
+ this.log = logger;
}
public void processingInstruction(String target, String data) throws SAXException {
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/Logicsheet.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/Logicsheet.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/Logicsheet.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/Logicsheet.java Thu Oct 18 21:19:27 2007
@@ -16,24 +16,25 @@
*/
package org.apache.cocoon.components.language.markup;
-import org.apache.excalibur.xml.xslt.XSLTProcessor;
-import org.apache.excalibur.xml.xslt.XSLTProcessorException;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.util.HashMap;
+import java.util.Map;
+import javax.xml.transform.sax.TransformerHandler;
+
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.cocoon.ProcessingException;
-import org.apache.cocoon.components.source.SourceUtil;
import org.apache.excalibur.source.Source;
import org.apache.excalibur.source.SourceException;
import org.apache.excalibur.source.SourceResolver;
-import org.xml.sax.SAXException;
+import org.apache.excalibur.xml.xslt.XSLTProcessor;
+import org.apache.excalibur.xml.xslt.XSLTProcessorException;
-import javax.xml.transform.sax.TransformerHandler;
+import org.apache.cocoon.ProcessingException;
+import org.apache.cocoon.components.source.SourceUtil;
+import org.apache.cocoon.util.AbstractLogEnabled;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.util.HashMap;
-import java.util.Map;
+import org.xml.sax.SAXException;
/**
* A code-generation logicsheet. This class is actually a wrapper for
@@ -45,8 +46,8 @@
*
* @version $Id$
*/
-public class Logicsheet extends AbstractLogEnabled
-{
+public class Logicsheet extends AbstractLogEnabled {
+
/**
* The Source Resolver object for this logicsheet.
*/
@@ -74,7 +75,7 @@
public Logicsheet(String systemId, ServiceManager manager,
SourceResolver resolver, LogicsheetFilter filter)
- throws SAXException, IOException, SourceException, ProcessingException
+ throws SAXException, IOException, ProcessingException
{
this.systemId = systemId;
this.manager = manager;
@@ -85,15 +86,15 @@
/**
* Return true if other logicsheet has the same system id.
*/
- public boolean equals(Object other)
- {
+ public boolean equals(Object other) {
if (other == this)
return true;
if (other == null)
return false;
if (!(other instanceof Logicsheet))
return false;
- Logicsheet that = (Logicsheet)other;
+
+ Logicsheet that = (Logicsheet) other;
return this.systemId.equals(that.systemId);
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/LogicsheetCodeGenerator.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/LogicsheetCodeGenerator.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/LogicsheetCodeGenerator.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/LogicsheetCodeGenerator.java Thu Oct 18 21:19:27 2007
@@ -16,17 +16,8 @@
*/
package org.apache.cocoon.components.language.markup;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
-
-import org.apache.cocoon.ProcessingException;
-import org.apache.cocoon.components.source.SourceUtil;
-import org.apache.cocoon.xml.AbstractXMLPipe;
-import org.apache.cocoon.util.TraxErrorHandler;
-import org.apache.excalibur.source.Source;
-
-import org.xml.sax.ContentHandler;
-import org.xml.sax.SAXException;
-
+import java.io.StringWriter;
+import java.util.Properties;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerFactory;
@@ -34,15 +25,25 @@
import javax.xml.transform.sax.SAXTransformerFactory;
import javax.xml.transform.sax.TransformerHandler;
import javax.xml.transform.stream.StreamResult;
-import java.io.StringWriter;
-import java.util.Properties;
+
+import org.apache.excalibur.source.Source;
+
+import org.apache.cocoon.ProcessingException;
+import org.apache.cocoon.components.source.SourceUtil;
+import org.apache.cocoon.util.AbstractLogEnabled;
+import org.apache.cocoon.util.TraxErrorHandler;
+import org.apache.cocoon.xml.AbstractXMLPipe;
+
+import org.xml.sax.ContentHandler;
+import org.xml.sax.SAXException;
/**
* A logicsheet-based implementation of <code>MarkupCodeGenerator</code>
*
* @version $Id$
*/
-public class LogicsheetCodeGenerator extends AbstractLogEnabled implements MarkupCodeGenerator {
+public class LogicsheetCodeGenerator extends AbstractLogEnabled
+ implements MarkupCodeGenerator {
private ContentHandler serializerContentHandler;
@@ -53,7 +54,7 @@
private StringWriter writer;
/** The trax TransformerFactory */
- private SAXTransformerFactory tfactory = null;
+ private SAXTransformerFactory tfactory;
/**
* Initialize the LogicsheetCodeGenerator.
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlConnection.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlConnection.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlConnection.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlConnection.java Thu Oct 18 21:19:27 2007
@@ -16,22 +16,24 @@
*/
package org.apache.cocoon.components.language.markup.xsp;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
-import org.apache.commons.lang.BooleanUtils;
-
import java.sql.Connection;
-import java.util.Properties;
-import java.sql.SQLException;
import java.sql.DatabaseMetaData;
+import java.sql.SQLException;
+import java.util.Properties;
+
+import org.apache.commons.lang.BooleanUtils;
+
+import org.apache.cocoon.util.AbstractLogEnabled;
/**
* @version $Id$
*/
public abstract class AbstractEsqlConnection extends AbstractLogEnabled {
- private String url = null;
- private Properties properties = null;
- private boolean multipleResults = false;
+ private String url;
+ private Properties properties;
+ private boolean multipleResults;
+
protected AbstractEsqlConnection() {
}
@@ -191,8 +193,7 @@
getLogger().error("Unknown database type: " + String.valueOf(type));
throw new SQLException("Unknown database type: " + String.valueOf(type));
}
- setupLogger(query);
- return(query);
+ return query;
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlQuery.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlQuery.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlQuery.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/AbstractEsqlQuery.java Thu Oct 18 21:19:27 2007
@@ -16,22 +16,23 @@
*/
package org.apache.cocoon.components.language.markup.xsp;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
-
+import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.PreparedStatement;
-import java.sql.CallableStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
+import org.apache.cocoon.util.AbstractLogEnabled;
+
/**
* This is base class for all EsqlQueries
*
* @version $Id$
*/
public abstract class AbstractEsqlQuery extends AbstractLogEnabled {
+
private int maxRows = -1;
private int skipRows = 0;
private int rowCount = -1;
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPGenerator.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPGenerator.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPGenerator.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPGenerator.java Thu Oct 18 21:19:27 2007
@@ -27,9 +27,11 @@
*
* @version $Id$
*/
-public abstract class XSPGenerator extends AbstractServerPage implements Contextualizable {
+public abstract class XSPGenerator extends AbstractServerPage
+ implements Contextualizable {
protected Context avalonContext;
+
/** Contextualize this class */
public void contextualize(Context context) throws ContextException {
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPMarkupLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPMarkupLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPMarkupLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/XSPMarkupLanguage.java Thu Oct 18 21:19:27 2007
@@ -59,9 +59,7 @@
protected AbstractXMLPipe getPreprocessFilter(String filename,
AbstractXMLPipe filter,
ProgrammingLanguage language) {
- PreProcessFilter prefilter = new PreProcessFilter(filter, filename, language, this);
- prefilter.enableLogging(getLogger());
- return prefilter;
+ return new PreProcessFilter(filter, filename, language, this);
}
//
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/AbstractProgrammingLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/AbstractProgrammingLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/AbstractProgrammingLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/AbstractProgrammingLanguage.java Thu Oct 18 21:19:27 2007
@@ -16,17 +16,18 @@
*/
package org.apache.cocoon.components.language.programming;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
+import java.io.File;
+
import org.apache.avalon.framework.logger.LogEnabled;
+import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.avalon.framework.parameters.Parameterizable;
import org.apache.avalon.framework.parameters.Parameters;
-import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.cocoon.components.language.LanguageException;
import org.apache.cocoon.components.language.generator.CompiledComponent;
+import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.util.ClassUtils;
-
-import java.io.File;
+import org.apache.cocoon.util.avalon.CLLoggerWrapper;
/**
* Base implementation of <code>ProgrammingLanguage</code>. This class sets the
@@ -73,9 +74,11 @@
if (this.codeFormatter != null) {
try {
CodeFormatter formatter = (CodeFormatter) this.codeFormatter.newInstance();
+ // All CodeFormatters are now using commons logging. This is legacy support code.
if (formatter instanceof LogEnabled) {
- ((LogEnabled) formatter).enableLogging(this.getLogger());
+ ((LogEnabled) formatter).enableLogging(new CLLoggerWrapper(getLogger()));
}
+
return formatter;
} catch (Exception e) {
getLogger().error("Error instantiating CodeFormatter", e);
@@ -96,8 +99,7 @@
throws LanguageException;
public final void unload(Object program, String filename, File baseDirectory)
- throws LanguageException {
-
+ throws LanguageException {
File file = new File(baseDirectory,
filename + "." + getSourceExtension());
file.delete();
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/CompiledProgrammingLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/CompiledProgrammingLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/CompiledProgrammingLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/CompiledProgrammingLanguage.java Thu Oct 18 21:19:27 2007
@@ -16,26 +16,26 @@
*/
package org.apache.cocoon.components.language.programming;
-import org.apache.avalon.framework.container.ContainerUtil;
+import java.io.File;
+
import org.apache.avalon.framework.context.Context;
import org.apache.avalon.framework.context.ContextException;
import org.apache.avalon.framework.context.Contextualizable;
-import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.parameters.ParameterException;
+import org.apache.avalon.framework.parameters.Parameters;
import org.apache.cocoon.components.language.LanguageException;
import org.apache.cocoon.components.language.programming.java.JavaProgram;
import org.apache.cocoon.util.ClassUtils;
import org.apache.cocoon.util.IOUtils;
-import java.io.File;
-
/**
* A compiled programming language. This class extends <code>AbstractProgrammingLanguage</code> adding support for compilation
* and object program files
* @version $Id$
*/
-public abstract class CompiledProgrammingLanguage extends AbstractProgrammingLanguage implements Contextualizable {
+public abstract class CompiledProgrammingLanguage extends AbstractProgrammingLanguage
+ implements Contextualizable {
/** The compiler */
protected Class compilerClass;
@@ -44,7 +44,7 @@
protected String classpath;
/** The source deletion option */
- protected boolean deleteSources = false;
+ protected boolean deleteSources;
/**
* Set the configuration parameters. This method instantiates the sitemap-specified language compiler
@@ -143,9 +143,7 @@
// Create and discard test instance.
program.newInstance();
- final Program p = new JavaProgram(program);
- ContainerUtil.enableLogging(p, this.getLogger());
- return p;
+ return new JavaProgram(program);
} catch (Throwable t) {
throw new LanguageException("Unable to preload program " + filename, t);
}
@@ -174,11 +172,13 @@
if (!sourceFile.canRead()) {
throw new LanguageException("Can't load program - File cannot be read: " + IOUtils.getFullFilename(sourceFile));
}
- this.compile(filename, baseDirectory, encoding);
+
+ compile(filename, baseDirectory, encoding);
if (this.deleteSources) {
sourceFile.delete();
}
- Class program = this.loadProgram(filename, baseDirectory);
+
+ Class program = loadProgram(filename, baseDirectory);
// Try to instantiate once to ensure there are no exceptions thrown in the constructor
try {
@@ -189,7 +189,7 @@
} catch(Exception e) {
// Unload class and delete the object file, or it won't be recompiled
// (leave the source file to allow examination).
- this.doUnload(program);
+ doUnload(program);
new File(baseDirectory, filename + "." + this.getObjectExtension()).delete();
String message = "Error while instantiating " + filename;
@@ -201,8 +201,6 @@
throw new LanguageException("Can't load program : " + baseDirectory.toString() + File.separator + filename);
}
- final Program p = new JavaProgram(program);
- ContainerUtil.enableLogging(p, this.getLogger());
- return p;
+ return new JavaProgram(program);
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/AbstractJavaCompiler.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/AbstractJavaCompiler.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/AbstractJavaCompiler.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/AbstractJavaCompiler.java Thu Oct 18 21:19:27 2007
@@ -16,22 +16,25 @@
*/
package org.apache.cocoon.components.language.programming.java;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
-import org.apache.avalon.excalibur.pool.Recyclable;
-import org.apache.cocoon.components.language.programming.LanguageCompiler;
-
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.List;
+import org.apache.avalon.excalibur.pool.Recyclable;
+
+import org.apache.cocoon.components.language.programming.LanguageCompiler;
+import org.apache.cocoon.util.AbstractLogEnabled;
+
/**
* This class implements the functionality common to all Java compilers.
- * @version $Id$
+ *
* @since 2.0
+ * @version $Id$
*/
-public abstract class AbstractJavaCompiler extends AbstractLogEnabled implements LanguageCompiler, Recyclable {
+public abstract class AbstractJavaCompiler extends AbstractLogEnabled
+ implements LanguageCompiler, Recyclable {
/**
* The source program filename
@@ -57,7 +60,7 @@
* The encoding of the source program or <code>null</code> to use the
* platform's default encoding
*/
- protected String encoding = null;
+ protected String encoding;
/**
* The version of the JVM for wich the code was written.
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaLanguage.java Thu Oct 18 21:19:27 2007
@@ -31,6 +31,7 @@
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.avalon.framework.thread.ThreadSafe;
+import org.apache.commons.lang.SystemUtils;
import org.apache.cocoon.components.classloader.ClassLoaderManager;
import org.apache.cocoon.components.language.LanguageException;
@@ -39,7 +40,7 @@
import org.apache.cocoon.components.language.programming.CompilerError;
import org.apache.cocoon.components.language.programming.LanguageCompiler;
import org.apache.cocoon.util.ClassUtils;
-import org.apache.commons.lang.SystemUtils;
+import org.apache.cocoon.util.avalon.CLLoggerWrapper;
/**
* The Java programming language processor
@@ -187,12 +188,12 @@
try {
LanguageCompiler compiler = (LanguageCompiler)this.compilerClass.newInstance();
- // AbstractJavaCompiler is LogEnabled
+ // All LanguageCompilers are now using commons logging. This is legacy support code.
if (compiler instanceof LogEnabled) {
- ((LogEnabled)compiler).enableLogging(getLogger());
+ ((LogEnabled) compiler).enableLogging(new CLLoggerWrapper(getLogger()));
}
if (compiler instanceof Serviceable) {
- ((Serviceable)compiler).service(this.manager);
+ ((Serviceable) compiler).service(this.manager);
}
int pos = name.lastIndexOf(File.separatorChar);
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaProgram.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaProgram.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaProgram.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/JavaProgram.java Thu Oct 18 21:19:27 2007
@@ -18,12 +18,12 @@
import org.apache.avalon.framework.configuration.DefaultConfiguration;
import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.cocoon.components.language.generator.CompiledComponent;
import org.apache.cocoon.components.language.programming.Program;
import org.apache.cocoon.core.container.spring.avalon.ComponentInfo;
+import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.xsp.handler.AbstractComponentHandler;
import org.apache.cocoon.xsp.handler.ComponentHandler;
@@ -33,12 +33,14 @@
*
* @version $Id$
*/
-public class JavaProgram extends AbstractLogEnabled implements Program {
+public class JavaProgram extends AbstractLogEnabled
+ implements Program {
protected Class program;
protected DefaultConfiguration config;
+
public JavaProgram(Class program) {
this.program = program;
this.config = new DefaultConfiguration("", "GeneratorSelector");
@@ -53,15 +55,13 @@
public ComponentHandler getHandler(ServiceManager manager,
Context context)
throws Exception {
- return AbstractComponentHandler.getComponentHandler(
- program,
- getLogger(),
- context,
- manager,
- this.config);
+ return AbstractComponentHandler.getComponentHandler(program,
+ context,
+ manager,
+ this.config);
}
public CompiledComponent newInstance() throws Exception {
- return (CompiledComponent)this.program.newInstance();
+ return (CompiledComponent) this.program.newInstance();
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/NullFormatter.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/NullFormatter.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/NullFormatter.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/java/NullFormatter.java Thu Oct 18 21:19:27 2007
@@ -16,7 +16,6 @@
*/
package org.apache.cocoon.components.language.programming.java;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.cocoon.components.language.programming.CodeFormatter;
/**
@@ -26,7 +25,7 @@
*
* @version $Id$
*/
-public class NullFormatter extends AbstractLogEnabled implements CodeFormatter {
+public class NullFormatter implements CodeFormatter {
/**
* This is a dummy <code>CodeFormatter</code>
@@ -37,7 +36,6 @@
* @return The formatted source code
*/
public String format(String code, String encoding) {
- getLogger().debug("NullFormatter called");
return code;
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptLanguage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptLanguage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptLanguage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptLanguage.java Thu Oct 18 21:19:27 2007
@@ -16,7 +16,12 @@
*/
package org.apache.cocoon.components.language.programming.javascript;
-import org.apache.avalon.framework.container.ContainerUtil;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.ArrayList;
+
import org.apache.cocoon.components.language.LanguageException;
import org.apache.cocoon.components.language.markup.xsp.XSLTExtension;
import org.apache.cocoon.components.language.programming.AbstractProgrammingLanguage;
@@ -24,12 +29,6 @@
import org.apache.cocoon.util.ClassUtils;
import org.apache.cocoon.util.IOUtils;
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-import java.util.ArrayList;
-
/**
* The interpreted Javascript programming language.
* Program in Javascript must have comment line as first line of file:
@@ -95,9 +94,7 @@
}
}
- final Program p = new JavascriptProgram(sourceFile, clazz, dependecies);
- ContainerUtil.enableLogging(p, this.getLogger());
- return p;
+ return new JavascriptProgram(sourceFile, clazz, dependecies);
}
private String getMeta(String line, String meta) {
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptProgram.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptProgram.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptProgram.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/programming/javascript/JavascriptProgram.java Thu Oct 18 21:19:27 2007
@@ -16,33 +16,35 @@
*/
package org.apache.cocoon.components.language.programming.javascript;
+import java.io.File;
+import java.util.Collection;
+import java.util.Iterator;
+
import org.apache.avalon.framework.configuration.Configurable;
import org.apache.avalon.framework.configuration.DefaultConfiguration;
import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.cocoon.components.language.generator.CompiledComponent;
import org.apache.cocoon.components.language.programming.Program;
import org.apache.cocoon.core.container.spring.avalon.ComponentInfo;
+import org.apache.cocoon.util.AbstractLogEnabled;
import org.apache.cocoon.xsp.handler.AbstractComponentHandler;
import org.apache.cocoon.xsp.handler.ComponentHandler;
-import java.io.File;
-import java.util.Collection;
-import java.util.Iterator;
-
/**
* This class represents program in the Javascript language.
*
* @version $Id$
*/
-public class JavascriptProgram extends AbstractLogEnabled implements Program {
+public class JavascriptProgram extends AbstractLogEnabled
+ implements Program {
protected File file;
protected Class clazz;
protected DefaultConfiguration config;
+
public JavascriptProgram(File file, Class clazz, Collection dependecies) {
DefaultConfiguration child;
@@ -70,15 +72,18 @@
public ComponentHandler getHandler(ServiceManager manager,
Context context)
throws Exception {
-
- return AbstractComponentHandler.getComponentHandler(
- clazz, getLogger(), context, manager, config);
+ return AbstractComponentHandler.getComponentHandler(clazz,
+ context,
+ manager,
+ config);
}
public CompiledComponent newInstance() throws Exception {
CompiledComponent instance = (CompiledComponent) clazz.newInstance();
- if (instance instanceof Configurable)
+ if (instance instanceof Configurable) {
((Configurable) instance).configure(config);
+ }
+
return instance;
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/xscript/XScriptManagerImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/xscript/XScriptManagerImpl.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/xscript/XScriptManagerImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/xscript/XScriptManagerImpl.java Thu Oct 18 21:19:27 2007
@@ -17,13 +17,11 @@
package org.apache.cocoon.components.xscript;
import java.util.Map;
-
import javax.servlet.http.HttpSession;
import org.apache.avalon.framework.activity.Disposable;
import org.apache.avalon.framework.context.ContextException;
import org.apache.avalon.framework.context.Contextualizable;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
import org.apache.avalon.framework.parameters.ParameterException;
import org.apache.avalon.framework.parameters.Parameterizable;
import org.apache.avalon.framework.parameters.Parameters;
@@ -31,21 +29,23 @@
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.avalon.framework.thread.ThreadSafe;
+
import org.apache.cocoon.Constants;
import org.apache.cocoon.environment.Context;
import org.apache.cocoon.environment.ObjectModelHelper;
import org.apache.cocoon.environment.Request;
+import org.apache.cocoon.util.AbstractLogEnabled;
/**
* The actual implementation of the <code>XScriptManager</code> interface.
*
- * @version $Id$
* @since August 4, 2001
+ * @version $Id$
*/
-public class XScriptManagerImpl
- extends AbstractLogEnabled
- implements XScriptManager, Serviceable, Parameterizable, Contextualizable, ThreadSafe, Disposable
-{
+public class XScriptManagerImpl extends AbstractLogEnabled
+ implements XScriptManager, Serviceable, Parameterizable,
+ Contextualizable, ThreadSafe, Disposable {
+
public static final String CONTEXT = "org.apache.cocoon.components.xscript.scope";
/**
@@ -117,6 +117,7 @@
else
message.append("unknown scope (").append(scope).append(")");
+ //noinspection ThrowableInstanceNeverThrown
return new IllegalArgumentException(message.toString());
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/AbstractServerPage.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/AbstractServerPage.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/AbstractServerPage.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/AbstractServerPage.java Thu Oct 18 21:19:27 2007
@@ -35,9 +35,8 @@
*
* @version $Id$
*/
-public abstract class AbstractServerPage
- extends ServletGenerator
- implements CompiledComponent, CacheableProcessingComponent {
+public abstract class AbstractServerPage extends ServletGenerator
+ implements CompiledComponent, CacheableProcessingComponent {
/**
* Code generators should produce a constructor
@@ -56,8 +55,9 @@
/** The creation date */
protected long dateCreated = -1L;
+
/** The dependency file list */
- protected File[] dependencies = null;
+ protected File[] dependencies;
/**
* Determines whether this generator's source files have changed
@@ -89,7 +89,7 @@
* @return Whether content has changes for this request's data
*/
public boolean hasContentChanged(Request request) {
- return true;
+ return true;
}
/**
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/ServerPagesGenerator.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/ServerPagesGenerator.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/ServerPagesGenerator.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/generation/ServerPagesGenerator.java Thu Oct 18 21:19:27 2007
@@ -16,13 +16,21 @@
*/
package org.apache.cocoon.generation;
-import org.apache.commons.collections.ArrayStack;
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.Map;
+
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.parameters.Parameters;
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
+import org.apache.commons.collections.ArrayStack;
+import org.apache.excalibur.source.Source;
+import org.apache.excalibur.source.SourceException;
+import org.apache.excalibur.source.SourceValidity;
+
import org.apache.cocoon.ProcessingException;
import org.apache.cocoon.ResourceNotFoundException;
import org.apache.cocoon.caching.CacheableProcessingComponent;
@@ -30,16 +38,10 @@
import org.apache.cocoon.components.source.SourceUtil;
import org.apache.cocoon.environment.SourceResolver;
import org.apache.cocoon.xml.AbstractXMLPipe;
-import org.apache.excalibur.source.Source;
-import org.apache.excalibur.source.SourceException;
-import org.apache.excalibur.source.SourceValidity;
+
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
-import java.io.IOException;
-import java.io.Serializable;
-import java.util.Map;
-
/**
* This class acts as a proxy to a dynamically loaded<code>Generator</code>
* delegating actual SAX event generation.
@@ -57,7 +59,7 @@
* @version $Id$
*/
public class ServerPagesGenerator extends ServletGenerator
- implements CacheableProcessingComponent, Configurable {
+ implements CacheableProcessingComponent, Configurable {
/**
* The sitemap-defined server pages program generator
@@ -87,10 +89,8 @@
*/
public void configure(Configuration config) throws ConfigurationException {
boolean autoComplete = config.getChild("autocomplete-documents").getValueAsBoolean(false);
-
if (autoComplete) {
this.completionPipe = new CompletionPipe();
- this.completionPipe.enableLogging(getLogger());
}
this.markupLanguage = config.getChild("markup-language").getValue(DEFAULT_MARKUP_LANGUAGE);
@@ -182,9 +182,6 @@
getLogger().warn("Failed to load class: " + e);
throw new ResourceNotFoundException(e.getMessage());
}
-
- // Give our own logger to the generator so that logs go in the correct category
- generator.enableLogging(getLogger());
generator.setup(super.resolver, super.objectModel, super.source, super.parameters);
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractComponentHandler.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractComponentHandler.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractComponentHandler.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractComponentHandler.java Thu Oct 18 21:19:27 2007
@@ -22,32 +22,31 @@
import org.apache.avalon.framework.component.Composable;
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.ServiceManager;
import org.apache.avalon.framework.thread.SingleThreaded;
import org.apache.avalon.framework.thread.ThreadSafe;
+
import org.apache.cocoon.core.container.spring.avalon.ComponentInfo;
+import org.apache.cocoon.util.AbstractLogEnabled;
/**
* This class acts like a Factory to instantiate the correct version
* of the component handler that you need.
*
- * @version $Id$
* @since 2.2
+ * @version $Id$
*/
-public abstract class AbstractComponentHandler
-implements ComponentHandler {
+public abstract class AbstractComponentHandler extends AbstractLogEnabled
+ implements ComponentHandler {
private final Object referenceSemaphore = new Object();
- private int references = 0;
+ private int references;
- protected final Logger logger;
-
/** State management boolean stating whether the Handler is disposed or not */
- protected boolean disposed = false;
+ protected boolean disposed;
/** State management boolean stating whether the Handler is initialized or not */
- private boolean initialized = false;
+ private boolean initialized;
/** Information about the component */
private ComponentInfo info;
@@ -84,17 +83,17 @@
+ componentClass.getName() + " to use Serviceable instead.");
}
- if( SingleThreaded.class.isAssignableFrom( componentClass ) ) {
+ if (SingleThreaded.class.isAssignableFrom(componentClass)) {
numInterfaces++;
info.setModel(ComponentInfo.MODEL_PRIMITIVE);
}
- if( ThreadSafe.class.isAssignableFrom( componentClass ) ) {
+ if (ThreadSafe.class.isAssignableFrom(componentClass)) {
numInterfaces++;
info.setModel(ComponentInfo.MODEL_SINGLETON);
}
- if( Poolable.class.isAssignableFrom( componentClass ) ) {
+ if (Poolable.class.isAssignableFrom(componentClass)) {
numInterfaces++;
}
@@ -116,13 +115,13 @@
factory = new ComponentFactory(componentEnv, info);
- if( info.getModel() == ComponentInfo.MODEL_POOLED) {
- handler = new NonThreadSafePoolableComponentHandler( info, componentEnv.logger, factory, info.getConfiguration() );
- } else if( info.getModel() == ComponentInfo.MODEL_SINGLETON ) {
- handler = new ThreadSafeComponentHandler( info, componentEnv.logger, factory );
+ if (info.getModel() == ComponentInfo.MODEL_POOLED) {
+ handler = new NonThreadSafePoolableComponentHandler(info, factory, info.getConfiguration());
+ } else if (info.getModel() == ComponentInfo.MODEL_SINGLETON) {
+ handler = new ThreadSafeComponentHandler(info, factory);
} else {
// This is a SingleThreaded component
- handler = new SingleThreadedComponentHandler( info, componentEnv.logger, factory );
+ handler = new SingleThreadedComponentHandler(info, factory);
}
return handler;
@@ -131,8 +130,7 @@
/**
* Creates a new ComponentHandler.
*/
- public AbstractComponentHandler(ComponentInfo info, Logger logger) {
- this.logger = logger;
+ public AbstractComponentHandler(ComponentInfo info) {
this.info = info;
}
@@ -177,10 +175,11 @@
*/
public final void put( Object component )
throws Exception {
- if( !this.initialized ) {
+ if (!this.initialized) {
throw new IllegalStateException(
- "You cannot put a component to an uninitialized handler." );
+ "You cannot put a component to an uninitialized handler.");
}
+
// The reference count must be decremented before any calls to doPut.
// If there is another thread blocking, then this thread could stay deep inside
// doPut for an undetermined amount of time until the thread scheduler gives it
@@ -188,14 +187,14 @@
// reflect the thread having left this method before the call to doPut to avoid
// warning messages from the dispose() cycle if that takes place before this
// thread has a chance to continue.
- synchronized( this.referenceSemaphore ) {
+ synchronized (this.referenceSemaphore) {
this.references--;
}
try {
- this.doPut( component );
- } catch( Throwable t ) {
- this.logger.error("Exception during putting back a component.", t);
+ this.doPut(component);
+ } catch (Throwable t) {
+ getLogger().error("Exception during putting back a component.", t);
}
}
@@ -231,7 +230,7 @@
* disposed; <code>false</code> otherwise
*/
public final boolean canBeDisposed() {
- return ( this.references == 0 );
+ return this.references == 0;
}
/* (non-Javadoc)
@@ -245,22 +244,22 @@
* @see org.apache.cocoon.core.container.ComponentHandler#initialize()
*/
public final void initialize() throws Exception {
- if( this.initialized ) {
+ if (this.initialized) {
return;
}
doInitialize();
this.initialized = true;
}
-
+
protected abstract void doInitialize() throws Exception;
/**
* Create a component handler (version used by XSP)
* TODO - perhaps we can remove this later?
*/
- public static ComponentHandler getComponentHandler(Class clazz, Logger logger, Context context, ServiceManager manager, Configuration config) throws Exception {
- ComponentEnvironment env = new ComponentEnvironment(logger, context, manager, clazz.getClassLoader());
+ public static ComponentHandler getComponentHandler(Class clazz, Context context, ServiceManager manager, Configuration config) throws Exception {
+ ComponentEnvironment env = new ComponentEnvironment(context, manager, clazz.getClassLoader());
ComponentInfo info = new ComponentInfo();
info.setComponentClassName(clazz.getName());
info.setConfiguration(config);
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractFactoryHandler.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractFactoryHandler.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractFactoryHandler.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/AbstractFactoryHandler.java Thu Oct 18 21:19:27 2007
@@ -18,15 +18,14 @@
*/
package org.apache.cocoon.xsp.handler;
-import org.apache.avalon.framework.logger.Logger;
import org.apache.cocoon.core.container.spring.avalon.ComponentInfo;
/**
* This class acts like a Factory to instantiate the correct version
* of the component handler that you need.
*
- * @version $Id$
* @since 2.2
+ * @version $Id$
*/
public abstract class AbstractFactoryHandler extends AbstractComponentHandler {
@@ -36,22 +35,23 @@
/**
* Creates a new ComponentHandler.
*/
- public AbstractFactoryHandler(ComponentInfo info, Logger logger, ComponentFactory factory) {
- super(info, logger);
+ public AbstractFactoryHandler(ComponentInfo info, ComponentFactory factory) {
+ super(info);
this.factory = factory;
}
/**
- * Decommission a component
+ * Decommission a component.
+ *
* @param component Object to be decommissioned
*/
- protected void decommission( final Object component ) {
+ protected void decommission(final Object component) {
try {
- this.factory.decommission( component );
+ this.factory.decommission(component);
} catch( final Exception e ) {
- if( this.logger.isWarnEnabled() ) {
- this.logger.warn( "Error decommissioning component: "
- + this.factory.getCreatedClass().getName(), e );
+ if (getLogger().isWarnEnabled()) {
+ getLogger().warn("Error decommissioning component: "
+ + this.factory.getCreatedClass().getName(), e);
}
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentEnvironment.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentEnvironment.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentEnvironment.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentEnvironment.java Thu Oct 18 21:19:27 2007
@@ -19,29 +19,24 @@
package org.apache.cocoon.xsp.handler;
import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.logger.Logger;
import org.apache.avalon.framework.service.ServiceManager;
/**
* The component enviromnent contains all objects necessary to create
* a new component; it's just a "container" of objects.
*
- * @version $Id$
* @since 2.2
+ * @version $Id$
*/
public class ComponentEnvironment {
public final ServiceManager serviceManager;
public final Context context;
- public final Logger logger;
-
+
public final ClassLoader classLoader;
- public ComponentEnvironment(Logger logger,
- Context context,
+ public ComponentEnvironment(Context context,
ServiceManager serviceManager,
ClassLoader classLoader ) {
-
- this.logger = logger;
this.context = context;
this.serviceManager = serviceManager;
this.classLoader = classLoader;
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentFactory.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentFactory.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentFactory.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/ComponentFactory.java Thu Oct 18 21:19:27 2007
@@ -20,30 +20,25 @@
import org.apache.avalon.excalibur.pool.Recyclable;
import org.apache.avalon.framework.container.ContainerUtil;
-import org.apache.avalon.framework.logger.Logger;
import org.apache.avalon.framework.parameters.Parameterizable;
import org.apache.avalon.framework.parameters.Parameters;
+
import org.apache.cocoon.core.container.spring.avalon.ComponentInfo;
+import org.apache.cocoon.util.AbstractLogEnabled;
/**
* Factory for Avalon based components.
*
- * @version $Id$
* @since 2.2
+ * @version $Id$
*/
-public class ComponentFactory {
+public class ComponentFactory extends AbstractLogEnabled {
protected final ComponentInfo serviceInfo;
protected final ComponentEnvironment environment;
- /**
- * The component's logger, which may be different from the environment's logger
- */
- protected final Logger componentLogger;
-
- /** The parameters for this component
- */
+ /** The parameters for this component */
protected final Parameters parameters;
protected final Class serviceClass;
@@ -55,24 +50,20 @@
* @param info Describes the configuration/settings for the component.
*
*/
- public ComponentFactory( final ComponentEnvironment environment,
- final ComponentInfo info)
+ public ComponentFactory(final ComponentEnvironment environment,
+ final ComponentInfo info)
throws Exception {
this.environment = environment;
this.serviceInfo = info;
-
- // this is our default logger:
- Logger actualLogger = this.environment.logger;
- this.componentLogger = actualLogger;
-
+
this.serviceClass = this.environment.loadClass(this.serviceInfo.getComponentClassName());
- if ( Parameterizable.class.isAssignableFrom(this.serviceClass) ) {
- this.parameters = Parameters.fromConfiguration( this.serviceInfo.getConfiguration() );
+ if (Parameterizable.class.isAssignableFrom(this.serviceClass)) {
+ this.parameters = Parameters.fromConfiguration(this.serviceInfo.getConfiguration());
} else {
this.parameters = null;
}
}
-
+
/**
* Create a new instance
*/
@@ -90,23 +81,21 @@
* @throws Exception
*/
protected void setupInstance(Object component) throws Exception {
- if( this.environment.logger.isDebugEnabled() ) {
- this.environment.logger.debug( "ComponentFactory creating new instance of " +
- this.serviceClass.getName() + "." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("ComponentFactory creating new instance of " +
+ this.serviceClass.getName() + ".");
}
- ContainerUtil.enableLogging(component, this.componentLogger);
- ContainerUtil.contextualize( component, this.environment.context );
- ContainerUtil.service( component, this.environment.serviceManager );
- ContainerUtil.configure( component, this.serviceInfo.getConfiguration() );
-
- if( component instanceof Parameterizable ) {
- ContainerUtil.parameterize( component, this.parameters );
+ ContainerUtil.contextualize(component, this.environment.context);
+ ContainerUtil.service(component, this.environment.serviceManager);
+ ContainerUtil.configure(component, this.serviceInfo.getConfiguration());
+ if (component instanceof Parameterizable) {
+ ContainerUtil.parameterize(component, this.parameters);
}
- ContainerUtil.initialize( component );
+ ContainerUtil.initialize(component);
- ContainerUtil.start( component );
+ ContainerUtil.start(component);
}
public Class getCreatedClass() {
@@ -116,25 +105,25 @@
/**
* Destroy an instance
*/
- public void decommission( final Object component )
+ public void decommission(final Object component)
throws Exception {
- if( this.environment.logger.isDebugEnabled() ) {
- this.environment.logger.debug( "ComponentFactory decommissioning instance of " +
- this.serviceClass.getName() + "." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("ComponentFactory decommissioning instance of " +
+ this.serviceClass.getName() + ".");
}
- ContainerUtil.stop( component );
- ContainerUtil.dispose( component );
+ ContainerUtil.stop(component);
+ ContainerUtil.dispose(component);
}
/**
* Handle service specific methods for putting it into the pool
*/
- public void enteringPool( final Object component )
+ public void enteringPool(final Object component)
throws Exception {
// Handle Recyclable objects
- if( component instanceof Recyclable ) {
- ( (Recyclable)component ).recycle();
+ if (component instanceof Recyclable) {
+ ((Recyclable) component).recycle();
}
}
}
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/NonThreadSafePoolableComponentHandler.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/NonThreadSafePoolableComponentHandler.java?rev=586258&r1=586257&r2=586258&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/NonThreadSafePoolableComponentHandler.java (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/xsp/handler/NonThreadSafePoolableComponentHandler.java Thu Oct 18 21:19:27 2007
@@ -22,41 +22,40 @@
import java.util.LinkedList;
import org.apache.avalon.framework.configuration.Configuration;
-import org.apache.avalon.framework.logger.Logger;
+
import org.apache.cocoon.core.container.spring.avalon.ComponentInfo;
/**
* The PoolableComponentHandler to make sure that poolable components are initialized
* destroyed and pooled correctly.
- * <p>
- * Components which implement Poolable may be configured to be pooled using the following
- * example configuration. This example assumes that the user component class MyComp
- * implements Poolable.
- * <p>
- * Configuration Example:
+ *
+ * <p>Components which implement Poolable may be configured to be pooled using the
+ * following example configuration. This example assumes that the user component
+ * class MyComp implements Poolable.
+ *
+ * <p>Configuration Example:
* <pre>
* <my-comp pool-max="8"/>
* </pre>
- * <p>
- * Roles Example:
+ *
+ * <p>Roles Example:
* <pre>
* <role name="com.mypkg.MyComponent"
* shorthand="my-comp"
* default-class="com.mypkg.DefaultMyComponent"/>
* </pre>
- * <p>
- * Configuration Attributes:
+ *
+ * <p>Configuration Attributes:
* <ul>
* <li>The <code>pool-max</code> attribute is used to set the maximum number of components which
- * will be pooled. (Defaults to "8") If additional instances are required, they're created,
- * but not pooled.</li>
+ * will be pooled. (Defaults to "8") If additional instances are required, they're created,
+ * but not pooled.</li>
* </ul>
*
- * @version $Id$
* @since 2.2
+ * @version $Id$
*/
-public class NonThreadSafePoolableComponentHandler
-extends AbstractFactoryHandler {
+public class NonThreadSafePoolableComponentHandler extends AbstractFactoryHandler {
/** The default max size of the pool */
public static final int DEFAULT_MAX_POOL_SIZE = 8;
@@ -99,12 +98,11 @@
* managed by the ComponentHandler.
* @param config The configuration to use to configure the pool.
*/
- public NonThreadSafePoolableComponentHandler( final ComponentInfo info,
- final Logger logger,
- final ComponentFactory factory,
- final Configuration config )
+ public NonThreadSafePoolableComponentHandler(final ComponentInfo info,
+ final ComponentFactory factory,
+ final Configuration config )
throws Exception {
- super(info, logger, factory);
+ super(info, factory);
final int poolMax = config.getAttributeAsInteger( "pool-max", DEFAULT_MAX_POOL_SIZE );
this.max = ( poolMax <= 0 ? Integer.MAX_VALUE : poolMax );
@@ -120,18 +118,18 @@
super.dispose();
// Any Poolables in the m_ready list need to be disposed of
- synchronized( this.semaphore ) {
+ synchronized (this.semaphore) {
// Remove objects in the ready list.
- for( Iterator iter = this.ready.iterator(); iter.hasNext(); ) {
+ for (Iterator iter = this.ready.iterator(); iter.hasNext();) {
Object poolable = iter.next();
iter.remove();
this.readySize--;
- this.permanentlyRemovePoolable( poolable );
+ this.permanentlyRemovePoolable(poolable);
}
- if( this.size > 0 && this.logger.isDebugEnabled() ) {
- this.logger.debug( "There were " + this.size
- + " outstanding objects when the pool was disposed." );
+ if (this.size > 0 && getLogger().isDebugEnabled()) {
+ getLogger().debug("There were " + this.size +
+ " outstanding objects when the pool was disposed.");
}
}
}
@@ -159,9 +157,9 @@
*/
protected Object getFromPool() throws Exception {
Object poolable;
- synchronized( this.semaphore ) {
+ synchronized (this.semaphore) {
// Look for a Poolable at the end of the m_ready list
- if ( this.readySize > 0 ){
+ if (this.readySize > 0) {
// A poolable is ready and waiting in the pool
poolable = this.ready.removeLast();
this.readySize--;
@@ -172,15 +170,15 @@
this.size++;
this.highWaterMark = (this.highWaterMark < this.size ? this.size : this.highWaterMark);
- if ( this.logger.isDebugEnabled() ) {
- this.logger.debug( "Created a new " + poolable.getClass().getName()
- + " from the object factory." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("Created a new " + poolable.getClass().getName() +
+ " from the object factory.");
}
}
}
- if( this.logger.isDebugEnabled() ) {
- this.logger.debug( "Got a " + poolable.getClass().getName() + " from the pool." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("Got a " + poolable.getClass().getName() + " from the pool.");
}
return poolable;
@@ -191,42 +189,42 @@
*
* @param poolable Poolable to return to the pool.
*/
- protected void putIntoPool( final Object poolable ) {
+ protected void putIntoPool(final Object poolable) {
try {
this.factory.enteringPool(poolable);
} catch (Exception ignore) {
- this.logger.warn("Exception during putting component back into the pool.", ignore);
+ getLogger().warn("Exception during putting component back into the pool.", ignore);
}
- synchronized( this.semaphore ) {
- if( this.size <= this.max ) {
- if( this.disposed ) {
+ synchronized (this.semaphore) {
+ if (this.size <= this.max) {
+ if (this.disposed) {
// The pool has already been disposed.
- if( this.logger.isDebugEnabled() ) {
- this.logger.debug( "Put called for a " + poolable.getClass().getName()
- + " after the pool was disposed." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("Put called for a " + poolable.getClass().getName() +
+ " after the pool was disposed.");
}
- this.permanentlyRemovePoolable( poolable );
+ this.permanentlyRemovePoolable(poolable);
} else {
// There is room in the pool to keep this poolable.
- if( this.logger.isDebugEnabled() ) {
- this.logger.debug( "Put a " + poolable.getClass().getName()
- + " back into the pool." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("Put a " + poolable.getClass().getName() +
+ " back into the pool.");
}
- this.ready.addLast( poolable );
+ this.ready.addLast(poolable);
this.readySize++;
}
} else {
// More Poolables were created than can be held in the pool, so remove.
- if( this.logger.isDebugEnabled() ) {
- this.logger.debug( "No room to put a " + poolable.getClass().getName()
- + " back into the pool, so remove it." );
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug("No room to put a " + poolable.getClass().getName() +
+ " back into the pool, so remove it.");
}
- this.permanentlyRemovePoolable( poolable );
+ permanentlyRemovePoolable(poolable);
}
}
}
@@ -236,16 +234,10 @@
}
- /* (non-Javadoc)
- * @see org.apache.cocoon.core.container.handler.AbstractComponentHandler#doGet()
- */
protected Object doGet() throws Exception {
- return this.getFromPool();
+ return getFromPool();
}
- /* (non-Javadoc)
- * @see org.apache.cocoon.core.container.handler.AbstractComponentHandler#doPut(java.lang.Object)
- */
protected void doPut(Object component) throws Exception {
this.putIntoPool(component);
}