You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by si...@apache.org on 2011/02/12 16:40:45 UTC
svn commit: r1070093 - in
/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3:
internal/rulesbinder/FactoryCreateBuilderImpl.java
rulesbinder/FactoryCreateBuilder.java
Author: simonetripodi
Date: Sat Feb 12 15:40:45 2011
New Revision: 1070093
URL: http://svn.apache.org/viewvc?rev=1070093&view=rev
Log:
fixed ofType(Class) generics, otherwise the compile get in trouble with ofType(String) method...
Modified:
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/FactoryCreateBuilderImpl.java
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/rulesbinder/FactoryCreateBuilder.java
Modified: commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/FactoryCreateBuilderImpl.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/FactoryCreateBuilderImpl.java?rev=1070093&r1=1070092&r2=1070093&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/FactoryCreateBuilderImpl.java (original)
+++ commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/internal/rulesbinder/FactoryCreateBuilderImpl.java Sat Feb 12 15:40:45 2011
@@ -51,6 +51,7 @@ final class FactoryCreateBuilderImpl
/**
* {@inheritDoc}
*/
+ @SuppressWarnings("unchecked") // if class not assignable, will be notified via exception
public FactoryCreateBuilder ofType(String className) {
if (className == null) {
this.reportError("factoryCreate().ofType(Class<?>)", "NULL Java type not allowed");
@@ -59,7 +60,7 @@ final class FactoryCreateBuilderImpl
try {
Class<?> type = this.classLoader.loadClass(className);
if (!ObjectCreationFactory.class.isAssignableFrom(type)) {
- this.reportError("factoryCreate().ofType(Class<?>)", "NULL Java type not allowed");
+ this.reportError("factoryCreate().ofType(String)", "NULL Java type not allowed");
return this;
}
@@ -74,7 +75,7 @@ final class FactoryCreateBuilderImpl
/**
* {@inheritDoc}
*/
- public <T> FactoryCreateBuilder ofType(Class<? extends ObjectCreationFactory<T>> type) {
+ public <T, F extends ObjectCreationFactory<T>> FactoryCreateBuilder ofType(Class<F> type) {
if (type == null) {
this.reportError("factoryCreate().ofType(Class<?>)", "NULL Java type not allowed");
}
Modified: commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/rulesbinder/FactoryCreateBuilder.java
URL: http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/rulesbinder/FactoryCreateBuilder.java?rev=1070093&r1=1070092&r2=1070093&view=diff
==============================================================================
--- commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/rulesbinder/FactoryCreateBuilder.java (original)
+++ commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/rulesbinder/FactoryCreateBuilder.java Sat Feb 12 15:40:45 2011
@@ -41,7 +41,7 @@ public interface FactoryCreateBuilder ex
* @param type Java class of the object creation factory class
* @return this builder instance
*/
- <T> FactoryCreateBuilder ofType(Class<? extends ObjectCreationFactory<T>> type);
+ <T, F extends ObjectCreationFactory<T>> FactoryCreateBuilder ofType(Class<F> type);
/**
* Construct a factory create rule using the given, already instantiated, {@link ObjectCreationFactory}.