PR: MPSCM-8
fix some null pointer exception possibilities git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@114748 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
1 parent
116272147f
commit
89c1465002
1 file changed
+38
-8
@@ -71,7 +71,7 @@ import java.util.Iterator;
|
||||
*
|
||||
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
|
||||
*
|
||||
* @version $Id: VersionTransformer.java,v 1.1 2004/02/25 22:34:46 brett Exp $
|
||||
* @version $Id: VersionTransformer.java,v 1.2 2004/02/26 13:48:25 brett Exp $
|
||||
*/
|
||||
public class VersionTransformer
|
||||
extends AbstractPomTransformer
|
||||
@@ -97,20 +97,44 @@ public class VersionTransformer
|
||||
public void transformNode( Node node )
|
||||
throws Exception
|
||||
{
|
||||
Node currentVersion = node.selectSingleNode( "currentVersion" );
|
||||
currentVersion.setText( version );
|
||||
Element project = ( Element ) node;
|
||||
|
||||
Node version = node.selectSingleNode( "versions/version[tag='" + tag + "']" );
|
||||
Node currentVersion = node.selectSingleNode( "currentVersion" );
|
||||
if ( currentVersion != null )
|
||||
{
|
||||
currentVersion.setText( version );
|
||||
}
|
||||
else
|
||||
{
|
||||
project.addElement( "currentVersion" ).addText( version );
|
||||
}
|
||||
|
||||
Element version = ( Element ) node.selectSingleNode( "versions/version[tag='" + tag + "']" );
|
||||
if ( version != null )
|
||||
{
|
||||
// tag exists - overwrite
|
||||
version.selectSingleNode( "id" ).setText( this.version );
|
||||
version.selectSingleNode( "name" ).setText( this.version );
|
||||
Node id = version.selectSingleNode( "id" );
|
||||
if ( id != null )
|
||||
{
|
||||
id.setText( this.version );
|
||||
}
|
||||
else
|
||||
{
|
||||
version.addElement( "id" ).addText( this.version );
|
||||
}
|
||||
Node name = version.selectSingleNode( "name" );
|
||||
if ( name != null )
|
||||
{
|
||||
name.setText( this.version );
|
||||
}
|
||||
else
|
||||
{
|
||||
version.addElement( "name" ).addText( this.version );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// tag doesn't exist - add
|
||||
Element project = ( Element ) node;
|
||||
Element versions = ( Element ) project.selectSingleNode( "versions" );
|
||||
if ( versions == null )
|
||||
{
|
||||
@@ -132,8 +156,13 @@ public class VersionTransformer
|
||||
public boolean transformRequired()
|
||||
{
|
||||
Node node = ( Node ) getSelectedNodes().get( 0 );
|
||||
if ( node == null )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
Node currentVersion = node.selectSingleNode( "currentVersion" );
|
||||
if ( !currentVersion.getText().equals( version ))
|
||||
if ( currentVersion == null || !currentVersion.getText().equals( version ))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -143,3 +172,4 @@ public class VersionTransformer
|
||||
return ( v == null );
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user