public <T> T resolveModel(Class<T> modelClass, T unresolved, ProcessorContext context) { // Lookup a definition for the given namespace QName qname = ((Composite)unresolved).getName(); Composite resolved = null; // Delegate the resolution to the imports for (Import import_ : this.contribution.getImports()) { if (import_ instanceof NamespaceImport) { NamespaceImport namespaceImport = (NamespaceImport)import_; if (namespaceImport.getNamespace().equals(qname.getNamespaceURI())) { // Delegate the resolution to the import resolver resolved = namespaceImport.getModelResolver().resolveModel(Composite.class, (Composite)unresolved, context); if (!resolved.isUnresolved()) { return modelClass.cast(resolved); } } } } // No definition found, search within the current contribution resolved = (Composite) map.get(qname); if (resolved != null) { return modelClass.cast(resolved); } return (T)unresolved; } }
public <T> T resolveModel(Class<T> modelClass, T unresolved, ProcessorContext context) { // Lookup a definition for the given namespace QName qname = ((Composite)unresolved).getName(); Composite resolved = null; // Delegate the resolution to the imports for (Import import_ : this.contribution.getImports()) { if (import_ instanceof NamespaceImport) { NamespaceImport namespaceImport = (NamespaceImport)import_; if (namespaceImport.getNamespace().equals(qname.getNamespaceURI())) { // Delegate the resolution to the import resolver resolved = namespaceImport.getModelResolver().resolveModel(Composite.class, (Composite)unresolved, context); if (!resolved.isUnresolved()) { return modelClass.cast(resolved); } } } } // No definition found, search within the current contribution resolved = (Composite) map.get(qname); if (resolved != null) { return modelClass.cast(resolved); } return (T)unresolved; } }
if (include != null) { Composite resolved = resolver.resolveModel(Composite.class, include, context); if (!resolved.isUnresolved()) { if ((composite.isLocal() && resolved.isLocal()) || (!composite.isLocal() && !resolved.isLocal())) { composite.getIncludes().set(i, resolved);
if (include != null) { Composite resolved = resolver.resolveModel(Composite.class, include, context); if (!resolved.isUnresolved()) { if ((composite.isLocal() && resolved.isLocal()) || (!composite.isLocal() && !resolved.isLocal())) { composite.getIncludes().set(i, resolved);
String uri = include.isUnresolved() ? include.getURI() : null; writeStart(writer, INCLUDE, new XAttr(NAME, include.getName()), new XAttr(URI, uri));
String uri = include.isUnresolved() ? include.getURI() : null; writeStart(writer, INCLUDE, new XAttr(NAME, include.getName()), new XAttr(URI, uri));