diff --git a/Fix.java b/Fix.java new file mode 100644 index 00000000..51ca9bbe --- /dev/null +++ b/Fix.java @@ -0,0 +1,81 @@ +import org.dom4j.*; +import org.dom4j.io.*; +import java.io.*; +import java.util.*; + +public class Fix +{ + public static void main( String[] args ) + throws Exception + { + SAXReader r = new SAXReader(); + + Document d = r.read( new FileReader( args[0] ) ); + + Element root = d.getRootElement(); + + Element deps = root.element( "dependencies" ); + + for ( Iterator i = deps.elementIterator( "dependency" ); i.hasNext(); ) + { + Element e = (Element) i.next(); + + Element id = e.element( "id" ); + + if ( id != null ) + { + String text = id.getText(); + + id.detach(); + + e.addElement( "groupId" ).addText( text ); + + e.addElement( "artifactId" ).addText( text ); + + Element v = e.element( "version" ); + + v.detach(); + + e.add( v ); + + Element u = e.element( "url" ); + + if ( u != null ) + { + u.detach(); + + e.add( u ); + } + + Element p = e.element( "properties" ); + + if ( p != null ) + { + p.detach(); + + e.add( p ); + } + } + } + + File f = new File( args[0] ); + + f.delete(); + + OutputStream os = new FileOutputStream( args[0] ); + + OutputFormat format = new OutputFormat(); + + format.setIndentSize( 2 ); + + format.setNewlines( true ); + + format.setTrimText( true ); + + XMLWriter writer = new XMLWriter( format ); + + writer.setOutputStream( os ); + + writer.write( d ); + } +}