Added method for loading features from custom xml file #IDEA-171797

This commit is contained in:
Alexandr Evstigneev
2017-04-27 13:15:06 +03:00
parent b35ac83f23
commit 5e66eb1811
2 changed files with 22 additions and 0 deletions
@@ -16,6 +16,10 @@
package com.intellij.featureStatistics;
import com.intellij.openapi.extensions.ExtensionPointName;
import org.jetbrains.annotations.NotNull;
import java.util.Collection;
import java.util.Collections;
/**
* User: anna
@@ -29,4 +33,12 @@ public abstract class ProductivityFeaturesProvider {
public abstract GroupDescriptor[] getGroupDescriptors();
public abstract ApplicabilityFilter[] getApplicabilityFilters();
/**
* @return list of xml file urls with features configurations
*/
@NotNull
public Collection<String> getXmlFilesUrls() {
return Collections.emptyList();
}
}
@@ -85,6 +85,16 @@ public class ProductivityFeaturesRegistryImpl extends ProductivityFeaturesRegist
private void loadFeaturesFromProviders(ProductivityFeaturesProvider[] providers) {
for (ProductivityFeaturesProvider provider : providers) {
for (String xmlUrl : provider.getXmlFilesUrls()) {
try {
readFromXml(xmlUrl);
}
catch (Exception e) {
LOG.error("Error while reading " + xmlUrl + " from " + provider + ": " + e.getMessage());
}
}
final GroupDescriptor[] groupDescriptors = provider.getGroupDescriptors();
if (groupDescriptors != null) {
for (GroupDescriptor groupDescriptor : groupDescriptors) {