[CJ-dev] commonjava-projects/commonjava-opl/projects/opl-xdoclet/src/java/org/commonjava/opl/xdoclet
Brought to you by:
johnqueso
From: John C. <joh...@co...> - 2004-03-25 02:24:56
|
Update of /cvsroot/commonjava/commonjava-projects/commonjava-opl/projects/opl-xdoclet/src/java/org/commonjava/opl/xdoclet In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2341/projects/opl-xdoclet/src/java/org/commonjava/opl/xdoclet Modified Files: OplNodeParserPlugin.java OplNodeParserPlugin.vm Log Message: working toward a maven plugin using opldoclet, and also fixed a minor irritation with xml attributes containing dashes. Index: OplNodeParserPlugin.vm =================================================================== RCS file: /cvsroot/commonjava/commonjava-projects/commonjava-opl/projects/opl-xdoclet/src/java/org/commonjava/opl/xdoclet/OplNodeParserPlugin.vm,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- OplNodeParserPlugin.vm 23 Mar 2004 01:49:00 -0000 1.6 +++ OplNodeParserPlugin.vm 25 Mar 2004 02:14:12 -0000 1.7 @@ -58,7 +58,7 @@ #if(!$method.getNamedParameter("opl.attribute", "use-body")) #if($method.getNamedParameter("opl.attribute", "before-children")) try{ - #set($attrName = $method.getNamedParameter("opl.attribute", "name")) + #set($attrName = $plugin.getAttributeVar($method)) #set($resolve = true) #set($resolve = ${method.getNamedParameter("opl.attribute", "resolve-value")}) @@ -132,7 +132,7 @@ #foreach($method in $class.methods) #if($method.getNamedParameter("opl.attribute", "before-children") == "false" || $method.getNamedParameter("opl.attribute", "use-body")) try{ - #set($attrName = $method.getNamedParameter("opl.attribute", "name")) + #set($attrName = $plugin.getAttributeVar($method)) #if($method.getNamedParameter("opl.attribute", "use-body")) String ${attrName} = bodyText; Index: OplNodeParserPlugin.java =================================================================== RCS file: /cvsroot/commonjava/commonjava-projects/commonjava-opl/projects/opl-xdoclet/src/java/org/commonjava/opl/xdoclet/OplNodeParserPlugin.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- OplNodeParserPlugin.java 12 Mar 2004 19:46:56 -0000 1.4 +++ OplNodeParserPlugin.java 25 Mar 2004 02:14:12 -0000 1.5 @@ -122,7 +122,33 @@ public String getAttributeConstant(Object metadata){ JavaMethod jm = (JavaMethod)metadata; String name = jm.getNamedParameter("opl.attribute", "name"); - return Strings.toConstantCase(name); + return Strings.toConstantCase(name).replace('-', '_'); + } + + public String getAttributeVar(Object metadata){ + JavaMethod jm = (JavaMethod)metadata; + String name = jm.getNamedParameter("opl.attribute", "name"); + + char[] pcs = name.toCharArray(); + boolean lastWasDash = false; + StringBuffer newName = new StringBuffer(); + for (int i = 0; i < pcs.length; i++) { + char c = pcs[i]; + if(c == '-'){ + lastWasDash = true; + } + else{ + if(lastWasDash){ + newName.append(Character.toUpperCase(c)); + lastWasDash = false; + } + else{ + newName.append(c); + } + } + } + + return newName.toString(); } public String buildImplementsClause(Object metadata){ |