From: Robert L. <rle...@us...> - 2007-02-20 13:38:53
|
Update of /cvsroot/ccmtools/ccmtools/src/ccmtools/ui In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv32500/src/ccmtools/ui Modified Files: Main.java Log Message: C++ assemblies Index: Main.java =================================================================== RCS file: /cvsroot/ccmtools/ccmtools/src/ccmtools/ui/Main.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Main.java 19 Jan 2007 12:07:31 -0000 1.6 --- Main.java 20 Feb 2007 13:38:50 -0000 1.7 *************** *** 27,31 **** import java.util.List; import java.util.logging.Logger; - import ccmtools.CcmtoolsException; import ccmtools.Constants; --- 27,30 ---- *************** *** 34,41 **** --- 33,42 ---- import ccmtools.CodeGenerator.GraphTraverser; import ccmtools.CodeGenerator.TemplateHandler; + import ccmtools.CppGenerator.CppAssemblyGenerator; import ccmtools.CppGenerator.CppLocalGenerator; import ccmtools.CppGenerator.CppLocalTestGenerator; import ccmtools.CppGenerator.CppRemoteGenerator; import ccmtools.CppGenerator.CppRemoteTestGenerator; + import ccmtools.parser.assembly.metamodel.Model; import ccmtools.parser.idl.metamodel.CcmModelHelper; import ccmtools.parser.idl.metamodel.BaseIDL.MContainer; *************** *** 60,68 **** private static String includePath; ! private static List<String> filenames; private static File outputDirectory = new File(System.getProperty("user.dir")); private static File baseOutputDirectory = new File(outputDirectory, ""); private static int generateFlags = 0; --- 61,73 ---- private static String includePath; ! private static List<String> idl_filenames; ! private static List<String> assembly_filenames; private static File outputDirectory = new File(System.getProperty("user.dir")); private static File baseOutputDirectory = new File(outputDirectory, ""); private static int generateFlags = 0; + + // assembly model + private static Model assemblies; *************** *** 166,174 **** } ! MContainer ccmModel = null; ! for(Iterator f = filenames.iterator(); f.hasNext();) { String fileName = (String)f.next(); ! ccmModel = CcmModelHelper.loadCcmModel(uiDriver, fileName, includePath); uiDriver.printMessage("traverse CCM model"); traverser.traverseGraph(ccmModel); --- 171,180 ---- } ! for(Iterator f = idl_filenames.iterator(); f.hasNext();) { String fileName = (String)f.next(); ! MContainer ccmModel = CcmModelHelper.loadCcmModel(uiDriver, fileName, includePath); ! if(assemblies!=null) ! assemblies.updateCcmModel(ccmModel); uiDriver.printMessage("traverse CCM model"); traverser.traverseGraph(ccmModel); *************** *** 266,269 **** --- 272,283 ---- handler = new CppLocalGenerator(driver, outputDirectory); } + else if(generatorType.equalsIgnoreCase("c++assembly")) + { + if(assemblies==null) + { + assemblies = ccmtools.parser.assembly.Main.parse(assembly_filenames); + } + handler = new CppAssemblyGenerator(driver, outputDirectory, assemblies); + } else if(generatorType.equalsIgnoreCase("c++local-test")) { *************** *** 326,330 **** usedGeneratorTypes = new ArrayList<String>(); availableGeneratorTypes = new ArrayList<String>(); ! filenames = new ArrayList<String>(); includePath = ""; --- 340,345 ---- usedGeneratorTypes = new ArrayList<String>(); availableGeneratorTypes = new ArrayList<String>(); ! idl_filenames = new ArrayList<String>(); ! assembly_filenames = new ArrayList<String>(); includePath = ""; *************** *** 389,393 **** } else { ! filenames.add(arg); } } --- 404,414 ---- } else { ! String x = arg.toLowerCase(); ! if(x.endsWith(".idl")) ! idl_filenames.add(arg); ! else if(x.endsWith(".assembly")) ! assembly_filenames.add(arg); ! else ! throw new IllegalArgumentException("unknown file type: "+arg); } } |