Unverified Commit 79730a81 authored by Vladimir Krivosheev's avatar Vladimir Krivosheev
Browse files

avoid area.getExtensionPoint and do not use set — area always returns list without duplicated EP

parent 7f7de2e6
Showing with 9 additions and 10 deletions
+9 -10
......@@ -328,16 +328,20 @@ public class IdeaPluginDescriptorImpl implements IdeaPluginDescriptor {
// made public for Upsource
public void registerExtensions(@NotNull ExtensionsArea area, @NotNull String epName) {
registerExtensions(area, area.getExtensionPoint(epName));
}
// made public for Upsource
public void registerExtensions(@NotNull ExtensionsArea area, @NotNull ExtensionPoint<?> extensionPoint) {
if (myExtensions == null) {
return;
}
Collection<Element> elements = myExtensions.get(epName);
Collection<Element> elements = myExtensions.get(extensionPoint.getName());
if (elements.isEmpty()) {
return;
}
ExtensionPoint<Object> extensionPoint = area.getExtensionPoint(epName);
for (Element element : elements) {
area.registerExtension(extensionPoint, this, element);
}
......@@ -640,7 +644,7 @@ public class IdeaPluginDescriptorImpl implements IdeaPluginDescriptor {
myOptionalDescriptors = optionalDescriptors;
}
void mergeOptionalConfig(final IdeaPluginDescriptorImpl descriptor) {
void mergeOptionalConfig(@NotNull IdeaPluginDescriptorImpl descriptor) {
if (myExtensions == null) {
myExtensions = descriptor.myExtensions;
}
......
......@@ -1438,14 +1438,9 @@ public class PluginManagerCore {
}
ExtensionPoint[] extensionPoints = area.getExtensionPoints();
Set<String> epNames = new THashSet<>(extensionPoints.length);
for (ExtensionPoint point : extensionPoints) {
epNames.add(point.getName());
}
for (IdeaPluginDescriptorImpl descriptor : loadedPlugins) {
for (String epName : epNames) {
descriptor.registerExtensions(area, epName);
for (ExtensionPoint extensionPoint : extensionPoints) {
descriptor.registerExtensions(area, extensionPoint);
}
}
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment