/** * Example license header for Java files * * http://www.andromda.org/ */ // // Attention: Generated code! Do not modify by hand! // Generated by: SpringHibernateDaoBase.vsl in andromda-spring-cartridge. // package org.andromda.test.6; /** *
* Base Spring DAO Class: is able to create, update, remove, load, and find
* objects of type org.andromda.test.6.Car.
*
transform
* flag is set to one of the constants defined in org.andromda.test.6.CarDao, please note
* that the {@link #TRANSFORM_NONE} constant denotes no transformation, so the entity itself
* will be returned.
* * This method will return instances of these types: *
* This method is to be used internally only.
*
* @param transform one of the constants declared in org.andromda.test.6.CarDao
* @param entities the collection of entities to transform
* @see #transformEntity(int,org.andromda.test.6.Car)
*/
protected void transformEntities(final int transform, final java.util.Collection entities)
{
switch (transform)
{
case TRANSFORM_CARLISTITEM :
toCarListItemCollection(entities);
break;
case TRANSFORM_CARDETAILS :
toCarDetailsCollection(entities);
break;
case TRANSFORM_NONE : // fall-through
default:
// do nothing;
}
}
/**
* @see org.andromda.test.6.CarDao#toEntities(java.util.Collection)
*/
public void toEntities(final java.util.Collection results)
{
if (results != null)
{
org.apache.commons.collections.CollectionUtils.transform(results, ENTITYTRANSFORMER);
}
}
/**
* This anonymous transformer is designed to transform report query results
* (which result in an array of entities) to {@link org.andromda.test.6.Car}
* using the Jakarta Commons-Collections Transformation API.
*/
private org.apache.commons.collections.Transformer ENTITYTRANSFORMER =
new org.apache.commons.collections.Transformer()
{
public java.lang.Object transform(java.lang.Object input)
{
java.lang.Object result = null;
if (input instanceof java.lang.Object[])
{
result = toEntity((java.lang.Object[])input);
}
else if (input instanceof org.andromda.test.6.Car)
{
result = input;
}
return result;
}
};
protected org.andromda.test.6.Car toEntity(java.lang.Object[] row)
{
org.andromda.test.6.Car target = null;
if (row != null)
{
final int numberOfObjects = row.length;
for (int ctr = 0; ctr < numberOfObjects; ctr++)
{
final java.lang.Object object = row[ctr];
if (object instanceof org.andromda.test.6.Car)
{
target = (org.andromda.test.6.Car)object;
break;
}
}
}
return target;
}
/**
* @see org.andromda.test.6.CarDao#toCarListItemCollection(java.util.Collection)
*/
public final void toCarListItemCollection(java.util.Collection entities)
{
if (entities != null)
{
org.apache.commons.collections.CollectionUtils.transform(entities, CARLISTITEM_TRANSFORMER);
}
}
/**
* @see org.andromda.test.6.CarDao#toCarListItemArray(java.util.Collection)
*/
public final org.andromda.test.6.CarListItem[] toCarListItemArray(java.util.Collection entities)
{
org.andromda.test.6.CarListItem[] result = null;
if (entities != null)
{
final java.util.Collection collection = new java.util.ArrayList(entities);
this.toCarListItemCollection(collection);
result = (org.andromda.test.6.CarListItem[]) collection.toArray(new org.andromda.test.6.CarListItem[0]);
}
return result;
}
/**
* Default implementation for transforming the results of a report query into a value object. This
* implementation exists for convenience reasons only. It needs only be overridden in the
* {@link CarDaoImpl} class if you intend to use reporting queries.
* @see org.andromda.test.6.CarDao#toCarListItem(org.andromda.test.6.Car)
*/
protected org.andromda.test.6.CarListItem toCarListItem(java.lang.Object[] row)
{
return this.toCarListItem(this.toEntity(row));
}
/**
* This anonymous transformer is designed to transform entities or report query results
* (which result in an array of objects) to {@link org.andromda.test.6.CarListItem}
* using the Jakarta Commons-Collections Transformation API.
*/
private org.apache.commons.collections.Transformer CARLISTITEM_TRANSFORMER =
new org.apache.commons.collections.Transformer()
{
public java.lang.Object transform(java.lang.Object input)
{
java.lang.Object result = null;
if (input instanceof org.andromda.test.6.Car)
{
result = toCarListItem((org.andromda.test.6.Car)input);
}
else if (input instanceof java.lang.Object[])
{
result = toCarListItem((java.lang.Object[])input);
}
return result;
}
};
/**
* @see org.andromda.test.6.CarDao#carListItemToEntityCollection(java.util.Collection)
*/
public final void carListItemToEntityCollection(java.util.Collection instances)
{
if (instances != null)
{
for (final java.util.Iterator iterator = instances.iterator(); iterator.hasNext();)
{
// - remove an objects that are null or not of the correct instance
if (!(iterator.next() instanceof org.andromda.test.6.CarListItem))
{
iterator.remove();
}
}
org.apache.commons.collections.CollectionUtils.transform(instances, CarListItemToEntityTransformer);
}
}
private final org.apache.commons.collections.Transformer CarListItemToEntityTransformer =
new org.apache.commons.collections.Transformer()
{
public java.lang.Object transform(java.lang.Object input)
{
return carListItemToEntity((org.andromda.test.6.CarListItem)input);
}
};
/**
* @see org.andromda.test.6.CarDao#toCarListItem(org.andromda.test.6.Car, org.andromda.test.6.CarListItem)
*/
public void toCarListItem(
org.andromda.test.6.Car source,
org.andromda.test.6.CarListItem target)
{
target.setName(source.getName());
target.setSerial(source.getSerial());
}
/**
* @see org.andromda.test.6.CarDao#toCarListItem(org.andromda.test.6.Car)
*/
public org.andromda.test.6.CarListItem toCarListItem(final org.andromda.test.6.Car entity)
{
org.andromda.test.6.CarListItem target = null;
if (entity != null)
{
target = new org.andromda.test.6.CarListItem();
this.toCarListItem(entity, target);
}
return target;
}
/**
* @see org.andromda.test.6.CarDao#carListItemToEntity(org.andromda.test.6.CarListItem, org.andromda.test.6.Car)
*/
public void carListItemToEntity(
org.andromda.test.6.CarListItem source,
org.andromda.test.6.Car target,
boolean copyIfNull)
{
if (copyIfNull || source.getSerial() != null)
{
target.setSerial(source.getSerial());
}
if (copyIfNull || source.getName() != null)
{
target.setName(source.getName());
}
}
/**
* @see org.andromda.test.6.CarDao#toCarDetailsCollection(java.util.Collection)
*/
public final void toCarDetailsCollection(java.util.Collection entities)
{
if (entities != null)
{
org.apache.commons.collections.CollectionUtils.transform(entities, CARDETAILS_TRANSFORMER);
}
}
/**
* @see org.andromda.test.6.CarDao#toCarDetailsArray(java.util.Collection)
*/
public final org.andromda.test.6.CarDetails[] toCarDetailsArray(java.util.Collection entities)
{
org.andromda.test.6.CarDetails[] result = null;
if (entities != null)
{
final java.util.Collection collection = new java.util.ArrayList(entities);
this.toCarDetailsCollection(collection);
result = (org.andromda.test.6.CarDetails[]) collection.toArray(new org.andromda.test.6.CarDetails[0]);
}
return result;
}
/**
* Default implementation for transforming the results of a report query into a value object. This
* implementation exists for convenience reasons only. It needs only be overridden in the
* {@link CarDaoImpl} class if you intend to use reporting queries.
* @see org.andromda.test.6.CarDao#toCarDetails(org.andromda.test.6.Car)
*/
protected org.andromda.test.6.CarDetails toCarDetails(java.lang.Object[] row)
{
return this.toCarDetails(this.toEntity(row));
}
/**
* This anonymous transformer is designed to transform entities or report query results
* (which result in an array of objects) to {@link org.andromda.test.6.CarDetails}
* using the Jakarta Commons-Collections Transformation API.
*/
private org.apache.commons.collections.Transformer CARDETAILS_TRANSFORMER =
new org.apache.commons.collections.Transformer()
{
public java.lang.Object transform(java.lang.Object input)
{
java.lang.Object result = null;
if (input instanceof org.andromda.test.6.Car)
{
result = toCarDetails((org.andromda.test.6.Car)input);
}
else if (input instanceof java.lang.Object[])
{
result = toCarDetails((java.lang.Object[])input);
}
return result;
}
};
/**
* @see org.andromda.test.6.CarDao#carDetailsToEntityCollection(java.util.Collection)
*/
public final void carDetailsToEntityCollection(java.util.Collection instances)
{
if (instances != null)
{
for (final java.util.Iterator iterator = instances.iterator(); iterator.hasNext();)
{
// - remove an objects that are null or not of the correct instance
if (!(iterator.next() instanceof org.andromda.test.6.CarDetails))
{
iterator.remove();
}
}
org.apache.commons.collections.CollectionUtils.transform(instances, CarDetailsToEntityTransformer);
}
}
private final org.apache.commons.collections.Transformer CarDetailsToEntityTransformer =
new org.apache.commons.collections.Transformer()
{
public java.lang.Object transform(java.lang.Object input)
{
return carDetailsToEntity((org.andromda.test.6.CarDetails)input);
}
};
/**
* @see org.andromda.test.6.CarDao#toCarDetails(org.andromda.test.6.Car, org.andromda.test.6.CarDetails)
*/
public void toCarDetails(
org.andromda.test.6.Car source,
org.andromda.test.6.CarDetails target)
{
target.setName(source.getName());
target.setSerial(source.getSerial());
}
/**
* @see org.andromda.test.6.CarDao#toCarDetails(org.andromda.test.6.Car)
*/
public org.andromda.test.6.CarDetails toCarDetails(final org.andromda.test.6.Car entity)
{
org.andromda.test.6.CarDetails target = null;
if (entity != null)
{
target = new org.andromda.test.6.CarDetails();
this.toCarDetails(entity, target);
}
return target;
}
/**
* @see org.andromda.test.6.CarDao#carDetailsToEntity(org.andromda.test.6.CarDetails, org.andromda.test.6.Car)
*/
public void carDetailsToEntity(
org.andromda.test.6.CarDetails source,
org.andromda.test.6.Car target,
boolean copyIfNull)
{
if (copyIfNull || source.getSerial() != null)
{
target.setSerial(source.getSerial());
}
if (copyIfNull || source.getName() != null)
{
target.setName(source.getName());
}
}
/**
* Gets the current principal if one has been set,
* otherwise returns null.
*
* @return the current principal
*/
protected java.security.Principal getPrincipal()
{
return org.andromda.spring.PrincipalStore.get();
}
/**
* @see org.andromda.test.6.CarDao#search(int, int, int, org.andromda.spring.Search)
*/
public org.andromda.spring.PaginationResult search(final int transform, final int pageNumber, final int pageSize, final org.andromda.spring.Search search)
{
try
{
search.setPageNumber(pageNumber);
search.setPageSize(pageSize);
final org.andromda.spring.PropertySearch propertySearch = new org.andromda.spring.PropertySearch(
this.getSession(false), org.andromda.test.6.CarImpl.class, search);
final java.util.List results = propertySearch.executeAsList();
this.transformEntities(transform, results);
return new org.andromda.spring.PaginationResult(results.toArray(new java.lang.Object[0]), propertySearch.getTotalCount());
}
catch (net.sf.hibernate.HibernateException ex)
{
throw super.convertHibernateAccessException(ex);
}
}
/**
* @see org.andromda.test.6.CarDao#search(int, int, org.andromda.spring.Search)
*/
public org.andromda.spring.PaginationResult search(final int pageNumber, final int pageSize, final org.andromda.spring.Search search)
{
return this.search(TRANSFORM_NONE, pageNumber, pageSize, search);
}
/**
* @see org.andromda.test.6.CarDao#search(int, org.andromda.spring.Search)
*/
public java.util.Set search(final int transform, final org.andromda.spring.Search search)
{
try
{
final org.andromda.spring.PropertySearch propertySearch = new org.andromda.spring.PropertySearch(
this.getSession(false), org.andromda.test.6.CarImpl.class, search);
final java.util.Set results = propertySearch.executeAsSet();
this.transformEntities(transform, results);
return results;
}
catch (net.sf.hibernate.HibernateException ex)
{
throw super.convertHibernateAccessException(ex);
}
}
/**
* @see org.andromda.test.6.CarDao#search(org.andromda.spring.Search)
*/
public java.util.Set search(final org.andromda.spring.Search search)
{
return this.search(TRANSFORM_NONE, search);
}
// spring-hibernate-dao-base merge-point
}