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: TopiaContext.java 2142 2010-11-18 16:17:42Z tchemit $
Author:
poussin , tchemit

Method Summary
 void add(TopiaEntity e)
          Permet d'ajouter dans le TopiaContext une TopiaEntity créé par un autre context.
 void addPropertyChangeListener(PropertyChangeListener listener)
           
 void addTopiaContextListener(TopiaContextListener listener)
           
 void addTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable)
           
 void addTopiaEntityListener(Class<? extends TopiaEntity> entityClass, TopiaEntityListener listener)
           
 void addTopiaEntityListener(TopiaEntityListener listener)
           
 void addTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass, TopiaEntityVetoable vetoable)
           
 void addTopiaEntityVetoable(TopiaEntityVetoable vetoable)
           
 void addTopiaTransactionListener(TopiaTransactionListener listener)
           
 void addTopiaTransactionVetoable(TopiaTransactionVetoable vetoable)
           
 void backup(File file, boolean compress)
          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.
 TopiaContext beginTransaction()
          Return a new context containing his own transaction.
 void clear(boolean dropDatabase)
          Supprime toutes les tables et autres elements de la database.
 void closeContext()
          Ferme le contexte.
 void commitTransaction()
          applique les modifications apporté a ce context sur la base de données.
 TopiaQuery createQuery(Class<?> entityClass, String alias)
          Instantiate a new TopiaQuery.
 void createSchema()
          Permet de créer le schema de la base de données.
 int execute(String hql, Object... args)
          Execute HQL operation on data (Update, Delete).
 void exportXML(Writer xml, Object... entityAndCondition)
          Permet d'exporter certaines données en XML.
 List find(String hql, int startIndex, int endIndex, Object... args)
          Permet de faire une requete HQL hibernate directement sur la base en precisant la fenetre des elements a remonter avec les parametres startIndex et endIndex.
 List find(String hql, Object... args)
          Permet de faire une requete HQL hibernate directement sur la base.
 List findByQuery(TopiaQuery query)
          Retrieve results executing a simple query.
 TopiaEntity findByTopiaId(String topiaId)
          Retrieve TopiaEntity using its unique id.
<E extends TopiaService>
E
getService(Class<E> interfaceService)
          Return the service.
 void importXML(Reader xml)
          Permet d'importer des données en XML.
 boolean isClosed()
          Indique si le contexte a ete ferme.
 void removePropertyChangeListener(PropertyChangeListener listener)
           
 void removeTopiaContextListener(TopiaContextListener listener)
           
 void removeTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable)
           
 void removeTopiaEntityListener(Class<? extends TopiaEntity> entityClass, TopiaEntityListener listener)
           
 void removeTopiaEntityListener(TopiaEntityListener listener)
           
 void removeTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass, TopiaEntityVetoable vetoable)
           
 void removeTopiaEntityVetoable(TopiaEntityVetoable vetoable)
           
 void removeTopiaTransactionListener(TopiaTransactionListener listener)
           
 void removeTopiaTransactionVetoable(TopiaTransactionVetoable vetoable)
           
 void replicate(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>
void
replicateEntities(TopiaContext dstCtxt, List<T> entities)
          Permet de dupliquer les entités du type donné vers un autre context.
<T extends TopiaEntity>
void
replicateEntity(TopiaContext dstCtxt, T entity)
          Permet de dupliquer une entité du type donné vers un autre context.
 void restore(File file)
          l'inverse de la methode backup(File,boolean).
 void rollbackTransaction()
          annule les modifications apporté a ce context.
<E extends TopiaService>
boolean
serviceEnabled(Class<E> interfaceService)
          Return true if specific service is available.
 void showCreateSchema()
          Permet d'afficher les requetes SQL de creation de base.
 void updateSchema()
          Permet de mettre à jour le schema de la base de données.
 

Method Detail

addTopiaEntityListener

void addTopiaEntityListener(TopiaEntityListener listener)

addTopiaEntityListener

void addTopiaEntityListener(Class<? extends TopiaEntity> entityClass,
                            TopiaEntityListener listener)

addTopiaEntityVetoable

void addTopiaEntityVetoable(TopiaEntityVetoable vetoable)

addTopiaEntityVetoable

void addTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass,
                            TopiaEntityVetoable vetoable)

addTopiaTransactionListener

void addTopiaTransactionListener(TopiaTransactionListener listener)

addTopiaTransactionVetoable

void addTopiaTransactionVetoable(TopiaTransactionVetoable vetoable)

addPropertyChangeListener

void addPropertyChangeListener(PropertyChangeListener listener)

addTopiaContextListener

void addTopiaContextListener(TopiaContextListener listener)

addTopiaEntitiesVetoable

void addTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable)

removeTopiaEntityListener

void removeTopiaEntityListener(TopiaEntityListener listener)

removeTopiaEntityListener

void removeTopiaEntityListener(Class<? extends TopiaEntity> entityClass,
                               TopiaEntityListener listener)

removeTopiaEntityVetoable

void removeTopiaEntityVetoable(TopiaEntityVetoable vetoable)

removeTopiaEntityVetoable

void removeTopiaEntityVetoable(Class<? extends TopiaEntity> entityClass,
                               TopiaEntityVetoable vetoable)

removeTopiaTransactionListener

void removeTopiaTransactionListener(TopiaTransactionListener listener)

removeTopiaTransactionVetoable

