// license-header java merge-point
//
// Attention: Generated code! Do not modify by hand!
// Generated by DaoLocal.vsl in andromda-ejb3-cartridge on 09/18/2014 16:56:08.
//
package org.andromda.test.howto3.a;
import java.util.Collection;
import java.util.Date;
/**
* @see Person
*/
public interface PersonDao
{
/**
* This constant is used as a transformation flag; entities can be converted automatically into value objects
* or other types, different methods in a class implementing this interface support this feature: look for
* an int
parameter called transform
.
*
transform
. If this flag is set to TRANSFORM_NONE
then
* the returned entity will NOT be transformed. If this flag is any of the other constants
* defined in this class then the result WILL BE passed through an operation which can
* optionally transform the entity (into a value object for example). By default, transformation does
* not occur.
*
* @param transform int transformation flag
* @param id Long identifier part of the composite PK of the entity to load.
* @return either the entity or the object transformed from the entity.
* @throws PersonDaoException
*/
public Object load(int transform, Long id)
throws PersonDaoException;
/**
* Loads all entities of type {@link Person}.
*
* @return the loaded entities.
* @throws PersonDaoException
*/
public Collectiontransform
. If this flag is set to TRANSFORM_NONE
then
* the returned entity will NOT be transformed. If this flag is any of the other constants
* defined here then the result WILL BE passed through an operation which can optionally
* transform the entity (into a value object for example). By default, transformation does
* not occur.
*
* @param transform the flag indicating what transformation to use.
* @return Collection of the loaded entities.
* @throws PersonDaoException
*/
@SuppressWarnings("rawtypes")
public Collection loadAll(final int transform)
throws PersonDaoException;
/**
* Creates an instance of Person and adds it to the persistent store.
* @param person
* @return Person
* @throws PersonDaoException
*/
public Person create(Person person)
throws PersonDaoException;
/**
* Does the same thing as {@link #create(Person)} with an
* additional flag called transform
. If this flag is set to TRANSFORM_NONE
then
* the returned entity will NOT be transformed. If this flag is any of the other constants
* defined here then the result WILL BE passed through an operation which can optionally
* transform the entity (into a value object for example). By default, transformation does
* not occur.
*
* @param transform
* @param person
* @return Object
* @throws PersonDaoException
*/
public Object create(int transform, Person person)
throws PersonDaoException;
/**
* Creates a new instance of Person and adds
* from the passed in entities
collection
*
* @param entities the collection of Person
* instances to create.
* @return the created instances. Collectiontransform
. If this flag is set to TRANSFORM_NONE
then
* the returned entity will NOT be transformed. If this flag is any of the other constants
* defined here then the result WILL BE passed through an operation which can optionally
* transform the entities (into value objects for example). By default, transformation does
* not occur.
*
* @param transform
* @param entities
* @return the created instances. Collection
* @throws PersonDaoException
*/
@SuppressWarnings({"rawtypes"})
public Collection create(int transform, CollectionPerson
* instance from all attributes and adds it to
* the persistent store.
* @param name
* @param birthDate
* @return the created instances. Person
* @throws PersonDaoException
*/
public Person create(
String name,
Date birthDate)
throws PersonDaoException;
/**
* Does the same thing as {@link #create(String, Date)} with an
* additional flag called transform
. If this flag is set to TRANSFORM_NONE
then
* the returned entity will NOT be transformed. If this flag is any of the other constants
* defined here then the result WILL BE passed through an operation which can optionally
* transform the entity (into a value object for example). By default, transformation does
* not occur.
*
* @param transform
* @param name
* @param birthDate
* @return the created instances. Object
* @throws PersonDaoException
*/
public Object create(
int transform,
String name,
Date birthDate)
throws PersonDaoException;
/**
* Updates the person
instance in the persistent store.
* @param person
* @throws PersonDaoException
*/
public void update(Person person)
throws PersonDaoException;
/**
* Updates all instances in the entities
collection in the persistent store.
* @param entities
* @throws PersonDaoException
*/
public void update(Collectionidentifier
from the persistent store.
* @param id
* @throws PersonDaoException
*/
public void remove(Long id)
throws PersonDaoException;
/**
* Removes all entities in the given entities collection.
* @param entities
* @throws PersonDaoException
*/
public void remove(Collection entities)
throws PersonDaoException;
}