net.sf.beanlib.hibernate3
Class Hibernate3CollectionReplicator

java.lang.Object
  extended by net.sf.beanlib.provider.replicator.ReplicatorTemplate
      extended by net.sf.beanlib.provider.replicator.CollectionReplicator
          extended by net.sf.beanlib.hibernate3.Hibernate3CollectionReplicator
All Implemented Interfaces:
CollectionReplicatorSpi

public class Hibernate3CollectionReplicator
extends CollectionReplicator

Hibernate 3 specific Collection Replicator.

Author:
Joe D. Velopar

Nested Class Summary
static class Hibernate3CollectionReplicator.Factory
          Factory for Hibernate3CollectionReplicator
 
Field Summary
private static Hibernate3CollectionReplicator.Factory factory
           
 
Fields inherited from class net.sf.beanlib.provider.replicator.ReplicatorTemplate
log
 
Constructor Summary
protected Hibernate3CollectionReplicator(BeanTransformerSpi beanTransformer)
           
 
Method Summary
protected
<T> Collection<T>
createToCollection(Collection<T> from)
           
protected
<T> T
createToInstance(Object from, Class<T> toClass)
          Creates a target instance from either the class of the given "from" object or the given toClass, giving priority to the one which is more specific whenever possible.
static Hibernate3CollectionReplicator.Factory getFactory()
           
static Hibernate3CollectionReplicator newCollectionReplicatable(BeanTransformerSpi beanTransformer)
           
<V,T> T
replicateCollection(Collection<V> from, Class<T> toClass)
          Returns a replicated collection.
protected
<T> T
unenhanceObject(T from)
          Returns an equivalent object un-enhanced from the given object.
 
Methods inherited from class net.sf.beanlib.provider.replicator.CollectionReplicator
createToComparator, createToInstanceAsCollection, createToSortedSetWithComparator
 
Methods inherited from class net.sf.beanlib.provider.replicator.ReplicatorTemplate
chooseClass, containsTargetCloned, createToInstance, createToInstanceWithComparator, getCustomerBeanTransformer, getTargetCloned, newInstanceAsPrivileged, populateBean, putTargetCloned, replicate, replicate, replicateByBeanReplicatable, transform
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

factory

private static final Hibernate3CollectionReplicator.Factory factory
Constructor Detail

Hibernate3CollectionReplicator

protected Hibernate3CollectionReplicator(BeanTransformerSpi beanTransformer)
Method Detail

getFactory

public static final Hibernate3CollectionReplicator.Factory getFactory()

newCollectionReplicatable

public static Hibernate3CollectionReplicator newCollectionReplicatable(BeanTransformerSpi beanTransformer)

replicateCollection

public <V,T> T replicateCollection(Collection<V> from,
                                   Class<T> toClass)
Description copied from interface: CollectionReplicatorSpi
Returns a replicated collection.

Specified by:
replicateCollection in interface CollectionReplicatorSpi
Overrides:
replicateCollection in class CollectionReplicator
Type Parameters:
V - component type of the from collection
T - target class type
Parameters:
from - from collection
toClass - target class

createToCollection

protected <T> Collection<T> createToCollection(Collection<T> from)
                                    throws InstantiationException,
                                           IllegalAccessException,
                                           SecurityException,
                                           NoSuchMethodException,
                                           InvocationTargetException
Overrides:
createToCollection in class CollectionReplicator
Throws:
InstantiationException
IllegalAccessException
SecurityException
NoSuchMethodException
InvocationTargetException

createToInstance

protected <T> T createToInstance(Object from,
                                 Class<T> toClass)
                      throws InstantiationException,
                             IllegalAccessException,
                             SecurityException,
                             NoSuchMethodException
Description copied from class: ReplicatorTemplate
Creates a target instance from either the class of the given "from" object or the given toClass, giving priority to the one which is more specific whenever possible.

Overrides:
createToInstance in class ReplicatorTemplate
Throws:
InstantiationException
IllegalAccessException
SecurityException
NoSuchMethodException

unenhanceObject

protected final <T> T unenhanceObject(T from)
Description copied from class: ReplicatorTemplate
Returns an equivalent object un-enhanced from the given object. By default, the input object is returned. Subclass must override this method to perform any such un-enhancement, if necessary.

Overrides:
unenhanceObject in class ReplicatorTemplate