1 package org.simantics.xml.sax;
3 import java.io.BufferedWriter;
5 import java.io.FileWriter;
6 import java.io.IOException;
7 import java.io.PrintWriter;
10 * Creates a SCL module for Java combination class.
12 * @see org.simantics.xml.sax.OntologyCombinator
17 public class SCLCombinator extends OntologyCombinator{
20 public void combine(File[] inputFiles, File outputFile) throws IOException {
21 super.process(inputFiles);
23 PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(outputFile)));
24 String className = outputFile.getName();
25 int dp = className.indexOf(".");
27 className = className.substring(0,dp);
30 writer.println("import \"Simantics/DB\"");
32 writer.println("importJava \"" + packageLine.substring(packageLineStart.length()+1,packageLine.length()-1) + "." + className + "\" where");
33 writer.println(" data " + className);
35 writer.println(" @JavaName getOntology");
36 writer.println(" getOntology :: Resource -> <ReadGraph> Maybe " + className);
38 for (String s : sortedResourcses) {
39 writer.println(" @JavaName "+s);
40 writer.println(" "+s+" :: " + className + " -> Maybe Resource");