private void adaptOnCreate(IDOMNode node) { // give each of the factories a chance to adapt the node, if it // chooses to if (adaptOnCreateFactories != null) { synchronized (adaptOnCreateFactories) { int length = adaptOnCreateFactories.size(); for (int i = 0; i < length; i++) { INodeAdapterFactory factory = (INodeAdapterFactory) adaptOnCreateFactories.get(i); factory.adapt(node); } } } }
/** * @see PageDirectiveAdapter#adapt(INodeNotifier, Object) */ public INodeAdapter adapt(INodeNotifier notifier, Object type) { INodeAdapter result = null; // if embeddedContentType hasn't been set, // then we can not adapt it. if (embeddedTypeHandler != null) { if (embeddedFactoryRegistry != null) { Iterator iterator = embeddedFactoryRegistry.iterator(); INodeAdapterFactory factory = null; while (iterator.hasNext()) { factory = (INodeAdapterFactory) iterator.next(); if (factory.isFactoryForType(type)) { result = factory.adapt(notifier); break; } } } } return result; }
private void validate(IReporter reporter, IFile file, IDOMModel model) { if (file == null || model == null) return; // error IDOMDocument document = model.getDocument(); if (document == null) return; // error // This validator currently only handles validating HTML content in // JSP if (hasHTMLFeature(document)) { INodeAdapterFactory factory = HTMLValidationAdapterFactory.getInstance(); ValidationAdapter adapter = (ValidationAdapter) factory.adapt(document); if (adapter == null) return; // error HTMLValidationReporter rep = getReporter(reporter, file, model); rep.clear(); adapter.setReporter(rep); adapter.validate(document); } }