private Module findModuleFromImports(final Set<ModuleImport> imports, final String prefix) { for (final ModuleImport imp : imports) { if (imp.getPrefix().equals(prefix)) { return schemaContext.findModuleByName(imp.getModuleName(), imp.getRevision()); } } return null; }
@Override protected boolean isKnown(final Collection<SourceIdentifier> haystack, final ModuleImport mi) { final SemVerSourceIdentifier msi = SemVerSourceIdentifier.create(mi.getModuleName(), mi.getRevision(), mi.getSemanticVersion().orElse(null)); // Quick lookup if (haystack.contains(msi)) { return true; } // Slow revision-less walk return findCompatibleVersion(haystack, mi) != null; }
@Override protected boolean isKnown(final Collection<SourceIdentifier> haystack, final ModuleImport mi) { final SourceIdentifier msi = RevisionSourceIdentifier.create(mi.getModuleName(), mi.getRevision()); // Quick lookup if (haystack.contains(msi)) { return true; } // Slow revision-less walk return !mi.getRevision().isPresent() && findWildcard(haystack, mi.getModuleName()) != null; }
private static String getConfigModulePrefixFromImport(final Module currentModule) { for (ModuleImport currentImport : currentModule.getImports()) { if (currentImport.getModuleName().equals(ConfigConstants.CONFIG_MODULE)) { return currentImport.getPrefix(); } } throw new IllegalArgumentException("Cannot find import " + ConfigConstants.CONFIG_MODULE + " in " + currentModule); }
protected static SourceIdentifier findCompatibleVersion(final Iterable<SourceIdentifier> haystack, final ModuleImport mi) { final String requestedModuleName = mi.getModuleName(); for (SourceIdentifier r : haystack) { if (requestedModuleName.equals(r.getName()) && isCompatible(((SemVerSourceIdentifier) r).getSemanticVersion(), mi.getSemanticVersion())) { return r; } } return null; }
private static ModuleImport getModuleImport(final Module targetModule, final String prefix) { return targetModule.getImports().stream() .filter(imp -> prefix.equals(imp.getPrefix())).findFirst().orElse(null); } }
@Override protected boolean isKnown(final Collection<SourceIdentifier> haystack, final ModuleImport mi) { final SourceIdentifier msi = RevisionSourceIdentifier.create(mi.getModuleName(), mi.getRevision()); // Quick lookup if (haystack.contains(msi)) { return true; } // Slow revision-less walk return !mi.getRevision().isPresent() && findWildcard(haystack, mi.getModuleName()) != null; }
private static Map<String, URI> prefixToNamespace(final SchemaContext ctx, final Module module) { final BiMap<String, URI> prefixMap = HashBiMap.create(module.getImports().size() + 1); prefixMap.put(module.getPrefix(), module.getNamespace()); for (final ModuleImport imp : module.getImports()) { final String prefix = imp.getPrefix(); final URI namespace = getModuleNamespace(ctx, imp.getModuleName()); prefixMap.put(prefix, namespace); } return prefixMap; }
protected static SourceIdentifier findCompatibleVersion(final Iterable<SourceIdentifier> haystack, final ModuleImport mi) { final String requestedModuleName = mi.getModuleName(); for (SourceIdentifier r : haystack) { if (requestedModuleName.equals(r.getName()) && isCompatible(((SemVerSourceIdentifier) r).getSemanticVersion(), mi.getSemanticVersion())) { return r; } } return null; }
private static ModuleImport findModuleImport(final Module module, final String prefix) { for (ModuleImport moduleImport : module.getImports()) { if (moduleImport.getPrefix().equals(prefix)) { return moduleImport; } } throw new IllegalStateException(format("Import not found with prefix %s in %s", prefix, module)); }
private Module findModuleFromImports(final Set<ModuleImport> imports, final String prefix) { for (final ModuleImport imp : imports) { if (imp.getPrefix().equals(prefix)) { return schemaContext.findModule(imp.getModuleName(), imp.getRevision()).orElse(null); } } return null; }
private Optional<QNameModule> getQNameModuleForImportPrefix(final Module targetModule, final String prefix) { final ModuleImport moduleImport = getModuleImport(targetModule, prefix); if (moduleImport == null) { return Optional.empty(); } final String moduleName = moduleImport.getModuleName(); final Optional<Revision> revision = moduleImport.getRevision(); return schemaContext.findModule(moduleName, revision).map(Module::getQNameModule); }
private static Map<String, URI> prefixToNamespace(final SchemaContext ctx, final Module module) { final BiMap<String, URI> prefixMap = HashBiMap.create(module.getImports().size() + 1); prefixMap.put(module.getPrefix(), module.getNamespace()); for (final ModuleImport imp : module.getImports()) { final String prefix = imp.getPrefix(); final URI namespace = getModuleNamespace(ctx, imp.getModuleName()); prefixMap.put(prefix, namespace); } return prefixMap; }
@Override protected boolean isKnown(final Collection<SourceIdentifier> haystack, final ModuleImport mi) { final SemVerSourceIdentifier msi = SemVerSourceIdentifier.create(mi.getModuleName(), mi.getRevision(), mi.getSemanticVersion().orElse(null)); // Quick lookup if (haystack.contains(msi)) { return true; } // Slow revision-less walk return findCompatibleVersion(haystack, mi) != null; }
private static ModuleImport getModuleImport(final Module targetModule, final String prefix) { return targetModule.getImports().stream() .filter(imp -> prefix.equals(imp.getPrefix())).findFirst().orElse(null); } }
private void emitImport(final ModuleImport importNode) { super.writer.startImportNode(importNode.getModuleName()); emitDocumentedNode(importNode); emitPrefixNode(importNode.getPrefix()); importNode.getRevision().ifPresent(this::emitRevisionDateNode); super.writer.endNode(); }
private Optional<QNameModule> getQNameModuleForImportPrefix(final Module targetModule, final String prefix) { final ModuleImport moduleImport = getModuleImport(targetModule, prefix); if (moduleImport == null) { return Optional.empty(); } final String moduleName = moduleImport.getModuleName(); final Optional<Revision> revision = moduleImport.getRevision(); return schemaContext.findModule(moduleName, revision).map(Module::getQNameModule); }
_and = false; } else { String _moduleName = moduleImport.getModuleName(); boolean _isNullOrEmpty_1 = StringExtensions.isNullOrEmpty(_moduleName); boolean _not = (!_isNullOrEmpty_1); String _moduleName_1 = moduleImport.getModuleName(); _builder.append(_moduleName_1, ""); _builder.append(" { prefix \""); String _prefix = moduleImport.getPrefix(); _builder.append(_prefix, ""); _builder.append("\"; }");
if (prefix.equals(mi.getPrefix())) { return context.findModule(mi.getModuleName(), mi.getRevision()).orElse(null);
private static ServiceInterfaceEntry findSIE(final String prefixAndIdentityLocalName, final Module currentModule, final Map<QName, ServiceInterfaceEntry> qNamesToSIEs, final SchemaContext schemaContext) { Matcher m = PREFIX_COLON_LOCAL_NAME.matcher(prefixAndIdentityLocalName); Module foundModule; String localSIName; if (m.matches()) { // if there is a prefix, look for ModuleImport with this prefix. Get // Module from SchemaContext String prefix = m.group(1); ModuleImport moduleImport = findModuleImport(currentModule, prefix); foundModule = schemaContext.findModuleByName(moduleImport.getModuleName(), moduleImport.getRevision()); checkNotNull(foundModule, format("Module not found in SchemaContext by %s", moduleImport)); localSIName = m.group(2); } else { foundModule = currentModule; // no prefix => SIE is in currentModule localSIName = prefixAndIdentityLocalName; } QName siQName = QName.create(foundModule.getNamespace(), foundModule.getRevision(), localSIName); ServiceInterfaceEntry sie = qNamesToSIEs.get(siQName); checkState(sie != null, "Cannot find referenced Service Interface by " + prefixAndIdentityLocalName); return sie; }