private void registerExtensionPoint( final String extensionPointName, String extensionPointBeanClass, PluginDescriptor descriptor, ExtensionPoint.Kind kind) { if (hasExtensionPoint(extensionPointName)) { if (DEBUG_REGISTRATION) { final ExtensionPointImpl oldEP = getExtensionPoint(extensionPointName); myLogger.error( "Duplicate registration for EP: " + extensionPointName + ": original plugin " + oldEP.getDescriptor().getPluginId() + ", new plugin " + descriptor.getPluginId(), myEPTraces.get(extensionPointName)); } throw new RuntimeException("Duplicate registration for EP: " + extensionPointName); } registerExtensionPoint( new ExtensionPointImpl( extensionPointName, extensionPointBeanClass, kind, this, myAreaInstance, myLogger, descriptor)); }
public void resumeInteractions() { myAvailabilityNotificationsActive = true; ExtensionPoint[] extensionPoints = getExtensionPoints(); for (ExtensionPoint extensionPoint : extensionPoints) { extensionPoint.getExtensions(); // creates extensions from ComponentAdapters } for (Runnable action : mySuspendedListenerActions) { try { action.run(); } catch (Exception e) { myLogger.error(e); } } mySuspendedListenerActions.clear(); }