Author: adrianc Date: Sun Jun 16 07:34:46 2013 New Revision: 1493473 URL: http://svn.apache.org/r1493473 Log: Much smarter UtilXml.java nodeNameToJavaName method.
Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/util/UtilXml.java Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/util/UtilXml.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/util/UtilXml.java?rev=1493473&r1=1493472&r2=1493473&view=diff ============================================================================== --- ofbiz/trunk/framework/base/src/org/ofbiz/base/util/UtilXml.java (original) +++ ofbiz/trunk/framework/base/src/org/ofbiz/base/util/UtilXml.java Sun Jun 16 07:34:46 2013 @@ -957,16 +957,16 @@ public class UtilXml { StringBuilder sb = new StringBuilder(); for (int index = 0; index < nodeName.length(); index++) { char character = nodeName.charAt(index); - if (character == '-' || character == '_') { + if ((sb.length() == 0 && !Character.isJavaIdentifierStart(character)) || (sb.length() != 0 && !Character.isJavaIdentifierPart(character))) { capitalize = true; continue; } - if (capitalize) { - sb.append(String.valueOf(character).toUpperCase()); - capitalize = false; + if (sb.length() == 0 && !capitalizeFirst) { + sb.append(Character.toLowerCase(character)); } else { - if (index == 0 && !capitalizeFirst) { - sb.append(String.valueOf(character).toLowerCase()); + if (capitalize) { + sb.append(Character.toUpperCase(character)); + capitalize = false; } else { sb.append(character); }