You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by gi...@apache.org on 2007/09/28 13:33:18 UTC
svn commit: r580312 [2/5] - in
/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl: ./
src/main/java/org/apache/cocoon/forms/
src/main/java/org/apache/cocoon/forms/binding/
src/main/java/org/apache/cocoon/forms/binding/library/
src/main/java/org/apache...
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/RepeaterJXPathBinding.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/RepeaterJXPathBinding.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/RepeaterJXPathBinding.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/RepeaterJXPathBinding.java Fri Sep 28 04:33:12 2007
@@ -23,8 +23,6 @@
import java.util.List;
import java.util.Set;
-import org.apache.avalon.framework.logger.Logger;
-
import org.apache.cocoon.forms.datatype.convertor.ConversionResult;
import org.apache.cocoon.forms.formmodel.Repeater;
import org.apache.cocoon.forms.formmodel.Widget;
@@ -32,6 +30,8 @@
import org.apache.commons.collections.ListUtils;
import org.apache.commons.jxpath.JXPathContext;
import org.apache.commons.jxpath.Pointer;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* RepeaterJXPathBinding provides an implementation of a {@link Binding}
@@ -42,6 +42,8 @@
*/
public class RepeaterJXPathBinding extends JXPathBindingBase {
+ private static Log LOG = LogFactory.getLog( RepeaterJXPathBinding.class );
+
private final String repeaterId;
private final String repeaterPath;
private final String rowPath;
@@ -100,20 +102,6 @@
this.identityBinding = null;
}
- public void enableLogging(Logger logger) {
- super.enableLogging(logger);
- if (this.deleteRowBinding != null) {
- this.deleteRowBinding.enableLogging(logger);
- }
- if (this.insertRowBinding != null) {
- this.insertRowBinding.enableLogging(logger);
- }
- this.rowBinding.enableLogging(logger);
- if (this.identityBinding != null) {
- this.identityBinding.enableLogging(logger);
- }
- }
-
public String getId() { return repeaterId; }
public String getRepeaterPath() { return repeaterPath; }
public String getRowPath() { return rowPath; }
@@ -167,8 +155,8 @@
this.rowBinding.loadFormFromModel(thisRow, rowContext);
}
}
- if (getLogger().isDebugEnabled())
- getLogger().debug("done loading rows " + this);
+ if (LOG.isDebugEnabled())
+ LOG.debug("done loading rows " + this);
}
/**
@@ -274,12 +262,14 @@
this.rowPathForInsert + "[" + indexCount + "]");
JXPathContext newRowContext =
repeaterContext.getRelativeContext(newRowContextPointer);
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("inserted row at " + newRowContextPointer.asPath());
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("inserted row at " + newRowContextPointer.asPath());
}
// + rebind to children for update
this.rowBinding.saveFormToModel(thisRow, newRowContext);
- getLogger().debug("bound new row");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("bound new row");
+ }
indexCount++;
}
// } else {
@@ -289,8 +279,8 @@
// }
// }
}
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("done saving rows " + this);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("done saving rows " + this);
}
}
@@ -353,8 +343,8 @@
else
value = null;
} else {
- if (getLogger().isWarnEnabled()) {
- getLogger().warn("Convertor ignored on backend-value " +
+ if (LOG.isWarnEnabled()) {
+ LOG.warn("Convertor ignored on backend-value " +
"which isn't of type String.");
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SetAttributeJXPathBinding.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SetAttributeJXPathBinding.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SetAttributeJXPathBinding.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SetAttributeJXPathBinding.java Fri Sep 28 04:33:12 2007
@@ -19,6 +19,8 @@
import org.apache.cocoon.forms.formmodel.Widget;
import org.apache.commons.jxpath.JXPathContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* SetAttributeJXPathBinding provides an implementation of a {@link Binding}
@@ -32,6 +34,7 @@
*/
public class SetAttributeJXPathBinding extends JXPathBindingBase {
+ private static Log LOG = LogFactory.getLog( SetAttributeJXPathBinding.class );
private final String name;
private final String value;
@@ -62,8 +65,8 @@
*/
public void doSave(Widget frmModel, JXPathContext jxpc) {
jxpc.setValue("@" + this.name, this.value);
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("done saving " + this);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("done saving " + this);
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SimpleRepeaterJXPathBinding.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SimpleRepeaterJXPathBinding.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SimpleRepeaterJXPathBinding.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/SimpleRepeaterJXPathBinding.java Fri Sep 28 04:33:12 2007
@@ -18,13 +18,13 @@
import java.util.Iterator;
-import org.apache.avalon.framework.logger.Logger;
-
import org.apache.cocoon.forms.formmodel.Repeater;
import org.apache.cocoon.forms.formmodel.Widget;
import org.apache.commons.jxpath.JXPathContext;
import org.apache.commons.jxpath.Pointer;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* Simple binding for repeaters: on save, first deletes the target data
@@ -37,6 +37,7 @@
*/
public class SimpleRepeaterJXPathBinding extends JXPathBindingBase {
+ private static Log LOG = LogFactory.getLog( SimpleRepeaterJXPathBinding.class );
private final String repeaterId;
private final String repeaterPath;
private final String rowPath;
@@ -62,11 +63,6 @@
this.deleteIfEmpty = deleteIfEmpty;
}
- public void enableLogging(Logger logger) {
- super.enableLogging(logger);
- this.rowBinding.enableLogging(logger);
- }
-
public String getId() { return repeaterId; }
public String getRepeaterPath() { return repeaterPath; }
public String getRowPath() { return rowPath; }
@@ -111,8 +107,8 @@
this.rowBinding.loadFormFromModel(thisRow, rowContext);
}
}
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("done loading rows " + this);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("done loading rows " + this);
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/TempRepeaterJXPathBinding.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/TempRepeaterJXPathBinding.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/TempRepeaterJXPathBinding.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/TempRepeaterJXPathBinding.java Fri Sep 28 04:33:12 2007
@@ -18,13 +18,13 @@
import java.util.Iterator;
-import org.apache.avalon.framework.logger.Logger;
-
import org.apache.cocoon.forms.formmodel.Repeater;
import org.apache.cocoon.forms.formmodel.Widget;
import org.apache.commons.jxpath.JXPathContext;
import org.apache.commons.jxpath.Pointer;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@@ -41,6 +41,7 @@
*/
public class TempRepeaterJXPathBinding extends JXPathBindingBase {
+ private static Log LOG = LogFactory.getLog( TempRepeaterJXPathBinding.class );
private final String repeaterId;
private final String repeaterPath;
private final String rowPath;
@@ -76,14 +77,6 @@
this.deleteIfEmpty = deleteIfEmpty;
}
- public void enableLogging(Logger logger) {
- super.enableLogging(logger);
- if (this.insertRowBinding != null) {
- this.insertRowBinding.enableLogging(logger);
- }
- this.rowBinding.enableLogging(logger);
- }
-
public String getId() { return repeaterId; }
public String getRepeaterPath() { return repeaterPath; }
public String getRowPath() { return rowPath; }
@@ -175,8 +168,8 @@
}
}
- if (getLogger().isDebugEnabled())
- getLogger().debug("done loading rows " + this);
+ if (LOG.isDebugEnabled())
+ LOG.debug("done loading rows " + this);
}
public void doSave(Widget frmModel, JXPathContext jctx) throws BindingException {
@@ -246,10 +239,12 @@
rowNode.appendChild(list.item(0));
}
}
- getLogger().debug("bound new row");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("bound new row");
+ }
}
} else {
- getLogger().warn("TempRepeaterBinding has detected rows to insert, " +
+ LOG.warn("TempRepeaterBinding has detected rows to insert, " +
"but misses the <on-insert-row> binding to do it.");
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/UnionJXPathBinding.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/UnionJXPathBinding.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/UnionJXPathBinding.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/UnionJXPathBinding.java Fri Sep 28 04:33:12 2007
@@ -20,6 +20,8 @@
import org.apache.cocoon.forms.formmodel.Widget;
import org.apache.commons.jxpath.JXPathContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* UnionJXPathBinding provides an implementation of a {@link Binding}
@@ -34,6 +36,7 @@
*/
public class UnionJXPathBinding extends ComposedJXPathBindingBase {
+ private static Log LOG = LogFactory.getLog( UnionJXPathBinding.class );
private final String xpath;
private final String widgetId;
@@ -77,8 +80,8 @@
subBindings[i].loadFormFromModel(unionWidget, subContext);
}
}
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("done loading " + this);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("done loading " + this);
}
}
@@ -97,8 +100,8 @@
subBindings[i].saveFormToModel(unionWidget, subContext);
}
}
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("done saving " + this);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("done saving " + this);
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/ValueJXPathBinding.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/ValueJXPathBinding.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/ValueJXPathBinding.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/ValueJXPathBinding.java Fri Sep 28 04:33:12 2007
@@ -18,14 +18,14 @@
import java.util.Locale;
-import org.apache.avalon.framework.logger.Logger;
-
import org.apache.cocoon.forms.datatype.convertor.ConversionResult;
import org.apache.cocoon.forms.datatype.convertor.Convertor;
import org.apache.cocoon.forms.formmodel.Widget;
import org.apache.commons.jxpath.JXPathContext;
import org.apache.commons.jxpath.JXPathException;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
/**
* ValueJXPathBinding provides an implementation of a {@link Binding}
@@ -37,6 +37,8 @@
*/
public class ValueJXPathBinding extends JXPathBindingBase {
+ private static Log LOG = LogFactory.getLog( ValueJXPathBinding.class );
+
/**
* The xpath expression to the objectModel property
*/
@@ -84,11 +86,6 @@
this.convertorLocale = convertorLocale;
}
- public void enableLogging(Logger logger) {
- super.enableLogging(logger);
- this.updateBinding.enableLogging(logger);
- }
-
public String getId() { return fieldId; }
public ComposedJXPathBindingBase getUpdateBinding() { return (ComposedJXPathBindingBase)updateBinding; }
@@ -112,13 +109,13 @@
else
value = null;
} else {
- getLogger().warn("Convertor ignored on backend-value which isn't of type String.");
+ LOG.warn("Convertor ignored on backend-value which isn't of type String.");
}
}
widget.setValue(value);
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Done loading " + this + " -- value= " + value);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Done loading " + this + " -- value= " + value);
}
}
@@ -134,8 +131,8 @@
}
Object oldValue = jxpc.getValue(this.xpath);
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("value= " + value + " -- oldvalue=" + oldValue);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("value= " + value + " -- oldvalue=" + oldValue);
}
boolean update = false;
@@ -151,8 +148,8 @@
} catch (JXPathException e) {
// if the value has been set to null and the underlying model is a bean, then
// JXPath will not be able to create a relative context
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("(Ignorable) problem binding field " + widget.getRequestParameterName(), e);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("(Ignorable) problem binding field " + widget.getRequestParameterName(), e);
}
}
if (subContext != null) {
@@ -162,8 +159,8 @@
update = true;
}
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("done saving " + this + " -- value= " + value + " -- on-update == " + update);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("done saving " + this + " -- value= " + value + " -- on-update == " + update);
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/Library.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/Library.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/Library.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/Library.java Fri Sep 28 04:33:12 2007
@@ -20,8 +20,6 @@
import java.util.Iterator;
import java.util.Map;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
-
import org.apache.cocoon.forms.binding.Binding;
import org.apache.cocoon.forms.binding.BindingManager;
import org.apache.cocoon.forms.binding.JXPathBindingManager;
@@ -29,6 +27,8 @@
import org.apache.cocoon.util.location.LocationAttributes;
import org.apache.commons.lang.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.w3c.dom.Element;
/**
@@ -36,8 +36,9 @@
*
* @version $Id$
*/
-public class Library extends AbstractLogEnabled {
+public class Library {
+ private static Log LOG = LogFactory.getLog( Library.class );
public static final String SEPARATOR = ":";
// own references
@@ -151,8 +152,8 @@
binding.setEnclosingLibrary(this);
definitions.put(binding.getId(), binding);
- if (getLogger().isDebugEnabled()) {
- getLogger().debug(this + ": Added binding '" + binding.getId() + "'");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug(this + ": Added binding '" + binding.getId() + "'");
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/LibraryManagerImpl.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/LibraryManagerImpl.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/LibraryManagerImpl.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/binding/library/LibraryManagerImpl.java Fri Sep 28 04:33:12 2007
@@ -16,23 +16,16 @@
*/
package org.apache.cocoon.forms.binding.library;
-import org.apache.avalon.framework.activity.Disposable;
-import org.apache.avalon.framework.component.Component;
-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.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.excalibur.source.Source;
import org.apache.excalibur.source.SourceResolver;
+import org.apache.cocoon.core.xml.SAXParser;
import org.apache.cocoon.forms.CacheManager;
import org.apache.cocoon.forms.binding.JXPathBindingManager;
import org.apache.cocoon.forms.util.DomHelper;
import org.apache.cocoon.util.location.LocationImpl;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
@@ -40,26 +33,19 @@
/**
* @version $Id$
*/
-public class LibraryManagerImpl extends AbstractLogEnabled
- implements LibraryManager, Serviceable, Configurable,
- Disposable, ThreadSafe, Component {
+public class LibraryManagerImpl implements LibraryManager {
+ private static Log LOG = LogFactory.getLog( LibraryManagerImpl.class );
+
protected static final String PREFIX = "CocoonFormBindingLibrary:";
- private ServiceManager manager;
private CacheManager cacheManager;
private JXPathBindingManager bindingManager;
+ private SourceResolver sourceResolver;
- public void configure(Configuration configuration) throws ConfigurationException {
- // TODO Read config to "preload" libraries
- }
-
- public void service(ServiceManager serviceManager) throws ServiceException {
- this.manager = serviceManager;
- this.cacheManager = (CacheManager)serviceManager.lookup(CacheManager.ROLE);
- }
+ private SAXParser parser;
public void setBindingManager(JXPathBindingManager bindingManager) {
this.bindingManager = bindingManager;
@@ -70,11 +56,9 @@
}
public Library get(String sourceURI, String baseURI) throws LibraryException {
- SourceResolver sourceResolver = null;
Source source = null;
try {
try {
- sourceResolver = (SourceResolver) manager.lookup(SourceResolver.ROLE);
source = sourceResolver.resolveURI(sourceURI, baseURI, null);
} catch (Exception e) {
throw new LibraryException("Unable to resolve library.",
@@ -83,18 +67,18 @@
Library lib = (Library) this.cacheManager.get(source, PREFIX);
if (lib != null && lib.dependenciesHaveChanged()) {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Library IS REMOVED from cache: '" + sourceURI + "' relative to '" + baseURI + "'");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Library IS REMOVED from cache: '" + sourceURI + "' relative to '" + baseURI + "'");
}
this.cacheManager.remove(source, PREFIX); // evict?
return null;
}
- if (getLogger().isDebugEnabled()) {
+ if (LOG.isDebugEnabled()) {
if (lib != null) {
- getLogger().debug("Library IS in cache: '" + sourceURI + "' relative to '" + baseURI + "'");
+ LOG.debug("Library IS in cache: '" + sourceURI + "' relative to '" + baseURI + "'");
} else {
- getLogger().debug("Library IS NOT in cache: '" + sourceURI + "' relative to '" + baseURI + "'");
+ LOG.debug("Library IS NOT in cache: '" + sourceURI + "' relative to '" + baseURI + "'");
}
}
@@ -103,9 +87,6 @@
if (source != null) {
sourceResolver.release(source);
}
- if (sourceResolver != null) {
- manager.release(sourceResolver);
- }
}
}
@@ -114,16 +95,14 @@
}
public Library load(String sourceURI, String baseURI) throws LibraryException {
- SourceResolver sourceResolver = null;
Source source = null;
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Loading library: '" + sourceURI + "' relative to '" + baseURI + "'");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Loading library: '" + sourceURI + "' relative to '" + baseURI + "'");
}
try {
try {
- sourceResolver = (SourceResolver) manager.lookup(SourceResolver.ROLE);
source = sourceResolver.resolveURI(sourceURI, baseURI, null);
} catch (Exception e) {
throw new LibraryException("Unable to resolve library.",
@@ -132,22 +111,22 @@
Library lib = (Library) this.cacheManager.get(source, PREFIX);
if (lib != null && lib.dependenciesHaveChanged()) {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Library IS EXPIRED in cache: '" + sourceURI + "' relative to '" + baseURI + "'");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Library IS EXPIRED in cache: '" + sourceURI + "' relative to '" + baseURI + "'");
}
lib = null;
}
if (lib == null) {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Library IS NOT in cache, loading: '" + sourceURI + "' relative to '" + baseURI + "'");
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Library IS NOT in cache, loading: '" + sourceURI + "' relative to '" + baseURI + "'");
}
try {
InputSource inputSource = new InputSource(source.getInputStream());
inputSource.setSystemId(source.getURI());
- Document doc = DomHelper.parse(inputSource, this.manager);
+ Document doc = DomHelper.parse(inputSource, parser);
lib = newLibrary();
lib.buildLibrary(doc.getDocumentElement());
@@ -163,31 +142,36 @@
if (source != null) {
sourceResolver.release(source);
}
- if (sourceResolver != null) {
- manager.release(sourceResolver);
- }
}
}
public Library newLibrary() {
Library lib = new Library(this, bindingManager.getBuilderAssistant());
- lib.enableLogging(getLogger());
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Created new library! " + lib);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Created new library! " + lib);
}
return lib;
}
- public void dispose() {
- this.manager.release(this.cacheManager);
- this.cacheManager = null;
- this.manager = null;
- }
-
public void debug(String msg) {
- if(getLogger().isDebugEnabled()) {
- getLogger().debug(msg);
+ if(LOG.isDebugEnabled()) {
+ LOG.debug(msg);
}
}
+
+ public void setCacheManager( CacheManager cacheManager )
+ {
+ this.cacheManager = cacheManager;
+ }
+
+ public void setSourceResolver( SourceResolver sourceResolver )
+ {
+ this.sourceResolver = sourceResolver;
+ }
+
+ public void setParser( SAXParser parser )
+ {
+ this.parser = parser;
+ }
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/AbstractJavaSelectionList.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/AbstractJavaSelectionList.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/AbstractJavaSelectionList.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/AbstractJavaSelectionList.java Fri Sep 28 04:33:12 2007
@@ -22,9 +22,6 @@
import java.util.List;
import java.util.Locale;
-import org.apache.avalon.framework.service.ServiceException;
-import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.avalon.framework.service.Serviceable;
import org.apache.cocoon.forms.FormsConstants;
import org.apache.cocoon.forms.datatype.convertor.Convertor;
import org.apache.cocoon.forms.datatype.convertor.DefaultFormatCache;
@@ -37,11 +34,9 @@
/**
* Abstract implementation of a JavaSelectionList
*/
-public abstract class AbstractJavaSelectionList implements JavaSelectionList,
- Serviceable {
+public abstract class AbstractJavaSelectionList implements JavaSelectionList {
protected Datatype datatype;
- protected ServiceManager manager;
private HashMap attributes;
private List items;
@@ -51,10 +46,6 @@
public AbstractJavaSelectionList() {
this.items = new ArrayList();
this.rebuild = true;
- }
-
- public void service(ServiceManager manager) throws ServiceException {
- this.manager = manager;
}
public String getAttribute(String name) {
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DatatypeBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DatatypeBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DatatypeBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DatatypeBuilder.java Fri Sep 28 04:33:12 2007
@@ -23,11 +23,8 @@
* Implementations of this class build a Datatype from an XML description
* (a DOM Element).
*
- * <p>These builders should be threadsafe, only one instance of them will be created.
+ * <p>These builders should be threadsafe (Spring scope="singleton").
*
- * <p>Implementations may implement Avalon's Serviceable interface to get access to
- * other components.
- *
* @version $Id$
*/
public interface DatatypeBuilder {
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultDatatypeManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultDatatypeManager.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultDatatypeManager.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultDatatypeManager.java Fri Sep 28 04:33:12 2007
@@ -16,25 +16,12 @@
*/
package org.apache.cocoon.forms.datatype;
-import org.apache.avalon.framework.thread.ThreadSafe;
-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.service.ServiceException;
-import org.apache.avalon.framework.service.Serviceable;
-import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.avalon.framework.activity.Initializable;
-import org.apache.avalon.framework.activity.Disposable;
-import org.apache.avalon.framework.CascadingException;
-import org.apache.avalon.framework.context.Contextualizable;
-import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.context.ContextException;
import org.apache.cocoon.forms.datatype.convertor.Convertor;
import org.apache.cocoon.forms.util.DomHelper;
-import org.apache.cocoon.forms.util.SimpleServiceSelector;
import org.w3c.dom.Element;
+import java.util.Map;
+
/**
* Implementation of the {@link DatatypeManager} component.
*
@@ -46,71 +33,43 @@
* @version $Id$
*
*/
-public class DefaultDatatypeManager extends AbstractLogEnabled implements DatatypeManager, ThreadSafe, Serviceable,
- Configurable, Initializable, Disposable, Contextualizable {
- private SimpleServiceSelector typeBuilderSelector;
- private SimpleServiceSelector validationRuleBuilderSelector;
- private ServiceManager serviceManager;
- private Configuration configuration;
- private Context context;
-
- public void contextualize(Context context) throws ContextException {
- this.context = context;
- }
-
- public void configure(Configuration configuration) throws ConfigurationException {
- this.configuration = configuration;
- }
-
- public void service(ServiceManager serviceManager) throws ServiceException {
- this.serviceManager = serviceManager;
- }
-
- public void initialize() throws Exception {
- typeBuilderSelector = new SimpleServiceSelector("datatype", DatatypeBuilder.class);
- typeBuilderSelector.enableLogging(getLogger());
- typeBuilderSelector.contextualize(context);
- typeBuilderSelector.service(serviceManager);
- typeBuilderSelector.configure(configuration.getChild("datatypes"));
-
- validationRuleBuilderSelector = new SimpleServiceSelector("validation-rule", ValidationRuleBuilder.class);
- validationRuleBuilderSelector.enableLogging(getLogger());
- validationRuleBuilderSelector.contextualize(context);
- validationRuleBuilderSelector.service(serviceManager);
- validationRuleBuilderSelector.configure(configuration.getChild("validation-rules"));
-
- configuration = null;
- }
+public class DefaultDatatypeManager implements DatatypeManager {
+ private Map datatypeBuilders;
+ private Map validatorRuleBuilders;
public Datatype createDatatype(Element datatypeElement, boolean arrayType) throws Exception {
String typeName = DomHelper.getAttribute(datatypeElement, "base");
- DatatypeBuilder builder;
- try {
- builder = (DatatypeBuilder) typeBuilderSelector.select(typeName);
- } catch (ServiceException e) {
- throw new CascadingException("Unknown datatype '" + typeName + "' specified at " + DomHelper.getLocation(datatypeElement), e);
+ DatatypeBuilder builder = (DatatypeBuilder) datatypeBuilders.get(typeName);
+ if (builder == null) {
+ throw new Exception("Unknown datatype '" + typeName + "' specified at " + DomHelper.getLocation(datatypeElement));
}
return builder.build(datatypeElement, arrayType, this);
}
public ValidationRule createValidationRule(Element validationRuleElement) throws Exception {
String name = validationRuleElement.getLocalName();
- ValidationRuleBuilder builder;
- try {
- builder = (ValidationRuleBuilder) validationRuleBuilderSelector.select(name);
- } catch (ServiceException e) {
- throw new CascadingException("Unknown validation rule \"" + name + "\" specified at " + DomHelper.getLocation(validationRuleElement), e);
+ ValidationRuleBuilder builder = (ValidationRuleBuilder) validatorRuleBuilders.get(name);
+ if (builder == null) {
+ throw new Exception("Unknown validation rule \"" + name + "\" specified at " + DomHelper.getLocation(validationRuleElement));
}
return builder.build(validationRuleElement);
}
public Convertor createConvertor(String dataTypeName, Element convertorElement) throws Exception {
- DatatypeBuilder datatypeBulder = (DatatypeBuilder)typeBuilderSelector.select(dataTypeName);
- return datatypeBulder.buildConvertor(convertorElement);
+ DatatypeBuilder builder = (DatatypeBuilder)datatypeBuilders.get(dataTypeName);
+ if (builder == null) {
+ throw new Exception("Unknown datatype '" + dataTypeName + "' specified for " + DomHelper.getLocation(convertorElement));
+ }
+ return builder.buildConvertor(convertorElement);
+ }
+
+ public void setDatatypeBuilders( Map datatypeBuilders )
+ {
+ this.datatypeBuilders = datatypeBuilders;
}
- public void dispose() {
- typeBuilderSelector.dispose();
- validationRuleBuilderSelector.dispose();
+ public void setValidatorRuleBuilders( Map validatorRuleBuilders )
+ {
+ this.validatorRuleBuilders = validatorRuleBuilders;
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultSelectionListBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultSelectionListBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultSelectionListBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DefaultSelectionListBuilder.java Fri Sep 28 04:33:12 2007
@@ -20,22 +20,19 @@
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
-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.service.ServiceException;
-import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.avalon.framework.service.Serviceable;
+import org.apache.cocoon.core.xml.SAXParser;
import org.apache.cocoon.forms.FormsConstants;
import org.apache.cocoon.forms.datatype.convertor.Convertor;
import org.apache.cocoon.forms.datatype.convertor.DefaultFormatCache;
import org.apache.cocoon.forms.datatype.convertor.ConversionResult;
import org.apache.cocoon.forms.util.DomHelper;
+import org.apache.cocoon.processing.ProcessInfoProvider;
import org.apache.cocoon.util.Deprecation;
import org.apache.cocoon.util.location.LocationAttributes;
import org.apache.excalibur.source.Source;
import org.apache.excalibur.source.SourceResolver;
import org.apache.excalibur.xml.sax.XMLizable;
+import org.apache.excalibur.xmlizer.XMLizer;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
@@ -51,18 +48,12 @@
*
* @version $Id$
*/
-public class DefaultSelectionListBuilder implements SelectionListBuilder, Serviceable, Contextualizable {
+public class DefaultSelectionListBuilder implements SelectionListBuilder {
- private ServiceManager serviceManager;
- private Context context;
-
- public void contextualize(Context context) throws ContextException {
- this.context = context;
- }
-
- public void service(ServiceManager manager) throws ServiceException {
- this.serviceManager = manager;
- }
+ private SourceResolver sourceResolver;
+ private XMLizer xmlizer;
+ private ProcessInfoProvider processInfoProvider;
+ private SAXParser parser;
public SelectionList build(Element selectionListElement, Datatype datatype) throws Exception {
SelectionList selectionList;
@@ -90,7 +81,7 @@
}
// Create SelectionList
if (dynamic) {
- selectionList = new DynamicSelectionList(datatype, src, usePerRequestCache, serviceManager, context);
+ selectionList = new DynamicSelectionList(datatype, src, usePerRequestCache, xmlizer, sourceResolver, processInfoProvider);
} else {
selectionListElement = readSelectionList(src);
selectionList = buildStaticList(selectionListElement, datatype);
@@ -153,14 +144,12 @@
}
private Element readSelectionList(String src) throws Exception {
- SourceResolver resolver = null;
Source source = null;
try {
- resolver = (SourceResolver)serviceManager.lookup(SourceResolver.ROLE);
- source = resolver.resolveURI(src);
+ source = sourceResolver.resolveURI(src);
InputSource inputSource = new InputSource(source.getInputStream());
inputSource.setSystemId(source.getURI());
- Document document = DomHelper.parse(inputSource, this.serviceManager);
+ Document document = DomHelper.parse(inputSource, parser);
Element selectionListElement = document.getDocumentElement();
if (!FormsConstants.DEFINITION_NS.equals(selectionListElement.getNamespaceURI()) ||
!"selection-list".equals(selectionListElement.getLocalName())) {
@@ -170,12 +159,29 @@
return selectionListElement;
} finally {
- if (resolver != null) {
- if (source != null) {
- resolver.release(source);
- }
- serviceManager.release(resolver);
+ if (source != null) {
+ sourceResolver.release(source);
}
}
+ }
+
+ public void setSourceResolver( SourceResolver sourceResolver )
+ {
+ this.sourceResolver = sourceResolver;
+ }
+
+ public void setXmlizer( XMLizer xmlizer )
+ {
+ this.xmlizer = xmlizer;
+ }
+
+ public void setProcessInfoProvider( ProcessInfoProvider processInfoProvider )
+ {
+ this.processInfoProvider = processInfoProvider;
+ }
+
+ public void setParser( SAXParser parser )
+ {
+ this.parser = parser;
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DynamicSelectionList.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DynamicSelectionList.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DynamicSelectionList.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/DynamicSelectionList.java Fri Sep 28 04:33:12 2007
@@ -20,16 +20,15 @@
import java.io.UnsupportedEncodingException;
import java.util.Locale;
-import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.service.ServiceManager;
+import javax.servlet.http.HttpServletRequest;
+
import org.apache.cocoon.ProcessingException;
-import org.apache.cocoon.components.ContextHelper;
import org.apache.cocoon.components.source.SourceUtil;
-import org.apache.cocoon.environment.Request;
import org.apache.cocoon.forms.FormsConstants;
import org.apache.cocoon.forms.datatype.convertor.ConversionResult;
import org.apache.cocoon.forms.datatype.convertor.Convertor;
import org.apache.cocoon.forms.datatype.convertor.DefaultFormatCache;
+import org.apache.cocoon.processing.ProcessInfoProvider;
import org.apache.cocoon.util.NetUtils;
import org.apache.cocoon.xml.AbstractXMLPipe;
import org.apache.cocoon.xml.AttributesImpl;
@@ -38,6 +37,7 @@
import org.apache.cocoon.xml.dom.DOMBuilder;
import org.apache.excalibur.source.Source;
import org.apache.excalibur.source.SourceResolver;
+import org.apache.excalibur.xmlizer.XMLizer;
import org.w3c.dom.Element;
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
@@ -61,8 +61,9 @@
private String src;
private boolean usePerRequestCache;
private Datatype datatype;
- private ServiceManager serviceManager;
- private Context context;
+ private XMLizer xmlizer;
+ private SourceResolver sourceResolver;
+ private ProcessInfoProvider processInfoProvider;
/**
* @param datatype
@@ -71,12 +72,13 @@
* @param serviceManager
* @param context
*/
- public DynamicSelectionList(Datatype datatype, String src, boolean usePerRequestCache, ServiceManager serviceManager, Context context) {
+ public DynamicSelectionList(Datatype datatype, String src, boolean usePerRequestCache, XMLizer xmlizer, SourceResolver sourceResolver, ProcessInfoProvider processInfoProvider) {
this.datatype = datatype;
this.src = src;
- this.serviceManager = serviceManager;
this.usePerRequestCache = usePerRequestCache;
- this.context = context;
+ this.xmlizer = xmlizer;
+ this.sourceResolver = sourceResolver;
+ this.processInfoProvider = processInfoProvider;
}
/**
@@ -85,12 +87,8 @@
* @param src -
* @param serviceManager -
*/
- public DynamicSelectionList(Datatype datatype, String src, ServiceManager serviceManager) {
- this.usePerRequestCache = false;
- this.context = null;
- this.datatype = datatype;
- this.src = src;
- this.serviceManager = serviceManager;
+ public DynamicSelectionList(Datatype datatype, String src, XMLizer xmlizer, SourceResolver sourceResolver, ProcessInfoProvider processInfoProvider) {
+ this(datatype, src, false, xmlizer, sourceResolver, processInfoProvider);
}
public Datatype getDatatype() {
@@ -105,17 +103,15 @@
throws ProcessingException, SAXException, IOException {
SelectionListHandler handler = new SelectionListHandler(locale);
handler.setContentHandler(contentHandler);
- SourceUtil.toSAX(serviceManager, source, null, handler);
+ SourceUtil.toSAX(xmlizer, source, null, handler);
}
/*
* This method generate SaxFragment directly from source.
*/
private void generateSaxFragmentFromSrc(String url, ContentHandler contentHandler, Locale locale) throws SAXException {
- SourceResolver sourceResolver = null;
Source source = null;
try {
- sourceResolver = (SourceResolver)serviceManager.lookup(SourceResolver.ROLE);
source = sourceResolver.resolveURI(url);
generateSaxFragment(contentHandler, locale, source);
} catch (SAXException e) {
@@ -127,7 +123,6 @@
if (source != null) {
try { sourceResolver.release(source); } catch (Exception e) {}
}
- serviceManager.release(sourceResolver);
}
}
}
@@ -153,7 +148,7 @@
if (usePerRequestCache) {
// Search the sax buffer in request attributes
- Request request = ContextHelper.getRequest(this.context);
+ HttpServletRequest request = processInfoProvider.getRequest();
String attributeName = "DynamicSelectionListCache/" + url;
SaxBuffer saxBuffer = (SaxBuffer)request.getAttribute(attributeName);
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionList.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionList.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionList.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionList.java Fri Sep 28 04:33:12 2007
@@ -19,11 +19,10 @@
import java.util.Iterator;
import java.util.Locale;
-import org.apache.avalon.framework.context.Context;
-import org.apache.cocoon.components.ContextHelper;
import org.apache.cocoon.components.flow.FlowHelper;
import org.apache.cocoon.forms.FormsConstants;
import org.apache.cocoon.forms.util.I18nMessage;
+import org.apache.cocoon.processing.ProcessInfoProvider;
import org.apache.cocoon.xml.AttributesImpl;
import org.apache.cocoon.xml.XMLUtils;
import org.apache.commons.jxpath.JXPathContext;
@@ -41,7 +40,7 @@
*/
public class FlowJXPathSelectionList implements SelectionList {
- private Context context;
+ private ProcessInfoProvider processInfoProvider;
private String listPath;
private String valuePath;
private String labelPath;
@@ -53,7 +52,7 @@
private String i18nCatalog;
private boolean labelIsI18nKey = false;
- public FlowJXPathSelectionList(Context context,
+ public FlowJXPathSelectionList(ProcessInfoProvider processInfoProvider,
String listPath,
String valuePath,
String labelPath,
@@ -62,7 +61,7 @@
boolean nullTextIsI18nKey,
String i18nCatalog,
boolean labelIsI18nKey) {
- this.context = context;
+ this.processInfoProvider = processInfoProvider;
this.listPath = listPath;
this.valuePath = valuePath;
this.labelPath = labelPath;
@@ -99,7 +98,7 @@
JXPathContext ctx = null;
Iterator iter = null;
if (model == null) {
- Object flowData = FlowHelper.getContextObject(ContextHelper.getObjectModel(this.context));
+ Object flowData = FlowHelper.getContextObject(processInfoProvider.getObjectModel());
if (flowData == null) {
throw new SAXException("No flow data to produce selection list");
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/FlowJXPathSelectionListBuilder.java Fri Sep 28 04:33:12 2007
@@ -16,11 +16,9 @@
*/
package org.apache.cocoon.forms.datatype;
-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.forms.FormsConstants;
import org.apache.cocoon.forms.util.DomHelper;
+import org.apache.cocoon.processing.ProcessInfoProvider;
import org.w3c.dom.Element;
import java.util.Map;
@@ -48,13 +46,9 @@
* @see org.apache.cocoon.forms.datatype.FlowJXPathSelectionList
* @version $Id$
*/
-public class FlowJXPathSelectionListBuilder implements SelectionListBuilder, Contextualizable {
+public class FlowJXPathSelectionListBuilder implements SelectionListBuilder {
- private Context context;
-
- public void contextualize(Context context) throws ContextException {
- this.context = context;
- }
+ private ProcessInfoProvider processInfoProvider;
public SelectionList build(Element selectionListElement, Datatype datatype) throws Exception {
@@ -88,7 +82,7 @@
String i18nCatalog = DomHelper.getAttribute(selectionListElement, "catalogue", null);
- return new FlowJXPathSelectionList(context,
+ return new FlowJXPathSelectionList(processInfoProvider,
listPath,
valuePath,
labelPath,
@@ -97,6 +91,11 @@
nullTextIsI18nKey,
i18nCatalog,
labelIsI18nKey);
+ }
+
+ public void setProcessInfoProvider( ProcessInfoProvider processInfoProvider )
+ {
+ this.processInfoProvider = processInfoProvider;
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionList.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionList.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionList.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionList.java Fri Sep 28 04:33:12 2007
@@ -19,11 +19,10 @@
import java.util.Locale;
import java.util.Map;
-import org.apache.avalon.framework.context.Context;
-import org.apache.cocoon.components.ContextHelper;
import org.apache.cocoon.forms.FormsConstants;
import org.apache.cocoon.forms.util.I18nMessage;
import org.apache.cocoon.forms.util.JavaScriptHelper;
+import org.apache.cocoon.processing.ProcessInfoProvider;
import org.apache.cocoon.util.location.Locatable;
import org.apache.cocoon.util.location.LocatedRuntimeException;
import org.apache.cocoon.util.location.Location;
@@ -45,15 +44,15 @@
*/
public class JavaScriptSelectionList implements FilterableSelectionList, Locatable {
- private Context context;
+ private ProcessInfoProvider processInfoProvider;
private Datatype type;
private Function function;
private Location location = null;
private boolean labelIsI18nKey = false;
private String i18nCatalog = null;
- public JavaScriptSelectionList(Context context, Datatype type, Function function, String catalogue, Location location) {
- this.context = context;
+ public JavaScriptSelectionList(ProcessInfoProvider processInfoProvider, Datatype type, Function function, String catalogue, Location location) {
+ this.processInfoProvider = processInfoProvider;
this.type = type;
this.function = function;
this.location = location;
@@ -74,7 +73,7 @@
}
public void generateSaxFragment(ContentHandler contentHandler, Locale locale, String filter) throws SAXException {
- Map objectModel = ContextHelper.getObjectModel(this.context);
+ Map objectModel = processInfoProvider.getObjectModel();
Object result;
try {
result = JavaScriptHelper.callFunction(function, null /*this*/, new Object[] {filter}, objectModel);
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionListBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionListBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionListBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaScriptSelectionListBuilder.java Fri Sep 28 04:33:12 2007
@@ -16,11 +16,9 @@
*/
package org.apache.cocoon.forms.datatype;
-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.forms.util.DomHelper;
import org.apache.cocoon.forms.util.JavaScriptHelper;
+import org.apache.cocoon.processing.ProcessInfoProvider;
import org.mozilla.javascript.Function;
import org.w3c.dom.Element;
@@ -45,20 +43,21 @@
* @since 2.1.9
* @version $Id$
*/
-public class JavaScriptSelectionListBuilder implements SelectionListBuilder, Contextualizable {
-
- private Context context;
-
- public void contextualize(Context context) throws ContextException {
- this.context = context;
- }
+public class JavaScriptSelectionListBuilder implements SelectionListBuilder {
+ private ProcessInfoProvider processInfoProvider;
+
public SelectionList build(Element selectionListElement, Datatype datatype) throws Exception {
String i18nCatalog = DomHelper.getAttribute(selectionListElement, "catalogue", null);
Function function = JavaScriptHelper.buildFunction(selectionListElement, "buildSelectionList", new String[] { "filter" });
- return new JavaScriptSelectionList(context, datatype, function, i18nCatalog, DomHelper.getLocationObject(selectionListElement));
+ return new JavaScriptSelectionList(processInfoProvider, datatype, function, i18nCatalog, DomHelper.getLocationObject(selectionListElement));
+ }
+
+ public void setProcessInfoProvider( ProcessInfoProvider processInfoProvider )
+ {
+ this.processInfoProvider = processInfoProvider;
}
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaSelectionListBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaSelectionListBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaSelectionListBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/JavaSelectionListBuilder.java Fri Sep 28 04:33:12 2007
@@ -16,59 +16,49 @@
*/
package org.apache.cocoon.forms.datatype;
-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.context.Contextualizable;
-import org.apache.avalon.framework.context.Context;
-import org.apache.avalon.framework.context.ContextException;
-import org.apache.avalon.framework.thread.ThreadSafe;
-import org.apache.avalon.framework.component.Component;
-
-import org.apache.cocoon.components.LifecycleHelper;
import org.apache.cocoon.forms.util.DomHelper;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.BeanFactory;
+import org.springframework.beans.factory.BeanFactoryAware;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
/**
- * Builds {@link SelectionList}s from a JavaSelectionList class
+ * Builds {@link SelectionList}s from a JavaSelectionList classes configured in Spring context
*
* @version $Id$
*/
-public class JavaSelectionListBuilder extends AbstractLogEnabled
- implements SelectionListBuilder,
- Contextualizable, Serviceable, ThreadSafe, Component {
-
- /**
- * The Avalon Context
- */
- private Context context;
-
- /**
- * The Service Manager
- */
- private ServiceManager manager;
+public class JavaSelectionListBuilder implements SelectionListBuilder, BeanFactoryAware {
- public void contextualize(Context context) throws ContextException {
- this.context = context;
- }
+ private static Log LOG = LogFactory.getLog( JavaSelectionListBuilder.class );
+ private BeanFactory beanFactory;
- public void service(ServiceManager manager) throws ServiceException {
- this.manager = manager;
+ public void setBeanFactory( BeanFactory beanFactory )
+ throws BeansException
+ {
+ this.beanFactory = beanFactory;
}
-
+
public SelectionList build(Element selectionListElement, Datatype datatype)
throws Exception {
- String className = DomHelper.getAttribute(selectionListElement, "class");
+
+ // hard way deprecation
+ if (DomHelper.getAttribute(selectionListElement, "class", null) != null) {
+ throw new RuntimeException("The 'class' attribute is not supported anymore at "
+ + DomHelper.getLocationObject( selectionListElement )
+ + ". Use a 'ref' attribute to address a Spring bean");
+ }
+
+ String beanRef = DomHelper.getAttribute(selectionListElement, "ref");
boolean nullable = DomHelper.getAttributeAsBoolean(selectionListElement, "nullable", true);
try {
- Class clasz = Thread.currentThread().getContextClassLoader().loadClass(className);
- if (JavaSelectionList.class.isAssignableFrom(clasz)) {
- JavaSelectionList list = (JavaSelectionList) clasz.newInstance();
- LifecycleHelper.setupComponent(list, getLogger(), this.context, this.manager, null, true);
+ Object bean = beanFactory.getBean(beanRef);
+ if (bean != null && bean instanceof JavaSelectionList) {
+ JavaSelectionList list = (JavaSelectionList) bean;
list.setDatatype(datatype);
list.setNullable(nullable);
@@ -83,12 +73,19 @@
return list;
} else {
- getLogger().warn("Class " + className + " does not implement JavaSelectionList, returning empty selection list.");
+ LOG.warn("Spring bean reference " + beanRef + " is not a "
+ + JavaSelectionList.class.getName() + ", , returning empty selection list: "
+ + DomHelper.getLocationObject( selectionListElement ).getDescription());
return new StaticSelectionList(datatype);
}
+ } catch (BeansException be) {
+ LOG.warn("Spring bean reference " + beanRef
+ + " does not exist, returning empty selection list: "
+ + DomHelper.getLocationObject( selectionListElement ).getDescription());
+ return new StaticSelectionList(datatype);
} catch (Exception e) {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Got exception in build, re-throwing", e);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("Got exception in build, re-throwing", e);
}
throw e;
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertor.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertor.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertor.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertor.java Fri Sep 28 04:33:12 2007
@@ -16,7 +16,6 @@
*/
package org.apache.cocoon.forms.datatype.convertor;
-import org.apache.avalon.framework.CascadingRuntimeException;
import org.apache.commons.collections.map.ReferenceMap;
import org.apache.commons.jxpath.JXPathContext;
@@ -64,7 +63,7 @@
try {
m_class = Thread.currentThread().getContextClassLoader().loadClass(className);
} catch (ClassNotFoundException e) {
- throw new CascadingRuntimeException("Class " + className + " not found", e);
+ throw new RuntimeException("Class " + className + " not found", e);
}
m_idPath = idPath;
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BeanConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -5,9 +5,9 @@
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -16,64 +16,7 @@
*/
package org.apache.cocoon.forms.datatype.convertor;
-import org.apache.cocoon.forms.FormsConstants;
-import org.apache.cocoon.forms.util.DomHelper;
-
-import org.w3c.dom.Element;
-
-
-/**
- * Creates {@link BeanConvertor}s
- *
- * <p>
- * The optional <fd:bean>FQCN</fd:bean> attribute is used to give
- * this convertor a hint of which concrete bean class we are going to work with.
- * If this attribute is not specified java.lang.Object is used.
- * <p>
- * Sometimes the toString() method doesn't give a good representation of a
- * Java Bean suited for selection list IDs. For this an optional
- * <fd:id-path>jx-path</fd:id-path> attribute can be specified to
- * have this convertor to use a different string representation.
- * </p>
- *
- * @version $Id$
- */
-public class BeanConvertorBuilder
- implements ConvertorBuilder
+public interface BeanConvertorBuilder
+ extends ConvertorBuilder
{
- //~ Methods ----------------------------------------------------------------
-
- /**
- * Build a {@link BeanConvertor}
- *
- * @param configElement The configuration element
- *
- * @return An initialized {@link Convertor}
- *
- * @throws Exception In case of failure
- */
- public Convertor build( final Element configElement )
- throws Exception
- {
- if( configElement == null )
- {
- return null;
- }
-
- final Element beanEl =
- DomHelper.getChildElement( configElement, FormsConstants.DEFINITION_NS,
- "bean", false );
- final String clazz =
- ( ( beanEl == null ) ? Object.class.getName( )
- : beanEl.getFirstChild( ).getNodeValue( ) );
- final Element idPathEl =
- DomHelper.getChildElement( configElement, FormsConstants.DEFINITION_NS,
- "id-path", false );
- final String idPath =
- ( ( idPathEl != null )
- ? idPathEl.getFirstChild( ).getNodeValue( ) : null );
- final BeanConvertor convertor = new BeanConvertor( clazz, idPath );
-
- return convertor;
- }
}
Added: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BooleanConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BooleanConvertorBuilder.java?rev=580312&view=auto
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BooleanConvertorBuilder.java (added)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BooleanConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.forms.datatype.convertor;
+
+public interface BooleanConvertorBuilder
+ extends ConvertorBuilder
+{
+}
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BooleanConvertorBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/BooleanConvertorBuilder.java
------------------------------------------------------------------------------
svn:keywords = Id
Added: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DateConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DateConvertorBuilder.java?rev=580312&view=auto
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DateConvertorBuilder.java (added)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DateConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.forms.datatype.convertor;
+
+public interface DateConvertorBuilder
+ extends ConvertorBuilder
+{
+}
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DateConvertorBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DateConvertorBuilder.java
------------------------------------------------------------------------------
svn:keywords = Id
Added: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DecimalConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DecimalConvertorBuilder.java?rev=580312&view=auto
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DecimalConvertorBuilder.java (added)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DecimalConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.forms.datatype.convertor;
+
+public interface DecimalConvertorBuilder
+ extends ConvertorBuilder
+{
+}
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DecimalConvertorBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DecimalConvertorBuilder.java
------------------------------------------------------------------------------
svn:keywords = Id
Added: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DoubleConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DoubleConvertorBuilder.java?rev=580312&view=auto
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DoubleConvertorBuilder.java (added)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DoubleConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.forms.datatype.convertor;
+
+public interface DoubleConvertorBuilder
+ extends ConvertorBuilder
+{
+}
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DoubleConvertorBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DoubleConvertorBuilder.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DummyStringConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DummyStringConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DummyStringConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/DummyStringConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -23,7 +23,7 @@
*
* @version $Id$
*/
-public class DummyStringConvertorBuilder implements ConvertorBuilder {
+public class DummyStringConvertorBuilder implements StringConvertorBuilder {
public Convertor build(Element configElement) throws Exception {
return new DummyStringConvertor();
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/EnumConvertor.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/EnumConvertor.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/EnumConvertor.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/EnumConvertor.java Fri Sep 28 04:33:12 2007
@@ -21,7 +21,6 @@
import java.lang.reflect.Modifier;
import java.util.Locale;
-import org.apache.avalon.framework.CascadingRuntimeException;
import org.xml.sax.ContentHandler;
import org.xml.sax.SAXException;
@@ -48,7 +47,7 @@
clazz = Thread.currentThread().getContextClassLoader().loadClass(className);
}
catch (ClassNotFoundException e) {
- throw new CascadingRuntimeException("Class " + className + " not found", e);
+ throw new RuntimeException("Class " + className + " not found", e);
}
}
@@ -77,7 +76,7 @@
return new ConversionResult(field.get(null));
}
} catch (Exception e) {
- throw new CascadingRuntimeException("Got exception trying to convert " + value, e);
+ throw new RuntimeException("Got exception trying to convert " + value, e);
}
}
@@ -99,7 +98,7 @@
return clazz.getName() + "." + fields[i].getName();
}
} catch (Exception e) {
- throw new CascadingRuntimeException("Got exception trying to get value of field " + fields[i], e);
+ throw new RuntimeException("Got exception trying to get value of field " + fields[i], e);
}
}
// Fall back on toString
Added: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FloatConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FloatConvertorBuilder.java?rev=580312&view=auto
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FloatConvertorBuilder.java (added)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FloatConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.cocoon.forms.datatype.convertor;
+
+public interface FloatConvertorBuilder
+ extends ConvertorBuilder
+{
+}
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FloatConvertorBuilder.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FloatConvertorBuilder.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDateConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDateConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDateConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDateConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -29,7 +29,7 @@
*
* @version $Id$
*/
-public class FormattingDateConvertorBuilder implements ConvertorBuilder {
+public class FormattingDateConvertorBuilder implements DateConvertorBuilder {
public Convertor build(Element configElement) throws Exception {
FormattingDateConvertor convertor = new FormattingDateConvertor();
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDecimalConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDecimalConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDecimalConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDecimalConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -28,7 +28,7 @@
*
* @version $Id$
*/
-public class FormattingDecimalConvertorBuilder implements ConvertorBuilder {
+public class FormattingDecimalConvertorBuilder implements DecimalConvertorBuilder {
public Convertor build(Element configElement) throws Exception {
FormattingDecimalConvertor convertor = createConvertor();
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDoubleConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDoubleConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDoubleConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingDoubleConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -21,7 +21,7 @@
*
* @version $Id$
*/
-public class FormattingDoubleConvertorBuilder extends FormattingDecimalConvertorBuilder {
+public class FormattingDoubleConvertorBuilder extends FormattingDecimalConvertorBuilder implements DoubleConvertorBuilder {
protected FormattingDecimalConvertor createConvertor() {
return new FormattingDoubleConvertor();
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingFloatConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingFloatConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingFloatConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingFloatConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -21,7 +21,7 @@
*
* @version $Id$
*/
-public class FormattingFloatConvertorBuilder extends FormattingDecimalConvertorBuilder {
+public class FormattingFloatConvertorBuilder extends FormattingDecimalConvertorBuilder implements FloatConvertorBuilder {
protected FormattingDecimalConvertor createConvertor() {
return new FormattingFloatConvertor();
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingIntegerConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingIntegerConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingIntegerConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingIntegerConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -21,7 +21,7 @@
*
* @version $Id$
*/
-public class FormattingIntegerConvertorBuilder extends FormattingDecimalConvertorBuilder {
+public class FormattingIntegerConvertorBuilder extends FormattingDecimalConvertorBuilder implements IntegerConvertorBuilder {
protected FormattingDecimalConvertor createConvertor() {
return new FormattingIntegerConvertor();
}
Modified: cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingLongConvertorBuilder.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingLongConvertorBuilder.java?rev=580312&r1=580311&r2=580312&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingLongConvertorBuilder.java (original)
+++ cocoon/trunk/blocks/cocoon-forms/cocoon-forms-impl/src/main/java/org/apache/cocoon/forms/datatype/convertor/FormattingLongConvertorBuilder.java Fri Sep 28 04:33:12 2007
@@ -21,7 +21,7 @@
*
* @version $Id$
*/
-public class FormattingLongConvertorBuilder extends FormattingDecimalConvertorBuilder {
+public class FormattingLongConvertorBuilder extends FormattingDecimalConvertorBuilder implements LongConvertorBuilder {
protected FormattingDecimalConvertor createConvertor() {
return new FormattingLongConvertor();
}