@Override public Collection<ExtensionId> getExtensionFeatures() { if (this.overwrites.containsKey(Extension.FIELD_EXTENSIONFEATURES)) { return ObjectUtils.defaultIfNull( (Collection<ExtensionId>) this.overwrites.get(Extension.FIELD_EXTENSIONFEATURES), Collections.emptyList()); } return getWrapped().getExtensionFeatures(); }
private void checkCoreExtension(Extension extension) throws InstallException { for (ExtensionId feature : extension.getExtensionFeatures()) { checkCoreExtension(feature.getId()); } }
private void addExtensionFeatures(Document document, Element parentElement, Extension extension) { Collection<ExtensionId> features = extension.getExtensionFeatures(); if (!features.isEmpty()) { Element featuresElement = document.createElement(ELEMENT_EXTENSIONFEATURES); parentElement.appendChild(featuresElement); for (ExtensionId feature : features) { Element authorElement = document.createElement(ELEMENT_EFFEATURE); featuresElement.appendChild(authorElement); addElement(document, authorElement, ELEMENT_EFFID, feature.getId()); addElement(document, authorElement, ELEMENT_EFFVERSION, feature.getVersion().getValue()); } } }
@Override public boolean isCompatible(Extension extension) { if (isCompatible(extension.getId())) { return true; } for (ExtensionId extensionId : extension.getExtensionFeatures()) { if (isCompatible(extensionId)) { return true; } } return false; }
private boolean checkExistingPlanNodeExtension(Extension extension, String namespace) throws InstallException { if (checkExistingPlanNodeExtension(extension.getId(), true, namespace)) { return true; } for (ExtensionId feature : extension.getExtensionFeatures()) { checkExistingPlanNodeExtension(feature, false, namespace); } return false; }
/** * Indicate if the passed extension is compatible with this dependency. * * @param extension the extension to check * @return true if the passed extension is compatible, false otherwise * @since 8.1M1 */ default boolean isCompatible(Extension extension) { if (isCompatible(extension.getId())) { return true; } for (ExtensionId extensionId : extension.getExtensionFeatures()) { if (isCompatible(extensionId)) { return true; } } return false; }
private boolean checkRootExtension(Extension extension) throws InstallException { boolean isRootExtension = checkRootExtension(extension.getId().getId()); for (ExtensionId feature : extension.getExtensionFeatures()) { isRootExtension |= checkRootExtension(feature.getId()); } return isRootExtension; }
previousExtensions.addAll(installedExtensions); for (ExtensionId feature : extension.getExtensionFeatures()) {
/** * Matches an extension in a case insensitive way. * * @param patternMatcher the pattern to match * @param filters the filters * @param extension the extension to match * @return false if one of the filter is not matching the extension * @since 7.0M2 */ public static boolean matches(Pattern patternMatcher, Collection<Filter> filters, Extension extension) { if (matches(patternMatcher, extension.getId().getId(), extension.getDescription(), extension.getSummary(), extension.getName(), ExtensionIdConverter.toStringList(extension.getExtensionFeatures()))) { for (Filter filter : filters) { if (!matches(filter, extension)) { return false; } } return true; } return false; }
private static Integer compareTo(Extension e1, Extension e2) { // Try to find e1 id in e2 ExtensionId feature = e2.getExtensionFeature(e1.getId().getId()); if (feature != null) { return ObjectUtils.compare(e1.getId().getVersion(), feature.getVersion()); } // Try to find e1 features in e2 for (ExtensionId feature1 : e1.getExtensionFeatures()) { feature = e2.getExtensionFeature(feature1.getId()); if (feature != null) { return ObjectUtils.compare(feature1.getVersion(), feature.getVersion()); } } return null; } }
@Override public void set(Extension extension) { setName(extension.getName()); setDescription(extension.getDescription()); setAuthors(extension.getAuthors()); setWebsite(extension.getWebSite()); setLicenses(extension.getLicenses()); setSummary(extension.getSummary()); setIssueManagement(extension.getIssueManagement()); setScm(extension.getScm()); setCategory(extension.getCategory()); setExtensionFeatures(extension.getExtensionFeatures()); setAllowedNamespaces(extension.getAllowedNamespaces()); setDependencies(extension.getDependencies()); setManagedDependencies(extension.getManagedDependencies()); setRepositories(extension.getRepositories()); setProperties(extension.getProperties()); }