diff options
author | Kasun Gajasinghe <kasunbg@gmail.com> | 2011-08-06 07:03:35 +0000 |
---|---|---|
committer | Kasun Gajasinghe <kasunbg@gmail.com> | 2011-08-06 07:03:35 +0000 |
commit | 63dc4d62812418fa17866e33b0e5acbd899c4722 (patch) | |
tree | 28da1b5a8405ede31a7d1a58225f88282d513c1a | |
parent | 1.6 too is a valid source now. Added a newline for each <dependency> tag for ... (diff) | |
download | javatoolkit-63dc4d62812418fa17866e33b0e5acbd899c4722.tar.gz javatoolkit-63dc4d62812418fa17866e33b0e5acbd899c4722.tar.bz2 javatoolkit-63dc4d62812418fa17866e33b0e5acbd899c4722.zip |
added maven pom's <parent> tag rewriter. Three options to control it: --pgroup, --partifact, --pversion. --pversion is enough in most cases.
svn path=/projects/javatoolkit/branches/kasun/; revision=8670
-rw-r--r-- | src/py/javatoolkit/maven/MavenPom.py | 23 | ||||
-rwxr-xr-x | src/py/maven-helper.py | 5 |
2 files changed, 26 insertions, 2 deletions
diff --git a/src/py/javatoolkit/maven/MavenPom.py b/src/py/javatoolkit/maven/MavenPom.py index 2710d11..9aa926c 100644 --- a/src/py/javatoolkit/maven/MavenPom.py +++ b/src/py/javatoolkit/maven/MavenPom.py @@ -101,12 +101,33 @@ class MavenPom: self.__write("%d:dep_artifact:%s\n" % (i,dependency.artifact) ) self.__write("%d:dep_version:%s\n" % (i,dependency.version) ) - def read(self): return self.buffer.getvalue() def rewrite(self,xmldoc,**kwargs): + #rewrite the <parent> with the values in self.cli_options.{p_parentgroup,p_parentartifact,p_parentversion} + #This rewriting is optional. Packager may only rewrite version if he wishes. + parent_element = ( xmldoc.getElementsByTagName("parent") or [] ) + if parent_element: + if self.cli_options.p_parentgroup: + current_pgroup = parent_element.getElementsByTagName("groupId")[0] + parent_element.removeChild( current_pgroup ) + current_pgroup.unlink() + parent_element.appendChild( self.create_element(xmldoc, "groupId", self.cli_options.p_parentgroup) ) + if self.cli_options.p_parentartifact: + current_partifact = parent_element.getElementsByTagName("artifactId")[0] + parent_element.removeChild( current_partifact ) + current_partifact.unlink() + parent_element.appendChild( self.create_element(xmldoc, "artifactId", self.cli_options.p_parentartifact) ) + if self.cli_options.p_parentversion: + current_pversion = parent_element.getElementsByTagName("version")[0] + parent_element.removeChild( current_pversion ) + current_pversion.unlink() + parent_element.appendChild( self.create_element(xmldoc, "version", self.cli_options.p_parentversion) ) +# else: +# create parent element and map the parent to gentoo maven super pom. That contains all the plugin versions etc. + # desactivate all dependencies dependencies_root = ( xmldoc.getElementsByTagName("dependencies") or [] ) for node in dependencies_root: diff --git a/src/py/maven-helper.py b/src/py/maven-helper.py index a8ba61f..c0775a1 100755 --- a/src/py/maven-helper.py +++ b/src/py/maven-helper.py @@ -98,12 +98,15 @@ if __name__ == '__main__': make_option ("-c", "--classpath", action="append", dest="classpath", help="set classpath to use with maven."), make_option ("-s", "--source", action="append", dest="p_source", help="Java source version."), make_option ("-t", "--target", action="append", dest="p_target", help="Java target version."), - make_option ("-d", "--depependencies" , action="store_true", dest="p_dep", help="get dependencies infos"), + make_option ("-d", "--dependencies" , action="store_true", dest="p_dep", help="get dependencies infos"), make_option ("-f", "--file", action="append", dest="files", help="Transform files instead of operating on stdout and stdin"), make_option ("-g", "--group" , action="store_true", dest="p_group", help="get artifact group."), make_option ("-r", "--rewrite", action="store_true", dest="p_rewrite", help="rewrite poms to use our classpath"), make_option ("-p", "--ischild", action="store_true", dest="p_ischild", help="return true if this is a child pom"), make_option ("-v", "--version" , action="store_true", dest="p_version", help="get artifact version."), + make_option ("-x", "--pgroup" , action="append", dest="p_parentgroup", help="set <parent> groupId"), + make_option ("-y", "--partifact" , action="append", dest="p_parentartifact", help="set <parent> artifactId"), + make_option ("-z", "--pversion" , action="append", dest="p_parentversion", help="set <parent> version"), ] parser = OptionParser(usage, options_list) |