avalon-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From leosim...@apache.org
Subject cvs commit: avalon/framework/api/src/java/org/apache/avalon/framework Version.java
Date Sun, 11 Jan 2004 22:33:32 GMT
leosimons    2004/01/11 14:33:32

  Modified:    framework/api/src/java/org/apache/avalon/framework
                        Version.java
  Log:
  Version was not checking for null values, hence it was not failing gracefully. I've added
checks for null and modified the behaviour appropriately. The only impact will be on applications
that expect NPEs on comparing with a null object. Which I really hope don't exist :D
  
  Revision  Changes    Path
  1.31      +16 -2     avalon/framework/api/src/java/org/apache/avalon/framework/Version.java
  
  Index: Version.java
  ===================================================================
  RCS file: /home/cvs/avalon/framework/api/src/java/org/apache/avalon/framework/Version.java,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- Version.java	12 Jul 2003 16:49:55 -0000	1.30
  +++ Version.java	11 Jan 2004 22:33:32 -0000	1.31
  @@ -105,11 +105,15 @@
        * @return the new Version object
        * @throws NumberFormatException if an error occurs
        * @throws IllegalArgumentException if an error occurs
  +     * @throws NullPointerException if the provided string is <code>null</code>
        * @since 4.1
        */
       public static Version getVersion( final String version )
           throws NumberFormatException, IllegalArgumentException
       {
  +        if( version == null )
  +            throw new NullPointerException( "version" );
  +
           final StringTokenizer tokenizer = new StringTokenizer( version, "." );
           final String[] levels = new String[ tokenizer.countTokens() ];
           for( int i = 0; i < levels.length; i++ )
  @@ -199,6 +203,9 @@
        */
       public boolean equals( final Version other )
       {
  +        if( other == null )
  +            return false;
  +
           boolean isEqual = ( getMajor() == other.getMajor() );
           
           if ( isEqual )
  @@ -284,6 +291,9 @@
        */
       public boolean complies( final Version other )
       {
  +        if( other == null )
  +            return false;
  +
           if( other.m_major == -1 )
           {
               return true;
  @@ -322,11 +332,15 @@
   
       /**
        * Compare two versions together according to the
  -     * Comparable interface.
  +     * {@link Comparable} interface.
        * 
        * @return number indicating relative value (-1, 0, 1)
        */
       public int compareTo(Object o) {
  +        if( o == null )
  +            throw new NullPointerException( "o" );
  +
  +
           Version other = (Version)o;
           int val = 0;
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org


Mime
View raw message