org.nuiton.topia
Interface TopiaContext

All Known Subinterfaces:
TopiaContextImplementor
All Known Implementing Classes:
TopiaContextImpl

public interface TopiaContext

Author:
poussin

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()
           
 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.
 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

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

 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
 TopiaEntity findByTopiaId(String topiaId)
          Permet de rechercher un entite directement par son TopiaId
<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

Type Parameters:
E - type of service
Parameters:
interfaceService - fqn of the service
Returns:
the service
Throws:
TopiaNotFoundException - if service is 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
Throws:
TopiaException

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
Permet de rechercher un entite directement par son TopiaId

Parameters:
topiaId - l'id de l'entite recherche
Returns:
l'entite trouvee (ou null si non trouve)
Throws:
TopiaException - if any exception

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 (pastgresql)
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.