From b857ad5df2ac17765e61916d2b7415ec30c4a393 Mon Sep 17 00:00:00 2001 From: Darrell DeBoer Date: Sun, 24 Mar 2002 07:53:54 +0000 Subject: [PATCH] * Added 'property-resolver' role, with 'default' and 'classic' implementations. * Ant1CompatProject doesn't instantiate ClassicPropertyResolver directly. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@272009 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/tools/ant/Ant1CompatProject.java | 16 ++++++++++++++-- .../property/ClassicPropertyResolver.java | 2 ++ .../property/DefaultPropertyResolver.java | 2 ++ .../interfaces/property/PropertyResolver.java | 2 ++ proposal/myrmidon/src/xdocs/todo.xml | 2 ++ 5 files changed, 22 insertions(+), 2 deletions(-) diff --git a/proposal/myrmidon/src/ant1compat/org/apache/tools/ant/Ant1CompatProject.java b/proposal/myrmidon/src/ant1compat/org/apache/tools/ant/Ant1CompatProject.java index 2f5e7c7e3..8df256027 100644 --- a/proposal/myrmidon/src/ant1compat/org/apache/tools/ant/Ant1CompatProject.java +++ b/proposal/myrmidon/src/ant1compat/org/apache/tools/ant/Ant1CompatProject.java @@ -21,9 +21,10 @@ import org.apache.aut.converter.Converter; import org.apache.aut.converter.ConverterException; import org.apache.myrmidon.api.TaskContext; import org.apache.myrmidon.api.TaskException; -import org.apache.myrmidon.components.property.ClassicPropertyResolver; import org.apache.myrmidon.interfaces.property.PropertyResolver; import org.apache.myrmidon.interfaces.type.DefaultTypeFactory; +import org.apache.myrmidon.interfaces.type.TypeException; +import org.apache.myrmidon.interfaces.type.TypeFactory; import org.apache.myrmidon.interfaces.type.TypeManager; /** @@ -63,8 +64,19 @@ public class Ant1CompatProject extends Project setName( projectName ); } - m_ant1PropertyResolver = new ClassicPropertyResolver(); m_converter = (Converter)context.getService( Converter.class ); + + TypeManager typeManager = (TypeManager)context.getService( TypeManager.class ); + try + { + TypeFactory factory = typeManager.getFactory( PropertyResolver.ROLE ); + m_ant1PropertyResolver = (PropertyResolver)factory.create( "classic" ); + } + catch( TypeException e ) + { + throw new TaskException( "Failed to create PropertyResolver.", e ); + } + } /** diff --git a/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/ClassicPropertyResolver.java b/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/ClassicPropertyResolver.java index 5a4ced622..3ab7ea443 100644 --- a/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/ClassicPropertyResolver.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/ClassicPropertyResolver.java @@ -16,6 +16,8 @@ import org.apache.myrmidon.api.TaskContext; * * @author Darrell DeBoer * @version $Revision$ $Date$ + * + * @ant.type type="property-resolver" name="classic" */ public class ClassicPropertyResolver extends DefaultPropertyResolver diff --git a/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/DefaultPropertyResolver.java b/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/DefaultPropertyResolver.java index a04e86c18..1c3b6e005 100644 --- a/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/DefaultPropertyResolver.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/components/property/DefaultPropertyResolver.java @@ -24,6 +24,8 @@ import org.apache.myrmidon.interfaces.property.PropertyResolver; * @author Peter Donald * @author Darrell DeBoer * @version $Revision$ $Date$ + * + * @ant.type type="property-resolver" name="default" */ public class DefaultPropertyResolver implements PropertyResolver, Serviceable diff --git a/proposal/myrmidon/src/java/org/apache/myrmidon/interfaces/property/PropertyResolver.java b/proposal/myrmidon/src/java/org/apache/myrmidon/interfaces/property/PropertyResolver.java index 835dd82b2..6a7b0335b 100644 --- a/proposal/myrmidon/src/java/org/apache/myrmidon/interfaces/property/PropertyResolver.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/interfaces/property/PropertyResolver.java @@ -17,6 +17,8 @@ import org.apache.myrmidon.api.TaskContext; * * @author Darrell DeBoer * @version $Revision$ $Date$ + * + * @ant:role shorthand="property-resolver" */ public interface PropertyResolver { diff --git a/proposal/myrmidon/src/xdocs/todo.xml b/proposal/myrmidon/src/xdocs/todo.xml index ced094059..7d33c0c8e 100644 --- a/proposal/myrmidon/src/xdocs/todo.xml +++ b/proposal/myrmidon/src/xdocs/todo.xml @@ -98,12 +98,14 @@ public class MyrmidonSecurityManager Write tests for the various bits that rely on Myrmidon functionality:
  • Get GUMP runs going using Myrmidon.
  • +
  • i18n messages