You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2007/09/05 17:17:18 UTC

svn commit: r572968 - /felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/SCRDescriptorMojo.java

Author: cziegeler
Date: Wed Sep  5 08:17:17 2007
New Revision: 572968

URL: http://svn.apache.org/viewvc?rev=572968&view=rev
Log:
Restrict the initial value usage of a property to types of java.lang.String and correctly trim the value to fix #FELIX-353.

Modified:
    felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/SCRDescriptorMojo.java

Modified: felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/SCRDescriptorMojo.java
URL: http://svn.apache.org/viewvc/felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/SCRDescriptorMojo.java?rev=572968&r1=572967&r2=572968&view=diff
==============================================================================
--- felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/SCRDescriptorMojo.java (original)
+++ felix/trunk/scrplugin/src/main/java/org/apache/felix/scrplugin/SCRDescriptorMojo.java Wed Sep  5 08:17:17 2007
@@ -261,7 +261,16 @@
 
                 tag = fields[i].getTagByName(Constants.PROPERTY);
                 if (tag != null) {
-                    this.doProperty(tag, fields[i].getInitializationExpression(), component, ocd);
+                    String defaultName = null;
+                    if ( "java.lang.String".equals(fields[i].getType()) ) {
+                        defaultName = fields[i].getInitializationExpression().trim();
+                        int pos = defaultName.indexOf("\"");
+                        if ( pos != -1 ) {
+                            defaultName = defaultName.substring(pos + 1);
+                            defaultName = defaultName.substring(0, defaultName.lastIndexOf("\""));
+                        }
+                    }
+                    this.doProperty(tag, defaultName, component, ocd);
                 }
             }
 
@@ -388,10 +397,8 @@
      */
     protected void doProperty(JavaTag property, String defaultName, Component component, OCD ocd) {
         String name = property.getNamedParameter(Constants.PROPERTY_NAME);
-        if (StringUtils.isEmpty(name) && defaultName!= null) {
-            name = defaultName.trim();
-            if (name.startsWith("\"")) name = name.substring(1);
-            if (name.endsWith("\"")) name = name.substring(0, name.length()-1);
+        if (StringUtils.isEmpty(name) && defaultName != null) {
+            name = defaultName;
         }
 
         if (!StringUtils.isEmpty(name)) {