void removeTopiaTransactionVetoable(TopiaTransactionVetoable vetoable)

removePropertyChangeListener

void removePropertyChangeListener(PropertyChangeListener listener)

removeTopiaContextListener

void removeTopiaContextListener(TopiaContextListener listener)

removeTopiaEntitiesVetoable

void removeTopiaEntitiesVetoable(TopiaEntitiesVetoable vetoable)

serviceEnabled

<E extends TopiaService> boolean serviceEnabled(Class<E> interfaceService)
Return true if specific service is available.

Type Parameters:
E - type of service
Parameters:
interfaceService - fqn of the service
Returns:
the service

getService

<E extends TopiaService> E getService(Class<E> interfaceService)
                                  throws TopiaNotFoundException
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

void createSchema()
                  throws TopiaException
Permet de créer le schema de la base de données.

Throws:
TopiaException - if any exception

showCreateSchema

void showCreateSchema()
                      throws TopiaException
Permet d'afficher les requetes SQL de creation de base.

Throws:
TopiaException - if any exception

updateSchema

void updateSchema()
                  throws TopiaException
Permet de mettre à jour le schema de la base de données.

Throws:
TopiaException - if any exception

beginTransaction

TopiaContext beginTransaction()
                              throws TopiaException
Return a new context containing his own transaction.

Returns:
new context with transaction
Throws:
TopiaException - if any exception

commitTransaction

void commitTransaction()
                       throws TopiaException
applique les modifications apporté a ce context sur la base de données.

Throws:
TopiaException - if any exception

rollbackTransaction

void rollbackTransaction()
                         throws TopiaException
annule les modifications apporté a ce context.

Throws:
TopiaException - if any exception

findByTopiaId

TopiaEntity findByTopiaId(String topiaId)
                          throws TopiaException
Retrieve TopiaEntity using its unique id.

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

List findByQuery(TopiaQuery query)
                 throws TopiaException
Retrieve results executing a simple query. 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

TopiaQuery createQuery(Class<?> entityClass,
                       String alias)
Instantiate a new TopiaQuery.

Parameters:
entityClass - main entity class for the Query
alias - alias of the entity in the Query
Returns:
a new TopiaQuery
See Also:
TopiaQuery

find

List find(String hql,
          Object... args)
          throws TopiaException
Permet de faire une requete HQL hibernate directement sur la base.

Parameters:
hql - la requete a faire
args - les arguments de la requete
Returns:
La liste des resultats
Throws:
TopiaException - si une erreur survient durant la requete

find

List find(String hql,
          int startIndex,
          int endIndex,
          Object... args)
          throws TopiaException
Permet de faire une requete HQL hibernate directement sur la base en precisant la fenetre des elements a remonter avec les parametres startIndex et endIndex.

Parameters:
hql - la requete a faire
startIndex - la position du premier element a remonter
endIndex - la position du dernier element a remonter
args - les arguments de la requete
Returns:
La liste des resultats
Throws:
TopiaException - si une erreur survient durant la requete

execute

int execute(String hql,
            Object... args)
            throws TopiaException
Execute HQL operation on data (Update, Delete).

Parameters:
hql - la requete a faire
args - les arguments de la requete
Returns:
The number of entities updated or deleted.
Throws:
TopiaException - if any exception

add

void add(TopiaEntity e)
         throws TopiaException
Permet d'ajouter dans le TopiaContext une TopiaEntity créé par un autre context.

Parameters:
e - l'entity a ajouter
Throws:
TopiaException - if any exception

importXML

void importXML(Reader xml)
               throws TopiaException
Permet d'importer des données en XML.

Parameters:
xml - le flux XML
Throws:
TopiaException - si une erreur survient durant l'import

exportXML

void exportXML(Writer xml,
               Object... entityAndCondition)
               throws TopiaException
Permet d'exporter certaines données en XML.

Note: Si le parametre entityAndCondition est vide, alors on duplique toutes les entités de la base.

Parameters:
xml - le flux XML dans lequel il faut ecrire
entityAndCondition - 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 survient durant l'export

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 parametre entityAndCondition est 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éthode replicateEntities(TopiaContext, List).

Parameters:
dstCtxt - le context de la base destination
entityAndCondition - 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 duplication
IllegalArgumentException - 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 destination
entity - l'entité à répliquer
Throws:
TopiaException - si une erreur pendant la duplication
IllegalArgumentException - 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 destination
entities - les entités à répliquer
Throws:
TopiaException - si une erreur pendant la duplication
IllegalArgumentException - si l'un des context n'est pas ouvert, ou si on essaye de dupliquer dans la même base.

backup

void backup(File file,
            boolean compress)
            throws TopiaException
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 informations
compress - si vrai compress le fichier avec gzip
Throws:
TopiaException - if any exception

clear

void clear(boolean dropDatabase)
           throws TopiaException
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

restore

void restore(File file)
             throws TopiaException
l'inverse de la methode backup(File,boolean).

Parameters:
file - le fichier ou prendre les informations, il peut-etre compressé avec gzip ou non.
Throws:
TopiaException - if any exception

closeContext

void closeContext()
                  throws TopiaException
Ferme le contexte.

Throws:
TopiaException - if any exception

isClosed

boolean isClosed()
Indique si le contexte a ete ferme.

Returns:
true si le context est ferme, false autrement


Copyright © 2004-2010 CodeLutin. All Rights Reserved.