@Override public void generate(DB[] dbs) throws IOException, GeneratorException, MergeException { // Use the latest database for retrieving package names DB db = dbs[dbs.length - 1]; // // Create SDOLibrary.java classes... // for (ObjectDef currentObj : db.getObjects()) { if (currentObj.isTopic()) { // Generate the package-specific SDOLibrary classes... String dir = fDir + "mappings" + File.separator + currentObj.fPackage; File md = new File(dir); md.mkdirs(); String fName = dir + File.separator + currentObj.getName() + ".xml"; Map<String, String> enums = new HashMap<String, String>(); System.out.println("- Generating: " + fName); PrintWriter out = new PrintWriter(new FileWriter(fName), true); out.println("<mappings id=\"Default\">"); out.println("<!-- ============================== -->"); out.println("<!-- Mappings for " + currentObj.getName() + " -->"); out.println("<!-- ============================== -->"); out.println("<object object=\"" + currentObj.getName() + "\">"); printMappings(db, currentObj, out, null, null, enums); out.println("</object>"); out.println(); for (String key : enums.keySet()) { EnumDef def = db.getEnum(key); if (def != null) { writeValueSet(def, out, enums.get(key)); } } out.println("</mappings>"); out.close(); } } }