Index: topia/src/java/org/codelutin/topia/persistence/AbstractPersistenceHelper.java diff -u topia/src/java/org/codelutin/topia/persistence/AbstractPersistenceHelper.java:1.3 topia/src/java/org/codelutin/topia/persistence/AbstractPersistenceHelper.java:1.4 --- topia/src/java/org/codelutin/topia/persistence/AbstractPersistenceHelper.java:1.3 Tue Aug 3 16:07:14 2004 +++ topia/src/java/org/codelutin/topia/persistence/AbstractPersistenceHelper.java Fri Aug 6 17:48:52 2004 @@ -23,9 +23,9 @@ * Created: Jul 30, 2004 * * @author Cédric Pineau - * @version $Revision: 1.3 $ + * @version $Revision: 1.4 $ * - * Last update : $Date: 2004/08/03 16:07:14 $ + * Last update : $Date: 2004/08/06 17:48:52 $ * by : $Author: bpoussin $ */ @@ -74,8 +74,6 @@ lazyClass, new Object[] { context, entity }); return lazy; } - - public abstract TopiaEntity findByTopiaId(String id) throws TopiaException; } // AbstractPersistenceHelper Index: topia/src/java/org/codelutin/topia/persistence/DistributedPersistenceHelper.java diff -u topia/src/java/org/codelutin/topia/persistence/DistributedPersistenceHelper.java:1.2 topia/src/java/org/codelutin/topia/persistence/DistributedPersistenceHelper.java:1.3 --- topia/src/java/org/codelutin/topia/persistence/DistributedPersistenceHelper.java:1.2 Sun Aug 1 14:52:32 2004 +++ topia/src/java/org/codelutin/topia/persistence/DistributedPersistenceHelper.java Fri Aug 6 17:48:52 2004 @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2002, 2003, 2004 + * Copyright (C) 2002, 2003, 2004 * Code Lutin, Cédric Pineau, Benjamin Poussin * * This program is free software; you can redistribute it and/or @@ -23,10 +23,10 @@ * Created: Jul 30, 2004 * * @author Cédric Pineau - * @version $Revision: 1.2 $ + * @version $Revision: 1.3 $ * - * Last update : $Date: 2004/08/01 14:52:32 $ - * by : $Author: pineau $ + * Last update : $Date: 2004/08/06 17:48:52 $ + * by : $Author: bpoussin $ */ package org.codelutin.topia.persistence; @@ -41,7 +41,7 @@ import org.codelutin.topia.TopiaQuery; /** - * + * */ public class DistributedPersistenceHelper extends AbstractPersistenceHelper { @@ -75,7 +75,18 @@ } public TopiaEntity findByTopiaId(String id) throws TopiaException { - return (TopiaEntity) context.getDistributionHelper().call(PersistenceHelper.class,"findByTopiaId", new TopiaArgument().addArg(id)); + return (TopiaEntity)context.getDistributionHelper().call(PersistenceHelper.class, + "findByTopiaId", new TopiaArgument().addArg(id)); + } + + public void importXML(String xml) throws TopiaException{ + context.getDistributionHelper().call(PersistenceHelper.class, + "importXML", new TopiaArgument().addArg(xml)); + } + + public String exportXML() throws TopiaException{ + return (String)context.getDistributionHelper().call(PersistenceHelper.class, + "exportXML", null); } } Index: topia/src/java/org/codelutin/topia/persistence/LazyEntityGenerator.java diff -u topia/src/java/org/codelutin/topia/persistence/LazyEntityGenerator.java:1.1 topia/src/java/org/codelutin/topia/persistence/LazyEntityGenerator.java:1.2 --- topia/src/java/org/codelutin/topia/persistence/LazyEntityGenerator.java:1.1 Fri Jul 30 14:38:59 2004 +++ topia/src/java/org/codelutin/topia/persistence/LazyEntityGenerator.java Fri Aug 6 17:48:52 2004 @@ -23,10 +23,10 @@ * * @author Benjamin Poussin * Copyright Code Lutin - * @version $Revision: 1.1 $ + * @version $Revision: 1.2 $ * - * Mise a jour: $Date: 2004/07/30 14:38:59 $ - * par : $Author: pineau $ + * Mise a jour: $Date: 2004/08/06 17:48:52 $ + * par : $Author: bpoussin $ */ package org.codelutin.topia.persistence; @@ -36,6 +36,7 @@ import java.io.Writer; import java.util.Iterator; +import org.codelutin.generator.Generator; import org.codelutin.generator.models.object.ObjectModelAttribute; import org.codelutin.generator.models.object.ObjectModelClass; import org.codelutin.generator.models.object.ObjectModelClassifier; @@ -45,6 +46,10 @@ import org.codelutin.topia.generators.Util; public class LazyEntityGenerator extends TopiaAbstractObjectModelGenerator { // LazyEntityGenerator + + public LazyEntityGenerator(Generator parent){ + super(parent); + } public String getFilenameForClassifier(ObjectModelClassifier clazz) { return (clazz.getPackageName()+".persistence.jdo.").replace('.', File.separatorChar)+clazz.getName()+"Lazy.java"; Index: topia/src/java/org/codelutin/topia/persistence/PersistenceHelper.java diff -u topia/src/java/org/codelutin/topia/persistence/PersistenceHelper.java:1.3 topia/src/java/org/codelutin/topia/persistence/PersistenceHelper.java:1.4 --- topia/src/java/org/codelutin/topia/persistence/PersistenceHelper.java:1.3 Sun Aug 1 14:52:32 2004 +++ topia/src/java/org/codelutin/topia/persistence/PersistenceHelper.java Fri Aug 6 17:48:52 2004 @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2002, 2003, 2004 + * Copyright (C) 2002, 2003, 2004 * Code Lutin, Cédric Pineau, Benjamin Poussin * * This program is free software; you can redistribute it and/or @@ -23,10 +23,10 @@ * Created: Aug 1, 2004 * * @author Cédric Pineau - * @version $Revision: 1.3 $ + * @version $Revision: 1.4 $ * - * Last update : $Date: 2004/08/01 14:52:32 $ - * by : $Author: pineau $ + * Last update : $Date: 2004/08/06 17:48:52 $ + * by : $Author: bpoussin $ */ package org.codelutin.topia.persistence; @@ -38,28 +38,46 @@ import org.codelutin.topia.TopiaQuery; /** - * + * */ public interface PersistenceHelper { - public abstract TopiaEntity create(Class entityClass) throws TopiaException; + public TopiaEntity create(Class entityClass) throws TopiaException; - public abstract TopiaEntity makePersistent(TopiaEntity entity) + public TopiaEntity makePersistent(TopiaEntity entity) throws TopiaException; - public abstract TopiaEntity update(TopiaEntity entity) + public TopiaEntity update(TopiaEntity entity) throws TopiaException; - public abstract void delete(TopiaEntity entity) throws TopiaException; + public void delete(TopiaEntity entity) throws TopiaException; /** * Permet de récupéré une liste d'objet par rapport a une requete. - * + * * @param query * la requete a executer * @return une List d'objets */ - public abstract List find(TopiaQuery query) throws TopiaException; + public List find(TopiaQuery query) throws TopiaException; + + public int size(TopiaQuery query) throws TopiaException; + + /** + * Charge le XML passé en paramètre dans la base + * @param xml une chaine XML + */ + public void load(String xml) throws TopiaException; + + /** + * Sauve toute la base en XML + * @return une chaine XML + */ + public String exportXML() throws TopiaException; + + /** + * Recherche un objet par son identifiant + */ + public TopiaEntity findByTopiaId(String id) throws TopiaException; - public abstract int size(TopiaQuery query) throws TopiaException; }