Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source
   * Copyright 2006, Red Hat Middleware LLC, and individual contributors
   * as indicated by the @author tags. 
   * See the copyright.txt in the distribution for a full listing 
   * of individual contributors.
   * This copyrighted material is made available to anyone wishing to use,
   * modify, copy, or redistribute it subject to the terms and conditions
   * of the GNU Lesser General Public License, v. 2.1.
  * This program is distributed in the hope that it will be useful, but WITHOUT A
  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
  * You should have received a copy of the GNU Lesser General Public License,
  * v.2.1 along with this distribution; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  * MA  02110-1301, USA.
  * 
  * (C) 2005-2006,
  * @author JBoss Inc.
  */
 package com.arjuna.webservices.util;
 
 import java.util.Map;



Base class for enumerated types.

Author(s):
kevin
 
 public abstract class Enumerated implements Serializable
 {
    
The enumerated value.
 
     private final Object value ;
    
    
Construct the enumerated value.

Parameters:
value The string value of the enumeration.
 
     protected Enumerated(final Object value)
     {
         this. = value ;
     }
    
    
Compare the specified object to this one.

Parameters:
rhs The other object to compare.
 
     public boolean equals(final Object rhs)
     {
         if (rhs == this)
         {
             return true ;
         }
         
         if ((rhs != null) && (rhs.getClass() == getClass()))
         {
             final Object rhsValue = ((Enumerated)rhs). ;
             return ( == null ? rhsValue == null : .equals(rhsValue)) ;
         }
         else
         {
             return false ;
         }
     }
    
    
Return a hash code for this enumerated entry.

Returns:
the enumeration hash code.
 
     public int hashCode()
     {
         return ( == null ? 0 : .hashCode()) ;
     }
    
    
Get the key representation of this enumeration.

Returns:
the key representation.
 
     public Object getKey()
     {
         return  ;
     }
    
    
Get the string representation of this enumeration.

Returns:
the string representation.
 
     public String toString()
     {
         return ( == null ? "<null>" : .toString()) ;
     }
    
    
Resolve the value of an enumeration.

Parameters:
value The value of the enumeration.
Returns:
The enumeration.
Throws:
InvalidEnumerationException if the enumeration value is invalid.
    protected abstract Enumerated resolveEnum(final Object value)
        throws InvalidEnumerationException ;
    
    
Replace any serialised version of this class with the same instance.

Returns:
The instance of the enumeration.
Throws:
java.io.ObjectStreamException
    protected Object readResolve()
        throws ObjectStreamException
    {
        try
        {
            return resolveEnum() ;
        }
        catch (final InvalidEnumerationException iee)
        {
            throw new InvalidObjectException(iee.getMessage()) ;
        }
    }
    
    
Generate the map of enumeration values to enumerations.

Parameters:
enumerations The enumerations to configure.
Returns:
The enumeration map.
    protected static Map generateMap(final Enumerated[] enumerations)
    {
        final int numEnumerations = (enumerations == null ? 0 : enumerations.length) ;
        final Map result ;
        if (numEnumerations == 0)
        {
            result = . ;
        }
        else
        {
            result = new HashMap() ;
            for(int count = 0 ; count < numEnumerations ; count++)
            {
                final Enumerated enumeration = enumerations[count] ;
                result.put(enumeration.getKey(), enumeration) ;
            }
        }
        return result ;
    }
New to GrepCode? Check out our FAQ X