donaldp     01/02/25 16:40:50

  Added:       proposal/4.0/src/java/org/apache/aut ValuedEnum.java
                        Enum.java
  Log:
  Added enum util to aut
  
  Revision  Changes    Path
  1.1                  
jakarta-avalon/proposal/4.0/src/java/org/apache/aut/ValuedEnum.java
  
  Index: ValuedEnum.java
  ===================================================================
  /* 
   * Copyright (C) The Apache Software Foundation. All rights reserved. 
   * 
   * This software is published under the terms of the Apache Software License 
   * version 1.1, a copy of which has been included with this distribution in 
   * the LICENSE file. 
   */ 
  package org.apache.aut;
  
  /**
   * Basic enum class for type-safe enums with values. Should be used as an 
abstract base.
   *
   * @author <a href="mailto:[EMAIL PROTECTED]">Peter Donald</a>
   */
  public abstract class ValuedEnum 
      extends Enum
  {
      protected final int        m_value;
      
      public ValuedEnum( final String name, final int value )
      {
          super( name );
          m_value = value;
      } 
  
      public final int getValue()
      {
          return m_value;
      }
  
      public final boolean isEqualTo( final ValuedEnum enum )
      {
          return m_value == enum.m_value;
      }
  
      public final boolean isGreaterThan( final ValuedEnum enum )
      {
          return m_value > enum.m_value;
      }
      
      public final boolean isGreaterThanOrEqual( final ValuedEnum enum )
      {
          return m_value >= enum.m_value;
      }
      
      public final boolean isLessThan( final ValuedEnum enum )
      {
          return m_value < enum.m_value;
      }
      
      public final boolean isLessThanOrEqual( final ValuedEnum enum )
      {
          return m_value <= enum.m_value;
      }
      
      public String toString()
      {
          return getClass().getName() + "[" + m_name + "=" + m_value + "]";
      }
  }
  
  
  
  
  1.1                  
jakarta-avalon/proposal/4.0/src/java/org/apache/aut/Enum.java
  
  Index: Enum.java
  ===================================================================
  /* 
   * Copyright (C) The Apache Software Foundation. All rights reserved. 
   * 
   * This software is published under the terms of the Apache Software License 
   * version 1.1, a copy of which has been included with this distribution in 
   * the LICENSE file. 
   */ 
  package org.apache.aut;
  
  import java.util.Map;
  
  /**
   * Basic enum class for type-safe enums. Should be used as an abstract base.
   *
   * @author <a href="mailto:[EMAIL PROTECTED]">Peter Donald</a>
   */
  public abstract class Enum 
  {
      protected final String        m_name;
      
      public Enum( final String name )
      {
          this( name, null );
      } 
   
      public Enum( final String name, final Map map )
      {
          m_name = name;
          if( null != map )
          {
              map.put( name, this );
          }
      } 
  
      public final String getName()
      {
          return m_name;
      }
      
      public String toString()
      {
          return getClass().getName() + "[" + m_name + "]";
      }
  }
  
  
  

Reply via email to