com.thaiopensource.relaxng.parse.sax.SAXSubParser Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of trang Show documentation
Show all versions of trang Show documentation
Trang, a multi-format schema converter based on RELAX NG.
package com.thaiopensource.relaxng.parse.sax;
import com.thaiopensource.relaxng.parse.Annotations;
import com.thaiopensource.relaxng.parse.BuildException;
import com.thaiopensource.relaxng.parse.CommentList;
import com.thaiopensource.relaxng.parse.SubParseable;
import com.thaiopensource.relaxng.parse.SubParser;
import com.thaiopensource.resolver.xml.sax.SAXResolver;
import com.thaiopensource.xml.util.WellKnownNamespaces;
import org.xml.sax.ErrorHandler;
import org.xml.sax.SAXException;
import java.io.IOException;
public class SAXSubParser, A extends Annotations> implements
SubParser {
final SAXResolver resolver;
final ErrorHandler eh;
SAXSubParser(SAXResolver resolver, ErrorHandler eh) {
this.resolver = resolver;
this.eh = eh;
}
public SubParseable
createSubParseable(String href, String base) throws BuildException {
try {
return new SAXParseable
(resolver.resolve(href, base, WellKnownNamespaces.RELAX_NG), resolver, eh);
}
catch (SAXException e) {
throw BuildException.fromSAXException(e);
}
catch (IOException e) {
throw new BuildException(e);
}
}
}