org.nuiton.topia.replication
Interface TopiaReplicationOperation

All Known Implementing Classes:
AttachAssociation, AttachDependency, AttachLink, DettachAssociation, DettachDependency, Duplicate, LoadLink

public interface TopiaReplicationOperation

Le contrat d'une operation a effectuer lors de la replication. Le module propose des operations de base dans le paquetage org.nuiton.topia.replication.operation.

Pour definir une nouvelle implantation d'operation, il faut l'enregister en tant que service (au sens de la classe ServiceLoader, c'est à dire ajouter dans un fichier (du class-path) META-INF/services/org.nuiton.topia.replication.TopiaReplicationOperation une ligne avec le nom qualifie de votre implantation. Lors du chargement du service, on detecte toutes les operations disponibles.

Since:
2.2.0
Author:
chemit

Method Summary
 void register(ReplicationModel model, ReplicationNode ownerNode, ReplicationOperationPhase phase, Object... parameters)
          Creer et enregister une operation utilisateur apres la creation du modele via la methode TopiaReplicationService.prepare(TopiaEntityEnum[], String[]).
 void run(ReplicationOperationDef operationDef, TopiaContextImplementor srcCtxt, TopiaContextImplementor dstCtxt, List<? extends TopiaEntity> entities, Map<Class<? extends TopiaEntity>,List<String>> data)
          Execute l'operation avec le parametrage donnee.
 

Method Detail

register

void register(ReplicationModel model,
              ReplicationNode ownerNode,
              ReplicationOperationPhase phase,
              Object... parameters)
Creer et enregister une operation utilisateur apres la creation du modele via la methode TopiaReplicationService.prepare(TopiaEntityEnum[], String[]).

Parameters:
model - le modele de replication
ownerNode - le noeud proprietaire de l'operation
phase - la phase ou positionner l'operation
parameters - les parametres de l'operation
See Also:
ReplicationModel, ReplicationOperationPhase

run

void run(ReplicationOperationDef operationDef,
         TopiaContextImplementor srcCtxt,
         TopiaContextImplementor dstCtxt,
         List<? extends TopiaEntity> entities,
         Map<Class<? extends TopiaEntity>,List<String>> data)
         throws Exception
Execute l'operation avec le parametrage donnee. Note : le commit sur le context cible doit etre geree dans la methode.

Parameters:
operationDef - la definition de l'operation a realiser
srcCtxt - le context source
dstCtxt - le context destination
entities -
data - le dictionnaire de toutes les donnees a repliquer
Throws:
Exception - pour toute erreur


Copyright © 2004-2010 CodeLutin. All Rights Reserved.