X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.xml.sax%2Fsrc%2Forg%2Fsimantics%2Fxml%2Fdata%2FDataSchemaConverter.java;fp=org.simantics.xml.sax%2Fsrc%2Forg%2Fsimantics%2Fxml%2Fdata%2FDataSchemaConverter.java;h=e94f93e95a8773e84ce655d3418f44b28dffa3f1;hb=fc60d91049c46ee5b6107da4d4c54eada4a9f21c;hp=0000000000000000000000000000000000000000;hpb=ab4fc05981803ce2c430f93f34b8b6a8f85a53ce;p=simantics%2Finterop.git diff --git a/org.simantics.xml.sax/src/org/simantics/xml/data/DataSchemaConverter.java b/org.simantics.xml.sax/src/org/simantics/xml/data/DataSchemaConverter.java new file mode 100644 index 0000000..e94f93e --- /dev/null +++ b/org.simantics.xml.sax/src/org/simantics/xml/data/DataSchemaConverter.java @@ -0,0 +1,54 @@ +package org.simantics.xml.data; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.Map; + +import javax.xml.bind.JAXBException; + +import org.simantics.xml.sax.SchemaConverter; +import org.w3._2001.xmlschema.Schema; + +public class DataSchemaConverter extends SchemaConverter { + + + private Map schemaMap; + private Map fileMap; + + public DataSchemaConverter(Schema schema, File schemaFile, File conversionFile, File outputPlugin) throws IOException { + super(schemaFile, conversionFile, outputPlugin); + this.schema = schema; + } + + @Override + protected Schema createSchema() throws JAXBException, FileNotFoundException { + return this.schema; + } + + public void setSchemaMap(Map schemaMap) { + this.schemaMap = schemaMap; + } + + public void setFileMap(Map fileMap) { + this.fileMap = fileMap; + } + + + @Override + protected SchemaConverter constructSubConverter(SchemaConverter parent, File schemaFile, File conversionFile, + File outputPlugin, String ns) throws IOException { + + Schema schema = ((DataSchemaConverter)getRoot()).schemaMap.get(ns); + File file = ((DataSchemaConverter)getRoot()).fileMap.get(schema); + return new DataSchemaConverter(schema, this, file, conversionFile, outputPlugin); + } + + public DataSchemaConverter(Schema schema, SchemaConverter parent, File schemaFile, File conversionFile, File outputPlugin) + throws IOException { + super(parent, schemaFile, conversionFile, outputPlugin); + this.schema = schema; + } + + +}