From 219593398ccf4eb6570380f78a3ac54072b41a96 Mon Sep 17 00:00:00 2001 From: Peter Donald Date: Mon, 4 Jun 2001 12:39:28 +0000 Subject: [PATCH] Made it possible to configure single attributes. This is to help container style tasks. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269094 13f79535-47bb-0310-9956-ffa450edef68 --- .../components/configurer/Configurer.java | 14 ++++++++++ .../configurer/DefaultConfigurer.java | 26 ++++++++++++++++++- 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/Configurer.java b/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/Configurer.java index 7e8aa92fd..021cb8dc6 100644 --- a/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/Configurer.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/Configurer.java @@ -34,4 +34,18 @@ public interface Configurer */ void configure( Object object, Configuration configuration, Context context ) throws ConfigurationException; + + /** + * Configure named attribute of object in a particular context. + * This configuring can be done in different ways for different + * configurers. + * + * @param object the object + * @param name the attribute name + * @param value the attribute value + * @param context the Context + * @exception ConfigurationException if an error occurs + */ + void configure( Object object, String name, String value, Context context ) + throws ConfigurationException; } diff --git a/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultConfigurer.java b/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultConfigurer.java index a9a033345..4a058c596 100644 --- a/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultConfigurer.java +++ b/proposal/myrmidon/src/java/org/apache/myrmidon/components/configurer/DefaultConfigurer.java @@ -149,6 +149,26 @@ public class DefaultConfigurer } } + /** + * Configure named attribute of object in a particular context. + * This configuring can be done in different ways for different + * configurers. + * + * @param object the object + * @param name the attribute name + * @param value the attribute value + * @param context the Context + * @exception ConfigurationException if an error occurs + */ + public void configure( final Object object, + final String name, + final String value, + final Context context ) + throws ConfigurationException + { + configureAttribute( object, name, value, context ); + } + /** * Try to configure content of an object. * @@ -173,7 +193,11 @@ public class DefaultConfigurer { for( int i = 0; i < RESERVED_ATTRIBUTES.length; i++ ) { - if( RESERVED_ATTRIBUTES[ i ].equals( name ) ) return; + if( RESERVED_ATTRIBUTES[ i ].equals( name ) ) + { + throw new ConfigurationException( "Can not specify reserved attribute " + + name ); + } } final String methodName = getMethodNameFor( name );