public INodeBinder getNodeBinder(ISyntaxNode node) { INodeBinder binder = binderFactory == null ? null : binderFactory.getNodeBinder(node, configurationContext); if (binder != null) { return binder; } return parent == null ? null : parent.getNodeBinder(node); }
public synchronized void validate(IConfigurableResourceContext cxt) throws OpenConfigurationException { if (grammarFactory != null) { grammarFactory.validate(cxt); } else if (parent == null) { throw new OpenConfigurationException("Grammar class is not set", getUri(), null); } if (binderFactory != null) { binderFactory.validate(cxt); } else if (parent == null) { throw new OpenConfigurationException("Bindings are not set", getUri(), null); } // Methods and casts are optional // else if (parent == null) // throw new OpenConfigurationException("Methods are not set", getUri(), // null); if (methodFactory != null) { methodFactory.validate(cxt); } if (typeCastFactory != null) { typeCastFactory.validate(cxt); } if (typeFactory != null) { typeFactory.validate(cxt); } if (openFactories != null) { for (Iterator<IOpenFactoryConfiguration> iter = openFactories.values().iterator(); iter.hasNext(); ) { IOpenFactoryConfiguration factory = iter.next(); factory.validate(cxt); } } }