Package org.nuiton.topia
Interface TopiaContext
- All Known Subinterfaces:
TopiaContextImplementor
- All Known Implementing Classes:
TopiaContextImpl
public interface TopiaContext
TODO-FD20100507 : Need javadoc + translate the one on methods.
Created: 3 janv. 2006 21:18:34
- Version:
- $Id$
- Author:
- poussin <poussin@codelutin.com>, tchemit <tchemit@codelutin.com>
-
Method Summary
Modifier and TypeMethodDescriptionvoidadd(TopiaEntity e) Permet d'ajouter dans le TopiaContext une TopiaEntity créé par un autre context.voidvoidaddTopiaContextListener(TopiaContextListener listener) voidvoidaddTopiaEntityListener(Class<? extends TopiaEntity> entityClass, TopiaEntityListener listener) voidaddTopiaEntityListener(TopiaEntityListener listener) voidaddTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass, TopiaEntityVetoable vetoable) voidaddTopiaEntityVetoable(TopiaEntityVetoable vetoable) voidvoidvoidSauve la base de données dans un format natif a la base, la representation n'est pas portable d'une base a l'autre.Return a new context containing his own transaction.voidclear(boolean dropDatabase) Supprime toutes les tables et autres elements de la database.voidClear persistence implementation cache.voidFerme le contexte.voidapplique les modifications apporté a ce context sur la base de données.createQuery(Class<?> entityClass, String alias) Deprecated.voidPermet de créer le schema de la base de données.intExecute HQL operation on data (Update, Delete).voidexecuteSQL(String sqlScript) Execute a given sql code inside this transaction.Permet de faire une requete HQL hibernate directement sur la base en precisant la fenetre des elements a remonter avec les parametresstartIndexetendIndex.Permet de faire une requete HQL hibernate directement sur la base.findByQuery(TopiaQuery query) Deprecated.since 2.6.12,TopiaQuerywill be removed in version 3.0findByTopiaId(String topiaId) RetrieveTopiaEntityusing its uniqueid.findUnique(String jpaql, Object... paramNamesAndValues) Allow to do some HQL query and return an unique result.<E extends TopiaService>
EgetService(Class<E> interfaceService) Return the service.booleanisClosed()Indique si le contexte a ete ferme.voidvoidvoidvoidremoveTopiaEntityListener(Class<? extends TopiaEntity> entityClass, TopiaEntityListener listener) voidremoveTopiaEntityListener(TopiaEntityListener listener) voidremoveTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass, TopiaEntityVetoable vetoable) voidremoveTopiaEntityVetoable(TopiaEntityVetoable vetoable) voidvoidvoidreplicate(TopiaContext dstCtxt, Object... entityAndCondition) Permet de dupliquer de ce context vers un context d'une autre base des données sans modification des entites.<T extends TopiaEntity>
voidreplicateEntities(TopiaContext dstCtxt, List<T> entities) Permet de dupliquer les entités du type donné vers un autre context.<T extends TopiaEntity>
voidreplicateEntity(TopiaContext dstCtxt, T entity) Permet de dupliquer une entité du type donné vers un autre context.voidl'inverse de la methodebackup(File,boolean).voidannule les modifications apporté a ce context.<E extends TopiaService>
booleanserviceEnabled(Class<E> interfaceService) Return true if specific service is available.voidPermet d'afficher les requetes SQL de creation de base.voidPermet de mettre à jour le schema de la base de données.
-
Method Details
-
addTopiaEntityListener
-
addTopiaEntityListener
-
addTopiaEntityVetoable
-
addTopiaEntityVetoable
-
addTopiaTransactionListener
-
addTopiaTransactionVetoable
-
addPropertyChangeListener
-
addTopiaContextListener
-
addTopiaEntitiesVetoable
-
removeTopiaEntityListener
-
removeTopiaEntityListener
void removeTopiaEntityListener(Class<? extends TopiaEntity> entityClass, TopiaEntityListener listener) -
removeTopiaEntityVetoable
-
removeTopiaEntityVetoable
void removeTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass, TopiaEntityVetoable vetoable) -
removeTopiaTransactionListener
-
removeTopiaTransactionVetoable
-
removePropertyChangeListener
-
removeTopiaContextListener
-
removeTopiaEntitiesVetoable
-
serviceEnabled
Return true if specific service is available.- Type Parameters:
E- type of service- Parameters:
interfaceService- fqn of the service- Returns:
- the service
-
getService
Return the service. This service must be valid with public static final SERVICE_NAME property.- Type Parameters:
E- type of service- Parameters:
interfaceService- class of the service- Returns:
- the service
- Throws:
TopiaNotFoundException- if service can't be retrieved
-
createSchema
Permet de créer le schema de la base de données.- Throws:
TopiaException- if any exception
-
showCreateSchema
Permet d'afficher les requetes SQL de creation de base.- Throws:
TopiaException- if any exception
-
updateSchema
Permet de mettre à jour le schema de la base de données.- Throws:
TopiaException- if any exception
-
beginTransaction
Return a new context containing his own transaction.- Returns:
- new context with transaction
- Throws:
TopiaException- if any exception
-
commitTransaction
applique les modifications apporté a ce context sur la base de données.- Throws:
TopiaException- if any exception
-
rollbackTransaction
annule les modifications apporté a ce context.- Throws:
TopiaException- if any exception
-
findByTopiaId
RetrieveTopiaEntityusing its uniqueid.- Parameters:
topiaId- unique identifier of the entity in all the application.- Returns:
- the entity found or null if not
- Throws:
TopiaException- for errors on retrieving the entity
-
findByQuery
Deprecated.since 2.6.12,TopiaQuerywill be removed in version 3.0Retrieve results executing a simplequery. Generally this method is used for complex query where output type is specific (more than one element in the SELECT).- Parameters:
query- TopiaQuery to execute- Returns:
- a List of results as hibernate give us
- Throws:
TopiaException
-
createQuery
Deprecated.since 2.6.12,TopiaQuerywill be removed in version 3.0Instantiate a new TopiaQuery.- Parameters:
entityClass- main entity class for the Queryalias- alias of the entity in the Query- Returns:
- a new TopiaQuery
- See Also:
-
findAll
Permet de faire une requete HQL hibernate directement sur la base.- Parameters:
hql- la requete a faireargs- les arguments de la requete- Returns:
- La liste des resultats
- Throws:
TopiaException- si une erreur survient durant la requete
-
find
Permet de faire une requete HQL hibernate directement sur la base en precisant la fenetre des elements a remonter avec les parametresstartIndexetendIndex.- Parameters:
hql- la requete a fairestartIndex- la position du premier element a remonterendIndex- la position du dernier element a remonterargs- les arguments de la requete- Returns:
- La liste des resultats
- Throws:
TopiaException- si une erreur survient durant la requete
-
findUnique
Allow to do some HQL query and return an unique result. If nothing if found by the query, will return null. If more than one result is found, will throw an exception. WARNING : Depending on the registered service, this method may not support something else than queries on TopiaEntity- Parameters:
jpaql- the JPA-QL query to executeparamNamesAndValues- an array of query parameters based on [key,value,key,value,...]- Returns:
- The result instance or null
- Throws:
TopiaException- for any error during querying or if the the query returns more than one result.
-
execute
Execute HQL operation on data (Update, Delete).- Parameters:
hql- la requete a faireargs- les arguments de la requete- Returns:
- The number of entities updated or deleted.
- Throws:
TopiaException- if any exception
-
add
Permet d'ajouter dans le TopiaContext une TopiaEntity créé par un autre context.- Parameters:
e- l'entity a ajouter- Throws:
TopiaException- if any exception
-
replicate
void replicate(TopiaContext dstCtxt, Object... entityAndCondition) throws TopiaException, IllegalArgumentException Permet de dupliquer de ce context vers un context d'une autre base des données sans modification des entites. Note: Si le parametreentityAndConditionest vide, alors on duplique toutes les entités de la base. Note 2: Il se peut que la replication simple ne soit pas suffisante (par example si l'on veut repliquer q'une partie d'une entité), on utilisera donc la seconde méthodereplicateEntities(TopiaContext, List).- Parameters:
dstCtxt- le context de la base destinationentityAndCondition- paramètre qui vont par deux, qui represente la classe de l'entity a exporter et la condition where que doit respecter l'objet pour etre exporter (entityClass, condition)- Throws:
TopiaException- si une erreur pendant la duplicationIllegalArgumentException- si l'un des context n'est pas ouvert, ou si on essaye de dupliquer dans la même base.
-
replicateEntity
<T extends TopiaEntity> void replicateEntity(TopiaContext dstCtxt, T entity) throws TopiaException, IllegalArgumentException Permet de dupliquer une entité du type donné vers un autre context.- Type Parameters:
T- le type des entités à répliquer- Parameters:
dstCtxt- le context de la base destinationentity- l'entité à répliquer- Throws:
TopiaException- si une erreur pendant la duplicationIllegalArgumentException- si l'un des context n'est pas ouvert, ou si on essaye de dupliquer dans la même base.
-
replicateEntities
<T extends TopiaEntity> void replicateEntities(TopiaContext dstCtxt, List<T> entities) throws TopiaException, IllegalArgumentException Permet de dupliquer les entités du type donné vers un autre context.- Type Parameters:
T- le type des entités à répliquer- Parameters:
dstCtxt- le context de la base destinationentities- les entités à répliquer- Throws:
TopiaException- si une erreur pendant la duplicationIllegalArgumentException- si l'un des context n'est pas ouvert, ou si on essaye de dupliquer dans la même base.
-
backup
Sauve la base de données dans un format natif a la base, la representation n'est pas portable d'une base a l'autre. Cette methode ne doit être utilisé que pour un stockage temporaire utile à une application.- Parameters:
file- le nom du fichier ou stocker les informationscompress- si vrai compress le fichier avec gzip- Throws:
TopiaException- if any exception
-
clear
Supprime toutes les tables et autres elements de la database.- Parameters:
dropDatabase- si vrai alors supprime aussi la base de données si la base utilise des fichiers les fichiers seront supprimé (ex: h2) ou sera fait sur la base (postgresql)- Throws:
TopiaException- if any exception
-
clearCache
Clear persistence implementation cache.- Throws:
TopiaException- Since:
- 2.6.13
-
restore
l'inverse de la methodebackup(File,boolean).- Parameters:
file- le fichier ou prendre les informations, il peut-etre compressé avec gzip ou non.- Throws:
TopiaException- if any exception
-
closeContext
Ferme le contexte.- Throws:
TopiaException- if any exception
-
isClosed
boolean isClosed()Indique si le contexte a ete ferme.- Returns:
truesi le context est ferme,falseautrement
-
executeSQL
Execute a given sql code inside this transaction.- Parameters:
sqlScript- the sql script to execute- Throws:
TopiaException- if any problem occurs while executing the sql script.
-
TopiaQuerywill be removed in version 3.0