From 49bc4e2af11ee63226927732aedbb58fa27056dc Mon Sep 17 00:00:00 2001 From: Peter Donald Date: Tue, 30 Apr 2002 03:17:53 +0000 Subject: [PATCH] Make sure can not set attributes if is a reference datatype add a nicer toString method git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@272601 13f79535-47bb-0310-9956-ffa450edef68 --- .../optional/extension/ExtensionAdapter.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionAdapter.java b/src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionAdapter.java index 8ca28a714..fb4c615ed 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionAdapter.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionAdapter.java @@ -116,6 +116,7 @@ public class ExtensionAdapter */ public void setExtensionName( final String extensionName ) { + verifyNotAReference(); m_extensionName = extensionName; } @@ -126,6 +127,7 @@ public class ExtensionAdapter */ public void setSpecificationVersion( final String specificationVersion ) { + verifyNotAReference(); m_specificationVersion = new DeweyDecimal( specificationVersion ); } @@ -136,6 +138,7 @@ public class ExtensionAdapter */ public void setSpecificationVendor( final String specificationVendor ) { + verifyNotAReference(); m_specificationVendor = specificationVendor; } @@ -146,6 +149,7 @@ public class ExtensionAdapter */ public void setImplementationVendorId( final String implementationVendorID ) { + verifyNotAReference(); m_implementationVendorID = implementationVendorID; } @@ -156,6 +160,7 @@ public class ExtensionAdapter */ public void setImplementationVendor( final String implementationVendor ) { + verifyNotAReference(); m_implementationVendor = implementationVendor; } @@ -166,6 +171,7 @@ public class ExtensionAdapter */ public void setImplementationVersion( final String implementationVersion ) { + verifyNotAReference(); m_implementationVersion = new DeweyDecimal( implementationVersion ); } @@ -176,6 +182,7 @@ public class ExtensionAdapter */ public void setImplementationUrl( final String implementationURL ) { + verifyNotAReference(); m_implementationURL = implementationURL; } @@ -225,6 +232,15 @@ public class ExtensionAdapter super.setRefid( reference ); } + private void verifyNotAReference() + throws BuildException + { + if( isReference() ) + { + throw tooManyAttributes(); + } + } + /** * Convert this adpater object into an extension object. * @@ -257,4 +273,9 @@ public class ExtensionAdapter m_implementationVendor, m_implementationURL ); } + + public String toString() + { + return toExtension().toString(); + } }