Package org.nuiton.topia.replication
Interface TopiaReplicationService
- All Superinterfaces:
TopiaService
- All Known Implementing Classes:
TopiaReplicationServiceImpl
User visible interface for replication engin
To use replicator you must have properties defined in config file:
- topia.replication.engin=[class used to indexation]
- possible specific property for index engin used
- - prepare the replication model - (
prepare(TopiaEntityEnum[], boolean, String...)- (prepareForAll(TopiaEntityEnum[]) - - lanch replication
doReplicate(ReplicationModel, TopiaContext)
- Since:
- 2.2.0
- Author:
- tchemit <chemit@codelutin.com>
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoiddoReplicate(ReplicationModel model, TopiaContext dstCtxt) Lance l'operation de replication a partir du context source vers le context de destination sur les entites donnees et en utilisant le modele de replication precedemment construit via la methodeprepare(TopiaEntityEnum[], boolean, String...)ouprepareForAll(TopiaEntityEnum[]).voiddoRollback(TopiaReplicationContext replicationContext) Pour revenir en arrière lorsque la réplication a échouée .Obtains themodel builderuse to creat the replication's model.prepare(TopiaEntityEnum[] contracts, boolean computeOrder, String... topiaIds) Prepare le modele de replication pour les entites dans les topiaIds sont donnes.prepareForAll(TopiaEntityEnum[] contracts) Prepare le modele de replication pour toutes les entites des types donnes.Methods inherited from interface org.nuiton.topia.framework.TopiaService
getPersistenceClasses, getServiceName, postInit, preInit
-
Field Details
-
SERVICE_NAME
Nom du service- See Also:
-
TOPIA_SERVICE_NAME
Nom du service topia- See Also:
-
-
Method Details
-
getModelBuilder
TopiaReplicationModelBuilder getModelBuilder()Obtains themodel builderuse to creat the replication's model.- Returns:
- the model builder
- Since:
- 2.4.3
-
prepare
ReplicationModel prepare(TopiaEntityEnum[] contracts, boolean computeOrder, String... topiaIds) throws TopiaException Prepare le modele de replication pour les entites dans les topiaIds sont donnes.- Parameters:
contracts- les contrats a repliquercomputeOrder- drapeau positionné àtruesi on doit calculer l'ordre des entités à repliquer, sinon on utilise l'ordre induit par lescontracts.topiaIds- la liste des ids d'entites a repliquer- Returns:
- le model de replication initialise
- Throws:
TopiaException- pour toute erreur recontree
-
prepareForAll
Prepare le modele de replication pour toutes les entites des types donnes. La méthode calcule l'ordre de replication des données. Actuellement, on n'est pas capable de calculer l'ordre si le graphe des entités contient des cycles. TODO : faire en sorte de pouvoir gérer les cycles.- Parameters:
contracts- les contrats des types a repliquer- Returns:
- le modele pour la replication
- Throws:
TopiaException- pour toute erreur rencontree
-
doReplicate
Lance l'operation de replication a partir du context source vers le context de destination sur les entites donnees et en utilisant le modele de replication precedemment construit via la methodeprepare(TopiaEntityEnum[], boolean, String...)ouprepareForAll(TopiaEntityEnum[]).- Parameters:
model- le modele de replicationdstCtxt- le context sur la source de donnees ou repliquer- Throws:
Exception- pour toute erreur pendant la replication
-
doRollback
Pour revenir en arrière lorsque la réplication a échouée .- Parameters:
replicationContext- the replication's context used to start replication.- Throws:
Exception- pour toute erreur pendant la replication
-