org.exolab.castor.mapping.loader
Class CollectionHandlers

java.lang.Object
  extended by org.exolab.castor.mapping.loader.CollectionHandlers

public final class CollectionHandlers
extends Object

Utility class for obtaining collection handlers. Based on the configuration and supported classes it will return collections suitable for Java 1.1 and Java 1.2 run times.

Version:
$Revision: 9061 $ $Date: 2005-05-02 14:58:59 -0600 (Mon, 02 May 2005) $
Author:
Assaf Arkin
See Also:
CollectionHandler

Nested Class Summary
static class CollectionHandlers.EmptyEnumerator<T>
          Enumerator for a null collection.
 
Constructor Summary
CollectionHandlers()
           
 
Method Summary
static String getCollectionName(Class<?> javaClass)
          Returns the associated string name for a given collection.
static Class<?> getCollectionType(String name)
          Returns the collection's Java class from the collection name.
static CollectionHandler getHandler(Class<?> javaClass)
          Returns the collection's handler based on the Java class.
static boolean hasHandler(Class<?> javaClass)
          Returns true if the given class has an associated CollectionHandler.
static boolean isGetSetCollection(Class<?> javaClass)
          Returns true if the collection requires get/set methods.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CollectionHandlers

public CollectionHandlers()
Method Detail

getCollectionType

public static Class<?> getCollectionType(String name)
                                  throws MappingException
Returns the collection's Java class from the collection name. The collection name may be a short name (e.g. vector) or the collection Java class name (e.g. java.util.Vector). If the collection is not supported, an exception is thrown.

Parameters:
name - The collection name
Returns:
The collection Java class
Throws:
MappingException - The named collection is not supported

hasHandler

public static boolean hasHandler(Class<?> javaClass)
Returns true if the given class has an associated CollectionHandler.

Parameters:
javaClass - the class to search collection handlers for
Returns:
true if the given class has an associated CollectionHandler, otherwise false.

getCollectionName

public static String getCollectionName(Class<?> javaClass)
Returns the associated string name for a given collection.

Parameters:
javaClass - the class to search collection handlers for
Returns:
the string name for the given collection type or null if no association has been defined.

getHandler

public static CollectionHandler getHandler(Class<?> javaClass)
                                    throws MappingException
Returns the collection's handler based on the Java class.

Parameters:
javaClass - The collection's Java class
Returns:
The collection handler
Throws:
MappingException - The collection class is not supported

isGetSetCollection

public static boolean isGetSetCollection(Class<?> javaClass)
                                  throws MappingException
Returns true if the collection requires get/set methods. java.util collections only require a get method, but an array collection required both get and set methods.

Parameters:
javaClass - The collection's java class
Returns:
True if collection requires get/set methods, false if collection requires only get method
Throws:
MappingException - The collection class is not supported


Copyright © 2013. All Rights Reserved.