Author: glandais Date: 2007-12-10 15:21:14 +0000 (Mon, 10 Dec 2007) New Revision: 61 Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DataEntityFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java Removed: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DescriptorFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/EntityFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/FileEntityFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java Log: Refactoring des factories Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,33 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Code; - -public class CodeFactory<E extends Code> extends EntityFactory<Code> { - - public static final String KEY_LANGUAGE = "language"; - public static final String KEY_CODE = "code"; - - @Override - public Code createInstance() { - return new Code(); - } - - @Override - public Code loadXMLElement(Element xmlElement) throws Exception { - Code code = super.loadXMLElement(xmlElement); - code.setLanguage(getProperty(xmlElement, KEY_LANGUAGE)); - code.setCode(getProperty(xmlElement, KEY_CODE)); - return code; - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - Code element) throws Exception { - setProperty(document, xmlElement, KEY_LANGUAGE, element.getLanguage()); - setProperty(document, xmlElement, KEY_CODE, element.getCode()); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/CodeFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,33 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Code; + +public class CodeFactory<E extends Code> extends DataEntityFactory<Code> { + + public static final String KEY_LANGUAGE = "language"; + public static final String KEY_CODE = "code"; + + @Override + public Code createInstance() { + return new Code(); + } + + @Override + public Code loadXMLElement(Element xmlElement) throws Exception { + Code code = super.loadXMLElement(xmlElement); + code.setLanguage(getProperty(xmlElement, KEY_LANGUAGE)); + code.setCode(getProperty(xmlElement, KEY_CODE)); + return code; + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + Code element) throws Exception { + setProperty(document, xmlElement, KEY_LANGUAGE, element.getLanguage()); + setProperty(document, xmlElement, KEY_CODE, element.getCode()); + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,59 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Code; -import fr.cemagref.simexplorer.is.storage.entities.Component; -import fr.cemagref.simexplorer.is.storage.entities.Constant; -import fr.cemagref.simexplorer.is.storage.entities.Library; -import fr.cemagref.simexplorer.is.storage.entities.Structure; - -public class ComponentFactory<E extends Component> extends - LoggableElementFactory<Component> { - - public static final String KEY_CONSTANTS = "constants"; - public static final String KEY_CONSTANT_NODE = "constant"; - public static final String KEY_STRUCTURE = "structures"; - public static final String KEY_STRUCTURE_NODE = "structure"; - public static final String KEY_CODES = "codes"; - public static final String KEY_CODE_NODE = "code"; - public static final String KEY_LIBRARIES = "libraries"; - public static final String KEY_LIBRARY_NODE = "library"; - - @Override - public Component createInstance() { - return new Component(); - } - - @Override - public Component loadXMLElement(Element xmlElement) throws Exception { - Component component = super.loadXMLElement(xmlElement); - - component.setConstants(loadCollection(KEY_CONSTANTS, KEY_CONSTANT_NODE, - Constant.class, xmlElement)); - component.setStructures(loadCollection(KEY_STRUCTURE, - KEY_STRUCTURE_NODE, Structure.class, xmlElement)); - component.setCodes(loadCollection(KEY_CODES, KEY_CODE_NODE, Code.class, - xmlElement)); - component.setLibraries(loadCollection(KEY_LIBRARIES, KEY_LIBRARY_NODE, - Library.class, xmlElement)); - - return component; - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - Component element) throws Exception { - saveCollection(element.getConstants(), KEY_CONSTANTS, - KEY_CONSTANT_NODE, Constant.class, document, xmlElement); - saveCollection(element.getStructures(), KEY_STRUCTURE, - KEY_STRUCTURE_NODE, Structure.class, document, xmlElement); - saveCollection(element.getCodes(), KEY_CODES, KEY_CODE_NODE, - Code.class, document, xmlElement); - saveCollection(element.getLibraries(), KEY_LIBRARIES, KEY_LIBRARY_NODE, - Library.class, document, xmlElement); - super.saveXMLElement(document, xmlElement, element); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ComponentFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,58 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Code; +import fr.cemagref.simexplorer.is.storage.entities.data.Component; +import fr.cemagref.simexplorer.is.storage.entities.data.Constant; +import fr.cemagref.simexplorer.is.storage.entities.data.Library; +import fr.cemagref.simexplorer.is.storage.entities.data.Structure; + +public class ComponentFactory<E extends Component> extends + DataEntityFactory<Component> { + + public static final String KEY_CONSTANTS = "constants"; + public static final String KEY_CONSTANT_NODE = "constant"; + public static final String KEY_STRUCTURE = "structures"; + public static final String KEY_STRUCTURE_NODE = "structure"; + public static final String KEY_CODES = "codes"; + public static final String KEY_CODE_NODE = "code"; + public static final String KEY_LIBRARIES = "libraries"; + public static final String KEY_LIBRARY_NODE = "library"; + + @Override + public Component createInstance() { + return new Component(); + } + + @Override + public Component loadXMLElement(Element xmlElement) throws Exception { + Component component = super.loadXMLElement(xmlElement); + + component.setConstants(loadCollection(KEY_CONSTANTS, KEY_CONSTANT_NODE, + Constant.class, xmlElement, component)); + component.setStructures(loadCollection(KEY_STRUCTURE, + KEY_STRUCTURE_NODE, Structure.class, xmlElement, component)); + component.setCodes(loadCollection(KEY_CODES, KEY_CODE_NODE, Code.class, + xmlElement, component)); + component.setLibraries(loadCollection(KEY_LIBRARIES, KEY_LIBRARY_NODE, + Library.class, xmlElement, component)); + + return component; + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + Component element) throws Exception { + saveCollection(element.getConstants(), KEY_CONSTANTS, + KEY_CONSTANT_NODE, Constant.class, document, xmlElement); + saveCollection(element.getStructures(), KEY_STRUCTURE, + KEY_STRUCTURE_NODE, Structure.class, document, xmlElement); + saveCollection(element.getCodes(), KEY_CODES, KEY_CODE_NODE, + Code.class, document, xmlElement); + saveCollection(element.getLibraries(), KEY_LIBRARIES, KEY_LIBRARY_NODE, + Library.class, document, xmlElement); + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,36 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Constant; - -public class ConstantFactory<E extends Constant> extends - EntityFactory<Constant> { - - public static final String KEY_NAME = "name"; - public static final String KEY_TYPE = "type"; - - @Override - public Constant createInstance() { - return new Constant(); - } - - @Override - public Constant loadXMLElement(Element xmlElement) throws Exception { - Constant constant = super.loadXMLElement(xmlElement); - constant.setName(getProperty(xmlElement, KEY_NAME)); - String className = getProperty(xmlElement, KEY_TYPE); - constant.setType(Class.forName(className)); - return constant; - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - Constant element) throws Exception { - setProperty(document, xmlElement, KEY_NAME, element.getName()); - String className = element.getType().getName(); - setProperty(document, xmlElement, KEY_TYPE, className); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,36 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Constant; + +public class ConstantFactory<E extends Constant> extends + DataEntityFactory<Constant> { + + public static final String KEY_NAME = "name"; + public static final String KEY_TYPE = "type"; + + @Override + public Constant createInstance() { + return new Constant(); + } + + @Override + public Constant loadXMLElement(Element xmlElement) throws Exception { + Constant constant = super.loadXMLElement(xmlElement); + constant.setName(getProperty(xmlElement, KEY_NAME)); + String className = getProperty(xmlElement, KEY_TYPE); + constant.setType(Class.forName(className)); + return constant; + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + Constant element) throws Exception { + setProperty(document, xmlElement, KEY_NAME, element.getName()); + String className = element.getType().getName(); + setProperty(document, xmlElement, KEY_TYPE, className); + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,41 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Constant; -import fr.cemagref.simexplorer.is.storage.entities.ConstantValue; - -public class ConstantValueFactory<E extends ConstantValue> extends - EntityFactory<ConstantValue> { - - public static final String KEY_CONSTANT = "constant"; - public static final String KEY_VALUE = "value"; - - @Override - public ConstantValue createInstance() { - return new ConstantValue(); - } - - @Override - public ConstantValue loadXMLElement(Element xmlElement) throws Exception { - ConstantValue constantValue = super.loadXMLElement(xmlElement); - constantValue.setConstant((Constant) getFactory(Constant.class) - .loadXMLElement(getElementByTagName(xmlElement, KEY_CONSTANT))); - constantValue.setValue(getProperty(xmlElement, KEY_VALUE)); - return constantValue; - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - ConstantValue element) throws Exception { - - Element xmlConstant = document.createElement(KEY_CONSTANT); - getFactory(Constant.class).saveXMLElement(document, xmlConstant, - element.getConstant()); - xmlElement.appendChild(xmlConstant); - - setProperty(document, xmlElement, KEY_VALUE, element.getValue()); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ConstantValueFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,41 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Constant; +import fr.cemagref.simexplorer.is.storage.entities.data.ConstantValue; + +public class ConstantValueFactory<E extends ConstantValue> extends + DataEntityFactory<ConstantValue> { + + public static final String KEY_CONSTANT = "constant"; + public static final String KEY_VALUE = "value"; + + @Override + public ConstantValue createInstance() { + return new ConstantValue(); + } + + @Override + public ConstantValue loadXMLElement(Element xmlElement) throws Exception { + ConstantValue constantValue = super.loadXMLElement(xmlElement); + constantValue.setConstant((Constant) getFactory(Constant.class) + .loadXMLElement(getElementByTagName(xmlElement, KEY_CONSTANT))); + constantValue.setValue(getProperty(xmlElement, KEY_VALUE)); + return constantValue; + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + ConstantValue element) throws Exception { + + Element xmlConstant = document.createElement(KEY_CONSTANT); + getFactory(Constant.class).saveXMLElement(document, xmlConstant, + element.getConstant()); + xmlElement.appendChild(xmlConstant); + + setProperty(document, xmlElement, KEY_VALUE, element.getValue()); + } + +} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DataEntityFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DataEntityFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DataEntityFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,186 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import java.io.ByteArrayOutputStream; +import java.io.OutputStream; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerFactory; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamResult; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; +import org.w3c.dom.Text; + +import fr.cemagref.simexplorer.is.storage.entities.data.DataEntity; + +public abstract class DataEntityFactory<E extends DataEntity> { + + private static DocumentBuilder documentBuilder = null; + + private static Map<String, DataEntityFactory<? extends DataEntity>> factories = new HashMap<String, DataEntityFactory<? extends DataEntity>>(); + + private final static String PACKAGE_DAO = "fr.cemagref.simexplorer.is.storage.factories"; + + public static synchronized DocumentBuilder getBuilder() throws Exception { + if (documentBuilder == null) { + DocumentBuilderFactory factory = DocumentBuilderFactory + .newInstance(); + documentBuilder = factory.newDocumentBuilder(); + return documentBuilder; + } + return documentBuilder; + } + + // @SuppressWarnings("unchecked") + public static <T extends DataEntity> DataEntityFactory<T> getFactory( + Class<T> entityClass) throws Exception { + // FIXME Raw types and unchecked casts + DataEntityFactory<T> result = (DataEntityFactory<T>) factories + .get(entityClass.getSimpleName()); + if (result == null) { + String elementFactoryClassName = PACKAGE_DAO + "." + + entityClass.getSimpleName() + "Factory"; + + Class<? extends DataEntityFactory<T>> factoryClass = (Class<? extends DataEntityFactory<T>>) Class + .forName(elementFactoryClassName).asSubclass( + DataEntityFactory.class); + + result = factoryClass.newInstance(); + factories.put(entityClass.getSimpleName(), result); + } + return result; + } + + public static DataEntityFactory<? extends DataEntity> getFactory( + String entityClassName) throws Exception { + Class<? extends DataEntity> entityClass = Class + .forName(entityClassName).asSubclass(DataEntity.class); + return getFactory(entityClass); + } + + public abstract E createInstance(); + + protected Element getElementByTagName(Element xmlElement, String tagName) { + Set<Element> elements = getElementsByTagName(xmlElement, tagName); + if (elements.size() > 0) { + return elements.iterator().next(); + } else { + return null; + } + } + + protected Set<Element> getElementsByTagName(Element xmlElement, + String tagName) { + Set<Element> elements = new HashSet<Element>(); + + NodeList nodes = xmlElement.getChildNodes(); + for (int i = 0; i < nodes.getLength(); i++) { + Node node = nodes.item(i); + if (node instanceof Element + && tagName.equals(((Element) node).getTagName())) { + elements.add((Element) node); + } + } + return elements; + } + + public String getElementXML(E element) throws Exception { + ByteArrayOutputStream writer = new ByteArrayOutputStream(); + getElementXML(element, writer); + return writer.toString(); + } + + public void getElementXML(E element, OutputStream os) throws Exception { + org.w3c.dom.Document xmlDocument = getBuilder().newDocument(); + // Propriétés du DOM + xmlDocument.setXmlVersion("1.0"); + xmlDocument.setXmlStandalone(true); + // Création de l'arborescence du DOM + Element racine = xmlDocument.createElement(element.getClass() + .getSimpleName()); + + saveXMLElement(xmlDocument, racine, element); + + xmlDocument.appendChild(racine); + DOMSource domSource = new DOMSource(xmlDocument); + StreamResult result = new StreamResult(os); + TransformerFactory tf = TransformerFactory.newInstance(); + Transformer transformer = tf.newTransformer(); + transformer.transform(domSource, result); + } + + protected String getProperty(Element xmlElement, String tagName) { + Element element = getElementByTagName(xmlElement, tagName); + if (element != null) { + return element.getFirstChild().getNodeValue(); + } else { + return null; + } + } + + public <T extends DataEntity> Set<T> loadCollection(String tagSetName, + String tagName, Class<T> clazz, Element xmlElement, + DataEntity parentData) throws Exception { + Set<T> entities = new HashSet<T>(); + + Element xmlCollection = getElementByTagName(xmlElement, tagSetName); + if (xmlCollection != null) { + DataEntityFactory<T> elementFactory = getFactory(clazz); + + Set<Element> list = getElementsByTagName(xmlCollection, tagName); + for (Element element : list) { + T entity = elementFactory.loadXMLElement(element); + entity.setParentData(parentData); + entities.add(entity); + } + } + + return entities; + } + + public E loadXMLElement(Element xmlElement) throws Exception { + E element = createInstance(); + return element; + } + + public <T extends DataEntity> void saveCollection(Set<T> entities, + String tagSetName, String tagName, Class<T> clazz, + Document document, Element xmlElement) throws Exception { + if (entities != null && entities.size() > 0) { + Element xmlCollection = document.createElement(tagSetName); + DataEntityFactory<T> elementFactory = getFactory(clazz); + for (T entity : entities) { + Element childElement = document.createElement(tagName); + // TODO + // if (entity instanceof LoggableElement) { + // elementFactory.saveXMLElementByReference + elementFactory.saveXMLElement(document, childElement, entity); + xmlCollection.appendChild(childElement); + } + xmlElement.appendChild(xmlCollection); + } + } + + public abstract void saveXMLElement(Document document, Element xmlElement, + E element) throws Exception; + + protected void setProperty(Document document, Element xmlElement, + String tagName, Object value) { + if (value != null) { + Element xmlProperty = document.createElement(tagName); + Text xmlDescriptionText = document.createTextNode(value.toString()); + xmlProperty.appendChild(xmlDescriptionText); + xmlElement.appendChild(xmlProperty); + } + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DescriptorFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DescriptorFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/DescriptorFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,30 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Descriptor; - -public class DescriptorFactory<E extends Descriptor> extends - EntityFactory<Descriptor> { - - public static final String KEY_NAME = "name"; - public static final String KEY_VALUE = "value"; - - public Descriptor createInstance() { - return new Descriptor(); - } - - public Descriptor loadXMLElement(Element xmlElement) throws Exception { - Descriptor descriptor = super.loadXMLElement(xmlElement); - descriptor.setName(xmlElement.getAttribute(KEY_NAME)); - descriptor.setValue(xmlElement.getAttribute(KEY_VALUE)); - return descriptor; - } - - public void saveXMLElement(org.w3c.dom.Document document, - Element xmlElement, Descriptor element) throws Exception { - xmlElement.setAttribute(KEY_NAME, element.getName()); - xmlElement.setAttribute(KEY_VALUE, element.getValue()); - } - -} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/EntityFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/EntityFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/EntityFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,185 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import java.io.ByteArrayOutputStream; -import java.io.OutputStream; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; -import javax.xml.transform.Transformer; -import javax.xml.transform.TransformerFactory; -import javax.xml.transform.dom.DOMSource; -import javax.xml.transform.stream.StreamResult; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.w3c.dom.Text; - -import fr.cemagref.simexplorer.is.storage.entities.Entity; - -public abstract class EntityFactory<E extends Entity> { - - private final static String PACKAGE_DAO = "fr.cemagref.simexplorer.is.storage.factories"; - - private static Map<String, EntityFactory<? extends Entity>> factories = new HashMap<String, EntityFactory<? extends Entity>>(); - - private static DocumentBuilder documentBuilder = null; - - public static synchronized DocumentBuilder getBuilder() throws Exception { - if (documentBuilder == null) { - DocumentBuilderFactory factory = DocumentBuilderFactory - .newInstance(); - documentBuilder = factory.newDocumentBuilder(); - return documentBuilder; - } - return documentBuilder; - } - - public static EntityFactory<? extends Entity> getFactory( - String entityClassName) throws Exception { - Class<? extends Entity> entityClass = Class.forName(entityClassName) - .asSubclass(Entity.class); - return getFactory(entityClass); - } - - // @SuppressWarnings("unchecked") - public static <T extends Entity> EntityFactory<T> getFactory( - Class<T> entityClass) throws Exception { - // FIXME Raw types and unchecked casts - EntityFactory<T> result = (EntityFactory<T>) factories.get(entityClass - .getSimpleName()); - if (result == null) { - String elementFactoryClassName = PACKAGE_DAO + "." - + entityClass.getSimpleName() + "Factory"; - - Class<? extends EntityFactory<T>> factoryClass = (Class<? extends EntityFactory<T>>) Class - .forName(elementFactoryClassName).asSubclass( - EntityFactory.class); - - result = factoryClass.newInstance(); - factories.put(entityClass.getSimpleName(), result); - } - return result; - } - - public abstract E createInstance(); - - public E loadXMLElement(Element xmlElement) throws Exception { - E element = createInstance(); - return element; - } - - protected Set<Element> getElementsByTagName(Element xmlElement, - String tagName) { - Set<Element> elements = new HashSet<Element>(); - - NodeList nodes = xmlElement.getChildNodes(); - for (int i = 0; i < nodes.getLength(); i++) { - Node node = nodes.item(i); - if (node instanceof Element - && tagName.equals(((Element) node).getTagName())) { - elements.add((Element) node); - } - } - return elements; - } - - protected Element getElementByTagName(Element xmlElement, String tagName) { - Set<Element> elements = getElementsByTagName(xmlElement, tagName); - if (elements.size() > 0) { - return elements.iterator().next(); - } else { - return null; - } - } - - protected void setProperty(Document document, Element xmlElement, - String tagName, Object value) { - if (value != null) { - Element xmlProperty = document.createElement(tagName); - Text xmlDescriptionText = document.createTextNode(value.toString()); - xmlProperty.appendChild(xmlDescriptionText); - xmlElement.appendChild(xmlProperty); - } - } - - protected String getProperty(Element xmlElement, String tagName) { - Element element = getElementByTagName(xmlElement, tagName); - if (element != null) { - return element.getFirstChild().getNodeValue(); - } else { - return null; - } - } - - public abstract void saveXMLElement(Document document, Element xmlElement, - E element) throws Exception; - - public void getElementXML(E element, OutputStream os) throws Exception { - org.w3c.dom.Document xmlDocument = getBuilder().newDocument(); - // Propriétés du DOM - xmlDocument.setXmlVersion("1.0"); - xmlDocument.setXmlStandalone(true); - // Création de l'arborescence du DOM - Element racine = xmlDocument.createElement(element.getClass() - .getSimpleName()); - - saveXMLElement(xmlDocument, racine, element); - - xmlDocument.appendChild(racine); - DOMSource domSource = new DOMSource(xmlDocument); - StreamResult result = new StreamResult(os); - TransformerFactory tf = TransformerFactory.newInstance(); - Transformer transformer = tf.newTransformer(); - transformer.transform(domSource, result); - } - - public String getElementXML(E element) throws Exception { - ByteArrayOutputStream writer = new ByteArrayOutputStream(); - getElementXML(element, writer); - return writer.toString(); - } - - public <T extends Entity> Set<T> loadCollection(String tagSetName, - String tagName, Class<T> clazz, Element xmlElement) - throws Exception { - Set<T> entities = new HashSet<T>(); - - Element xmlCollection = getElementByTagName(xmlElement, tagSetName); - if (xmlCollection != null) { - EntityFactory<T> elementFactory = getFactory(clazz); - - Set<Element> list = getElementsByTagName(xmlCollection, tagName); - for (Element element : list) { - T entity = elementFactory.loadXMLElement(element); - entities.add(entity); - } - } - - return entities; - } - - public <T extends Entity> void saveCollection(Set<T> entities, - String tagSetName, String tagName, Class<T> clazz, - Document document, Element xmlElement) throws Exception { - if (entities != null && entities.size() > 0) { - Element xmlCollection = document.createElement(tagSetName); - EntityFactory<T> elementFactory = getFactory(clazz); - for (T entity : entities) { - Element childElement = document.createElement(tagName); - // TODO - // if (entity instanceof LoggableElement) { - // elementFactory.saveXMLElementByReference - elementFactory.saveXMLElement(document, childElement, entity); - xmlCollection.appendChild(childElement); - } - xmlElement.appendChild(xmlCollection); - } - } - -} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,44 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Component; -import fr.cemagref.simexplorer.is.storage.entities.ExplorationApplication; -import fr.cemagref.simexplorer.is.storage.entities.ExplorationData; - -public class ExplorationApplicationFactory extends - LoggableElementFactory<ExplorationApplication> { - - public static final String KEY_DATA = "data"; - public static final String KEY_DATA_NODE = "explorationdata"; - public static final String KEY_COMPONENTS = "components"; - public static final String KEY_COMPONENT_NODE = "component"; - - @Override - public void saveXMLElement(Document document, Element xmlElement, - ExplorationApplication element) throws Exception { - super.saveXMLElement(document, xmlElement, element); - saveCollection(element.getExplorations(), KEY_DATA, KEY_DATA_NODE, - ExplorationData.class, document, xmlElement); - saveCollection(element.getComponents(), KEY_COMPONENTS, - KEY_COMPONENT_NODE, Component.class, document, xmlElement); - } - - @Override - public ExplorationApplication loadXMLElement(Element xmlElement) - throws Exception { - ExplorationApplication explorationApplication = super - .loadXMLElement(xmlElement); - explorationApplication.setExplorations(loadCollection(KEY_DATA, - KEY_DATA_NODE, ExplorationData.class, xmlElement)); - explorationApplication.setComponents(loadCollection(KEY_COMPONENTS, - KEY_COMPONENT_NODE, Component.class, xmlElement)); - return explorationApplication; - } - - public ExplorationApplication createInstance() { - return new ExplorationApplication(); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationApplicationFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,46 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Component; +import fr.cemagref.simexplorer.is.storage.entities.data.ExplorationApplication; +import fr.cemagref.simexplorer.is.storage.entities.data.ExplorationData; + +public class ExplorationApplicationFactory extends + LoggableElementFactory<ExplorationApplication> { + + public static final String KEY_DATA = "data"; + public static final String KEY_DATA_NODE = "explorationdata"; + public static final String KEY_COMPONENTS = "components"; + public static final String KEY_COMPONENT_NODE = "component"; + + @Override + public void saveXMLElement(Document document, Element xmlElement, + ExplorationApplication element) throws Exception { + super.saveXMLElement(document, xmlElement, element); + saveCollection(element.getExplorations(), KEY_DATA, KEY_DATA_NODE, + ExplorationData.class, document, xmlElement); + saveCollection(element.getComponents(), KEY_COMPONENTS, + KEY_COMPONENT_NODE, Component.class, document, xmlElement); + } + + @Override + public ExplorationApplication loadXMLElement(Element xmlElement) + throws Exception { + ExplorationApplication explorationApplication = super + .loadXMLElement(xmlElement); + explorationApplication.setExplorations(loadCollection(KEY_DATA, + KEY_DATA_NODE, ExplorationData.class, xmlElement, + explorationApplication)); + explorationApplication.setComponents(loadCollection(KEY_COMPONENTS, + KEY_COMPONENT_NODE, Component.class, xmlElement, + explorationApplication)); + return explorationApplication; + } + + public ExplorationApplication createInstance() { + return new ExplorationApplication(); + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,47 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.ConstantValue; -import fr.cemagref.simexplorer.is.storage.entities.ExplorationData; -import fr.cemagref.simexplorer.is.storage.entities.Result; - -public class ExplorationDataFactory extends - LoggableElementFactory<ExplorationData> { - - public static final String KEY_RESULT = "result"; - public static final String KEY_VALUES = "values"; - public static final String KEY_VALUE = "value"; - - @Override - public ExplorationData loadXMLElement(Element xmlElement) throws Exception { - ExplorationData explorationData = super.loadXMLElement(xmlElement); - explorationData.setResult((Result) getFactory(Result.class) - .loadXMLElement(getElementByTagName(xmlElement, KEY_RESULT))); - explorationData.setValuesMap(loadCollection(KEY_VALUES, KEY_VALUE, - ConstantValue.class, xmlElement)); - return explorationData; - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - ExplorationData element) throws Exception { - super.saveXMLElement(document, xmlElement, element); - - Element xmlResult = document.createElement(KEY_RESULT); - getFactory(Result.class).saveXMLElement(document, xmlResult, - element.getResult()); - xmlElement.appendChild(xmlResult); - - saveCollection(element.getValuesMap(), KEY_VALUES, KEY_VALUE, - ConstantValue.class, document, xmlElement); - - } - - @Override - public ExplorationData createInstance() { - return new ExplorationData(); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ExplorationDataFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,47 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.ConstantValue; +import fr.cemagref.simexplorer.is.storage.entities.data.ExplorationData; +import fr.cemagref.simexplorer.is.storage.entities.data.Result; + +public class ExplorationDataFactory extends + LoggableElementFactory<ExplorationData> { + + public static final String KEY_RESULT = "result"; + public static final String KEY_VALUES = "values"; + public static final String KEY_VALUE = "value"; + + @Override + public ExplorationData loadXMLElement(Element xmlElement) throws Exception { + ExplorationData explorationData = super.loadXMLElement(xmlElement); + explorationData.setResult((Result) getFactory(Result.class) + .loadXMLElement(getElementByTagName(xmlElement, KEY_RESULT))); + explorationData.setValuesMap(loadCollection(KEY_VALUES, KEY_VALUE, + ConstantValue.class, xmlElement, explorationData)); + return explorationData; + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + ExplorationData element) throws Exception { + super.saveXMLElement(document, xmlElement, element); + + Element xmlResult = document.createElement(KEY_RESULT); + getFactory(Result.class).saveXMLElement(document, xmlResult, + element.getResult()); + xmlElement.appendChild(xmlResult); + + saveCollection(element.getValuesMap(), KEY_VALUES, KEY_VALUE, + ConstantValue.class, document, xmlElement); + + } + + @Override + public ExplorationData createInstance() { + return new ExplorationData(); + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/FileEntityFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/FileEntityFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/FileEntityFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,11 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import fr.cemagref.simexplorer.is.storage.attachment.AttachmentHandler; -import fr.cemagref.simexplorer.is.storage.attachment.fs.FileSystemAttachmentHandler; -import fr.cemagref.simexplorer.is.storage.database.DatabaseConstants; -import fr.cemagref.simexplorer.is.storage.entities.FileEntity; - -public abstract class FileEntityFactory<E extends FileEntity> extends - EntityFactory<E> implements DatabaseConstants { - -} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,12 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import fr.cemagref.simexplorer.is.storage.entities.Library; - -public class LibraryFactory extends LoggableElementFactory<Library> { - - @Override - public Library createInstance() { - return new Library(); - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LibraryFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,12 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import fr.cemagref.simexplorer.is.storage.entities.data.Library; + +public class LibraryFactory extends LoggableElementFactory<Library> { + + @Override + public Library createInstance() { + return new Library(); + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,50 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.database.DatabaseConstants; -import fr.cemagref.simexplorer.is.storage.entities.LoggableElement; - -public abstract class LoggableElementFactory<E extends LoggableElement> extends - FileEntityFactory<E> implements DatabaseConstants { - - private static final String KEY_DESCRIPTION = "description"; - - @Override - public E loadXMLElement(Element xmlElement) throws Exception { - E element = super.loadXMLElement(xmlElement); - element.setUuid(getProperty(xmlElement, KEY_UUID)); - element.setName(getProperty(xmlElement, KEY_NAME)); - element.setType(getProperty(xmlElement, KEY_TYPE)); - element.setDescription(getProperty(xmlElement, KEY_DESCRIPTION)); - element.setVersion(getProperty(xmlElement, KEY_VERSION)); - - // FIXME Convert - /* - * element.setCreationDate(new Date(getProperty(xmlElement, - * KEY_CREATIONDATE))); - */ - - element.setHash(getProperty(xmlElement, KEY_HASH)); - return element; - } - - @Override - public void saveXMLElement(org.w3c.dom.Document document, - Element xmlElement, E element) throws Exception { - - setProperty(document, xmlElement, KEY_UUID, element.getUuid()); - setProperty(document, xmlElement, KEY_NAME, element.getName()); - setProperty(document, xmlElement, KEY_TYPE, element.getType()); - setProperty(document, xmlElement, KEY_DESCRIPTION, element - .getDescription()); - setProperty(document, xmlElement, KEY_VERSION, element.getVersion()); - /* - * setProperty(document, xmlElement, KEY_CREATIONDATE, - * element.getCreationDate()); - */ - setProperty(document, xmlElement, KEY_HASH, element.getHash()); - - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/LoggableElementFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,54 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.database.DatabaseConstants; +import fr.cemagref.simexplorer.is.storage.entities.data.LoggableElement; + +public abstract class LoggableElementFactory<E extends LoggableElement> extends + DataEntityFactory<E> implements DatabaseConstants { + + private static final String KEY_DESCRIPTION = "description"; + + @Override + public E loadXMLElement(Element xmlElement) throws Exception { + E element = super.loadXMLElement(xmlElement); + /* + * element.setUuid(getProperty(xmlElement, KEY_UUID)); + * element.setName(getProperty(xmlElement, KEY_NAME)); + * element.setType(getProperty(xmlElement, KEY_TYPE)); + * element.setDescription(getProperty(xmlElement, KEY_DESCRIPTION)); + * element.setVersion(getProperty(xmlElement, KEY_VERSION)); + */ + // FIXME Load metadata + /* + * element.setCreationDate(new Date(getProperty(xmlElement, + * KEY_CREATIONDATE))); + */ + + // element.setHash(getProperty(xmlElement, KEY_HASH)); + return element; + } + + @Override + public void saveXMLElement(org.w3c.dom.Document document, + Element xmlElement, E element) throws Exception { + + // FIXME save metadata + + /* + * setProperty(document, xmlElement, KEY_UUID, element.getUuid()); + * setProperty(document, xmlElement, KEY_NAME, element.getName()); + * setProperty(document, xmlElement, KEY_TYPE, element.getType()); + * setProperty(document, xmlElement, KEY_DESCRIPTION, element + * .getDescription()); setProperty(document, xmlElement, KEY_VERSION, + * element.getVersion()); /* setProperty(document, xmlElement, + * KEY_CREATIONDATE, element.getCreationDate()); + */ + /* + * setProperty(document, xmlElement, KEY_HASH, element.getHash()); + */ + + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,22 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Repository; - -public class RepositoryFactory<E extends Repository> extends - EntityFactory<Repository> { - - @Override - public Repository createInstance() { - return new Repository(); - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - Repository element) throws Exception { - - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/RepositoryFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,22 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Repository; + +public class RepositoryFactory<E extends Repository> extends + DataEntityFactory<Repository> { + + @Override + public Repository createInstance() { + return new Repository(); + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + Repository element) throws Exception { + + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,21 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import fr.cemagref.simexplorer.is.storage.entities.Result; - -public class ResultFactory<E extends Result> extends FileEntityFactory<Result> { - - @Override - public Result createInstance() { - return new Result(); - } - - @Override - public void saveXMLElement(Document document, Element xmlElement, - Result element) throws Exception { - - } - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/ResultFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,21 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; + +import fr.cemagref.simexplorer.is.storage.entities.data.Result; + +public class ResultFactory<E extends Result> extends DataEntityFactory<Result> { + + @Override + public Result createInstance() { + return new Result(); + } + + @Override + public void saveXMLElement(Document document, Element xmlElement, + Result element) throws Exception { + + } + +} Deleted: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java 2007-12-10 15:20:48 UTC (rev 60) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -1,8 +0,0 @@ -package fr.cemagref.simexplorer.is.storage.factories; - -import fr.cemagref.simexplorer.is.storage.entities.Structure; - -public abstract class StructureFactory<E extends Structure> extends - EntityFactory<Structure> { - -} Added: trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java =================================================================== --- trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java (rev 0) +++ trunk/simexplorer-si-storage/src/java/fr/cemagref/simexplorer/is/storage/factories/StructureFactory.java 2007-12-10 15:21:14 UTC (rev 61) @@ -0,0 +1,8 @@ +package fr.cemagref.simexplorer.is.storage.factories; + +import fr.cemagref.simexplorer.is.storage.entities.data.Structure; + +public abstract class StructureFactory<E extends Structure> extends + DataEntityFactory<Structure> { + +}