Java源码示例:org.apache.xerces.util.SymbolTable

示例1
private synchronized PreparseResult preparse(String schemasId, List<Schema> schemas) throws ConfigurationException {
	SymbolTable symbolTable = getSymbolTable();
	XMLGrammarPool grammarPool = new XMLGrammarPoolImpl();
	Set<String> namespaceSet = new HashSet<String>();
	XMLGrammarPreparser preparser = new XMLGrammarPreparser(symbolTable);
	preparser.setEntityResolver(new ClassLoaderXmlEntityResolver(getConfigurationClassLoader()));
	preparser.registerPreparser(XMLGrammarDescription.XML_SCHEMA, null);
	preparser.setProperty(GRAMMAR_POOL, grammarPool);
	preparser.setFeature(NAMESPACES_FEATURE_ID, true);
	preparser.setFeature(VALIDATION_FEATURE_ID, true);
	preparser.setFeature(SCHEMA_VALIDATION_FEATURE_ID, true);
	preparser.setFeature(SCHEMA_FULL_CHECKING_FEATURE_ID, isFullSchemaChecking());
	try {
		preparser.setProperty(XML_SCHEMA_VERSION_PROPERTY, isXmlSchema1_0() ? Constants.W3C_XML_SCHEMA10EX_NS_URI : Constants.W3C_XML_SCHEMA11_NS_URI);
	} catch (NoSuchFieldError e) {
		String msg="Cannot set property ["+XML_SCHEMA_VERSION_PROPERTY+"], requested xmlSchemaVersion ["+getXmlSchemaVersion()+"] xercesVersion ("+org.apache.xerces.impl.Version.getVersion()+"]";
		if (isXmlSchema1_0()) {
			log.warn(msg+", assuming XML-Schema version 1.0 will be supported", e);
		} else {
			throw new ConfigurationException(msg, e);
		}
	}
	MyErrorHandler errorHandler = new MyErrorHandler();
	errorHandler.warn = warn;
	preparser.setErrorHandler(errorHandler);
	for (Schema schema : schemas) {
		Grammar grammar = preparse(preparser, schemasId, schema);
		registerNamespaces(grammar, namespaceSet);
	}
	grammarPool.lockPool();
	PreparseResult preparseResult = new PreparseResult();
	preparseResult.setSchemasId(schemasId);
	preparseResult.setSymbolTable(symbolTable);
	preparseResult.setGrammarPool(grammarPool);
	preparseResult.setNamespaceSet(namespaceSet);
	return preparseResult;
}
 
示例2
public static SymbolTable getSymbolTableInstance() {
	return SymbolTableSingletonHelper.INSTANCE;
}
 
示例3
private SymbolTable getSymbolTable() {
	if (sharedSymbolTable) {
		return getSymbolTableInstance();
	} 
	return new SymbolTable(BIG_PRIME);
}
 
示例4
public SymbolTable getSymbolTable() {
	return preparseResult.getSymbolTable();
}
 
示例5
public SymbolTable getSymbolTable() {
	return symbolTable;
}
 
示例6
public void setSymbolTable(SymbolTable symbolTable) {
	this.symbolTable = symbolTable;
}
 
示例7
/**
 * Constructs a parser configuration using the specified symbol table.
 *
 * @param symbolTable The symbol table to use.
 */
public XMLModelAwareParserConfiguration(SymbolTable symbolTable) {
	this(symbolTable, null, null);
}
 
示例8
/**
 * Constructs a parser configuration using the specified symbol table and
 * grammar pool.
 * <p>
 *
 * @param symbolTable The symbol table to use.
 * @param grammarPool The grammar pool to use.
 */
public XMLModelAwareParserConfiguration(SymbolTable symbolTable, XMLGrammarPool grammarPool) {
	this(symbolTable, grammarPool, null);
}
 
示例9
/**
 * Constructs a parser configuration using the specified symbol table, grammar
 * pool, and parent settings.
 * <p>
 *
 * @param symbolTable    The symbol table to use.
 * @param grammarPool    The grammar pool to use.
 * @param parentSettings The parent settings.
 */
public XMLModelAwareParserConfiguration(SymbolTable symbolTable, XMLGrammarPool grammarPool,
		XMLComponentManager parentSettings) {
	super(symbolTable, grammarPool, parentSettings);
}