Author: tchemit Date: 2010-05-08 18:52:09 +0200 (Sat, 08 May 2010) New Revision: 893 Url: http://nuiton.org/repositories/revision/eugene/893 Log: improve code Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelGenerator.java Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelGenerator.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelGenerator.java 2010-05-08 16:51:38 UTC (rev 892) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelGenerator.java 2010-05-08 16:52:09 UTC (rev 893) @@ -152,8 +152,9 @@ * @param destDir dossier de destination pour le fichier généré * @param type type explicite d'ObjectModel */ - private void generateFromElements(Collection<? extends ObjectModelElement> elements, File destDir, - ObjectModelType type) { + private void generateFromElements(Collection<? extends ObjectModelElement> elements, + File destDir, + ObjectModelType type) { for (ObjectModelElement element : elements) { String filename = ""; @@ -189,8 +190,10 @@ * @param filename nom du fichier de sortie * @param type type d'ObjectModel */ - protected void generateFromElement(Object element, File destDir, String filename, - ObjectModelType type) { + protected void generateFromElement(Object element, + File destDir, + String filename, + ObjectModelType type) { // on a maintenant une restriction des elements a generer // c'est à dire un filtrage par package @@ -211,27 +214,33 @@ } try { StringWriter out = new StringWriter(); + MonitorWriter monitorOut = new MonitorWriter(out); + try { + switch (type) { + case OBJECT_MODEL: + generateFromModel(monitorOut, (ObjectModel) element); + break; + case OBJECT_MODEL_CLASSIFIER: + generateFromClassifier(monitorOut, (ObjectModelClassifier) element); + break; + case OBJECT_MODEL_INTERFACE: + generateFromInterface(monitorOut, (ObjectModelInterface) element); + break; + case OBJECT_MODEL_CLASS: + generateFromClass(monitorOut, (ObjectModelClass) element); + break; + case OBJECT_MODEL_ENUMERATION: + generateFromEnumeration(monitorOut, (ObjectModelEnumeration) element); + break; + } - switch (type) { - case OBJECT_MODEL: - generateFromModel(monitorOut,(ObjectModel)element); - break; - case OBJECT_MODEL_CLASSIFIER: - generateFromClassifier(monitorOut, (ObjectModelClassifier)element); - break; - case OBJECT_MODEL_INTERFACE: - generateFromInterface(monitorOut, (ObjectModelInterface)element); - break; - case OBJECT_MODEL_CLASS: - generateFromClass(monitorOut, (ObjectModelClass)element); - break; - case OBJECT_MODEL_ENUMERATION: - generateFromEnumeration(monitorOut, (ObjectModelEnumeration)element); - break; + write(outputFile, monitorOut); + + } finally { + monitorOut.close(); } - write(outputFile, monitorOut); } catch (Exception eee) { log.warn("Erreur lors de la génération du fichier " + outputFile); @@ -245,8 +254,9 @@ /** * Test if given element can be generated. * - * An element can be generated if his package is in the {@link #generatedPackages} list - * or if {@link #generatedPackages} is null or empty. + * An element can be generated if his package is in the + * {@link #generatedPackages} list or if {@link #generatedPackages} is + * null or empty. * * @param element element to test * @return generation allowed @@ -285,7 +295,8 @@ * @param packageName le nom du paquetage * @return le repertoire correspondant au paquetage */ - public String getFilenameForPackage(ObjectModel model, String packageName) { + public String getFilenameForPackage(ObjectModel model, + String packageName) { return packageName.replace('.', File.separatorChar); } @@ -326,21 +337,27 @@ // return enumeration.getQualifiedName().replace('.', File.separatorChar); } - public void generateFromModel(Writer output, ObjectModel model) throws IOException { + public void generateFromModel(Writer output, + ObjectModel model) throws IOException { } - public void generateFromInterface(Writer output, ObjectModelInterface interfacez) throws IOException { + public void generateFromInterface(Writer output, + ObjectModelInterface interfacez) throws IOException { } - public void generateFromEnum(Writer output, ObjectModelEnumeration interfacez) throws IOException { + public void generateFromEnum(Writer output, + ObjectModelEnumeration interfacez) throws IOException { } - public void generateFromClass(Writer output, ObjectModelClass clazz) throws IOException { + public void generateFromClass(Writer output, + ObjectModelClass clazz) throws IOException { } - public void generateFromClassifier(Writer output, ObjectModelClassifier clazz) throws IOException { + public void generateFromClassifier(Writer output, + ObjectModelClassifier clazz) throws IOException { } - public void generateFromEnumeration(Writer output, ObjectModelEnumeration enumeration) throws IOException { + public void generateFromEnumeration(Writer output, + ObjectModelEnumeration enumeration) throws IOException { } }
participants (1)
-
tchemit@users.nuiton.org