Java 类org.eclipse.core.runtime.IExtensionPoint 实例源码

项目:gemoc-studio-modeldebugging    文件:Activator.java   
/**
 * Retrieve all the locators registered with the extension point, and additionally store them in a cache.
 * 
 * @return All locators registered with the extension point.
 */
public List<ILocator> retrieveLocators() {
    if (locators == null) {
        IExtensionRegistry reg = Platform.getExtensionRegistry();
        IExtensionPoint ep = reg.getExtensionPoint("org.eclipse.gemoc.dsl.debug.locator");
        IExtension[] extensions = ep.getExtensions();
        ArrayList<ILocator> contributors = new ArrayList<ILocator>();
        for (int i = 0; i < extensions.length; i++) {
            IExtension ext = extensions[i];
            IConfigurationElement[] ce = ext.getConfigurationElements();
            for (int j = 0; j < ce.length; j++) {
                ILocator locator;
                try {
                    locator = (ILocator)ce[j].createExecutableExtension("class");
                    contributors.add(locator);
                } catch (CoreException e) {
                    e.printStackTrace();
                }
            }
        }
        locators = contributors;
    }
    return locators;
}
项目:gemoc-studio    文件:AbstractNewProjectWizardWithTemplates.java   
public ElementList getAvailableCodegenWizards() {
    ElementList wizards = new ElementList("CodegenWizards"); //$NON-NLS-1$
    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint point = registry.getExtensionPoint(org.eclipse.gemoc.commons.eclipse.pde.Activator.PLUGIN_ID, PLUGIN_POINT);
    if (point == null)
        return wizards;
    IExtension[] extensions = point.getExtensions();
    for (int i = 0; i < extensions.length; i++) {
        IConfigurationElement[] elements = extensions[i].getConfigurationElements();
        for (int j = 0; j < elements.length; j++) {
            if (elements[j].getName().equals(TAG_WIZARD)) {
                String targetPluginId = elements[j].getAttribute(WizardElement.ATT_TARGETPLUGINID);
                if( targetPluginId == null || targetPluginId.equals(getTargetPluginId())){
                    WizardElement element = createWizardElement(elements[j]);
                    if (element != null) {
                        wizards.add(element);
                    }
                }
            }
        }
    }
    return wizards;
}
项目:team-explorer-everywhere    文件:ExtensionPointPolicyLoader.java   
/**
 * Gets the configuration elements for the plugins that extend our checkin
 * policy extension point.
 *
 * @return an array of configuration elements from plugins that support our
 *         extension point.
 */
private IConfigurationElement[] getConfigurationElementsForCheckinPolicy() {
    final IExtensionRegistry registry = Platform.getExtensionRegistry();

    final IExtensionPoint extensionPoint = registry.getExtensionPoint(CHECKIN_POLICY_EXTENSION_POINT_NAME);

    /*
     * These extension points should always be available even if there are
     * no contributions available (policy implementations), but it's good to
     * check anyway.
     */
    if (extensionPoint == null) {
        final String messageFormat = "Couldn't load extension point {0}"; //$NON-NLS-1$
        final String message = MessageFormat.format(messageFormat, CHECKIN_POLICY_EXTENSION_POINT_NAME);
        log.error(message);
        throw new PolicyLoaderException(message, null);
    }

    return extensionPoint.getConfigurationElements();
}
项目:team-explorer-everywhere    文件:ResourceChangingCommandUtil.java   
/**
 * Returns a {@link SingleListenerFacade} of the resource changing listeners
 * by loading extension points and creating new listeners on demand.
 * Subsequent calls will used cached listener data.
 *
 * @return A {@link SingleListenerFacade} of
 *         {@link ResourceChangingCommandListener}s.
 */
public static SingleListenerFacade getListener() {
    synchronized (lock) {
        if (listener == null) {
            final IExtensionRegistry registry = Platform.getExtensionRegistry();
            final IExtensionPoint extensionPoint = registry.getExtensionPoint(EXTENSION_POINT_ID);

            final IConfigurationElement[] elements = extensionPoint.getConfigurationElements();

            final ListenerList list = new StandardListenerList();

            for (int i = 0; i < elements.length; i++) {
                try {
                    list.addListener(elements[i].createExecutableExtension("class")); //$NON-NLS-1$
                } catch (final CoreException e) {
                    log.warn("Could not create " + EXTENSION_POINT_ID + " class", e); //$NON-NLS-1$ //$NON-NLS-2$
                }
            }

            listener = new SingleListenerFacade(ResourceChangingCommandListener.class, list);
        }

        return listener;
    }
}
项目:subclipse    文件:SVNFileModificationValidator.java   
private IFileModificationValidator loadUIValidator() {
      IExtensionPoint extension = Platform.getExtensionRegistry().getExtensionPoint(ID, DEFAULT_FILE_MODIFICATION_VALIDATOR_EXTENSION);
if (extension != null) {
    IExtension[] extensions =  extension.getExtensions();
    if (extensions.length > 0) {
        IConfigurationElement[] configElements = extensions[0].getConfigurationElements();
        if (configElements.length > 0) {
            try {
                      Object o = configElements[0].createExecutableExtension("class"); //$NON-NLS-1$
                      if (o instanceof IFileModificationValidator) {
                          return (IFileModificationValidator)o;
                      }
                  } catch (CoreException e) {
                      SVNProviderPlugin.log(e.getStatus().getSeverity(), e.getMessage(), e);
                  }
        }
    }
}
return null;
  }
项目:google-cloud-eclipse    文件:BasePluginXmlTest.java   
@Test
public final void testValidExtensionPoints() {
  NodeList extensions = getDocument().getElementsByTagName("extension");
  Assert.assertTrue(
      "plugin.xml must contain at least one extension point", extensions.getLength() > 0);

  IExtensionRegistry registry = RegistryFactory.getRegistry();
  Assert.assertNotNull("Make sure you're running this as a plugin test", registry);
  for (int i = 0; i < extensions.getLength(); i++) {
    Element extension = (Element) extensions.item(i);
    String point = extension.getAttribute("point");
    Assert.assertNotNull("Could not load " + extension.getAttribute("id"), point);
    IExtensionPoint extensionPoint = registry.getExtensionPoint(point);
    Assert.assertNotNull("Could not load " + extension.getAttribute("id"), extensionPoint);
  }
}
项目:ermasterr    文件:ExtendPopupMenu.java   
/**
 * plugin.xmlからタグを読み込む.
 * 
 * @throws CoreException
 * @throws CoreException
 */
public static List<ExtendPopupMenu> loadExtensions(final ERDiagramEditor editor) throws CoreException {
    final List<ExtendPopupMenu> extendPopupMenuList = new ArrayList<ExtendPopupMenu>();

    final IExtensionRegistry registry = Platform.getExtensionRegistry();
    final IExtensionPoint extensionPoint = registry.getExtensionPoint(EXTENSION_POINT_ID);

    if (extensionPoint != null) {
        for (final IExtension extension : extensionPoint.getExtensions()) {
            for (final IConfigurationElement configurationElement : extension.getConfigurationElements()) {

                final ExtendPopupMenu extendPopupMenu = ExtendPopupMenu.createExtendPopupMenu(configurationElement, editor);

                if (extendPopupMenu != null) {
                    extendPopupMenuList.add(extendPopupMenu);
                }
            }
        }
    }

    return extendPopupMenuList;
}
项目:mesfavoris    文件:PluginBookmarkTypes.java   
public synchronized List<PluginBookmarkType> getBookmarkTypes() {
    if (bookmarkTypes != null) {
        return bookmarkTypes;
    }
    bookmarkTypes = new ArrayList<>();
    IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(EXTENSION_POINT);
    if (extensionPoint == null) {
        StatusHelper.logError(MessageFormat.format("no {0} extension point", EXTENSION_POINT), null);
        return bookmarkTypes;
    }
    IExtension[] extensions = extensionPoint.getExtensions();
    for (IExtension extension : extensions) {
        IConfigurationElement[] elements = extension.getConfigurationElements();
        for (IConfigurationElement element : elements) {
            if ("bookmarkType".equals(element.getName())) {
                PluginBookmarkType bookmarkType = new PluginBookmarkType(element);
                bookmarkTypes.add(bookmarkType);
            }
        }
    }
    return bookmarkTypes;
}
项目:mesfavoris    文件:BookmarkProblemDescriptors.java   
private synchronized Map<String, IBookmarkProblemDescriptor> getBookmarkProblemDescriptors() {
    if (bookmarkProblemDescriptors != null) {
        return bookmarkProblemDescriptors;
    }
    bookmarkProblemDescriptors = new HashMap<>();
    IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(EXTENSION_POINT);
    if (extensionPoint == null) {
        StatusHelper.logError(MessageFormat.format("no {0} extension point", EXTENSION_POINT), null);
        return bookmarkProblemDescriptors;
    }
    IExtension[] extensions = extensionPoint.getExtensions();
    for (IExtension extension : extensions) {
        IConfigurationElement[] elements = extension.getConfigurationElements();
        for (IConfigurationElement element : elements) {
            IBookmarkProblemDescriptor bookmarkProblemDescriptor = getBookmarkProblemDescriptor(element);
            if (bookmarkProblemDescriptor != null) {
                bookmarkProblemDescriptors.put(bookmarkProblemDescriptor.getProblemType(),
                        bookmarkProblemDescriptor);
            }
        }
    }
    return bookmarkProblemDescriptors;
}
项目:ermaster-k    文件:ExtendPopupMenu.java   
/**
 * plugin.xmlからタグを読み込む.
 * 
 * @throws CoreException
 * 
 * @throws CoreException
 */
public static List<ExtendPopupMenu> loadExtensions(ERDiagramEditor editor)
        throws CoreException {
    List<ExtendPopupMenu> extendPopupMenuList = new ArrayList<ExtendPopupMenu>();

    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint extensionPoint = registry
            .getExtensionPoint(EXTENSION_POINT_ID);

    if (extensionPoint != null) {
        for (IExtension extension : extensionPoint.getExtensions()) {
            for (IConfigurationElement configurationElement : extension
                    .getConfigurationElements()) {

                ExtendPopupMenu extendPopupMenu = ExtendPopupMenu
                        .createExtendPopupMenu(configurationElement, editor);

                if (extendPopupMenu != null) {
                    extendPopupMenuList.add(extendPopupMenu);
                }
            }
        }
    }

    return extendPopupMenuList;
}
项目:dsl-devkit    文件:ValidExtensionPointManager.java   
/**
 * Returns proxies for all registered extensions; does not cause the extension plug-ins to be loaded.
 * The proxies contain -- and can therefore be queried for -- all the XML attribute values that the
 * extensions provide in their <i>plugin.xml</i> file. Throws IllegalArgumentException
 * if extension point is unknown
 *
 * @return array of proxies
 */
public static ValidExtension[] getExtensions() {
  IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(PLUGIN_ID, EXTENSION_POINT_NAME);
  if (point == null) {
    throw new IllegalArgumentException(MessageFormat.format(UNKNOWN_EXTENSION_POINT, PLUGIN_ID, EXTENSION_POINT_NAME));
  }
  IExtension[] extensions = point.getExtensions();
  List<ValidExtension> found = new ArrayList<ValidExtension>();
  for (IExtension e : extensions) {
    ValidExtension obj = ValidExtension.parseExtension(e);
    if (obj != null) {
      found.add(obj);
    }
  }
  return found.toArray(new ValidExtension[found.size()]);
}
项目:cft    文件:CloudFoundryArchiverRegistry.java   
public ICloudFoundryArchiver createArchiver(CloudFoundryApplicationModule appModule, CloudFoundryServer cloudServer)
        throws CoreException {
    final String ARCHIVER_DELEGATE = "org.eclipse.cft.server.standalone.core.archiverDelegate"; //$NON-NLS-1$
    final String ARCHIVER_ELEMENT = "archiver"; //$NON-NLS-1$
    final String CLASS_ATTR = "class"; //$NON-NLS-1$

    // At present it just picks the first archiver extension

    IExtensionPoint archiverExtnPoint = Platform.getExtensionRegistry().getExtensionPoint(ARCHIVER_DELEGATE);
    if (archiverExtnPoint != null) {
        for (IExtension extension : archiverExtnPoint.getExtensions()) {
            for (IConfigurationElement config : extension.getConfigurationElements()) {
                if (ARCHIVER_ELEMENT.equals(config.getName())) {
                    ICloudFoundryArchiver archiver = (ICloudFoundryArchiver) config
                            .createExecutableExtension(CLASS_ATTR);
                    return archiver;
                }
            }
        }
    }

    throw CloudErrorUtil.toCoreException("Could not locate archivers"); //$NON-NLS-1$
}
项目:cft    文件:CloudFoundryBrandingUIExtensionPoint.java   
private static void readBrandingUIDefinitions() {
    IExtensionPoint brandingUIExtPoint = Platform.getExtensionRegistry().getExtensionPoint(POINT_ID);
    if (brandingUIExtPoint != null) {

        // Ensure core branding is initialized first
        CloudFoundryBrandingExtensionPoint.readBrandingDefinitions();

        brandingUIServerTypeIds.clear();
        for (IExtension extension : brandingUIExtPoint.getExtensions()) {
            for (IConfigurationElement config : extension.getConfigurationElements()) {
                String serverId = config.getAttribute(ATTR_SERVER_TYPE_ID);
                String name = config.getAttribute(ATTR_NAME);
                if (serverId != null && serverId.trim().length() > 0 && name != null && name.trim().length() > 0) {
                    brandingUIDefinitions.put(serverId, config);
                    brandingUIServerTypeIds.add(serverId);
                }
            }
        }
        read = true;
    }
}
项目:cft    文件:CloudFoundryBrandingExtensionPoint.java   
protected static void readBrandingDefinitions() {
    IExtensionPoint brandingExtPoint = Platform.getExtensionRegistry().getExtensionPoint(POINT_ID);
    if (brandingExtPoint != null) {
        brandingServerTypeIds.clear();
        for (IExtension extension : brandingExtPoint.getExtensions()) {
            for (IConfigurationElement config : extension.getConfigurationElements()) {
                String serverId = config.getAttribute(ATTR_SERVER_TYPE_ID);
                String name = config.getAttribute(ATTR_NAME);
                if (serverId != null && serverId.trim().length() > 0 && name != null && name.trim().length() > 0) {
                    // For the vendor neutral branding extension, the default / cloud urls / url provider class
                    // is not needed anymore.
                    brandingDefinitions.put(serverId, config);
                    brandingServerTypeIds.add(serverId);
                }
            }
        }
    }
    read = true;
}
项目:dockerfoundry    文件:DockerFoundryBrandingExtensionPoint.java   
private static void readBrandingDefinitions() {
    IExtensionPoint brandingExtPoint = Platform.getExtensionRegistry().getExtensionPoint(POINT_ID);
    if (brandingExtPoint != null) {
        brandingServerTypeIds.clear();
        for (IExtension extension : brandingExtPoint.getExtensions()) {
            for (IConfigurationElement config : extension.getConfigurationElements()) {
                String serverId = config.getAttribute(ATTR_SERVER_TYPE_ID);
                String name = config.getAttribute(ATTR_NAME);
                if (serverId != null && serverId.trim().length() > 0 && name != null && name.trim().length() > 0) {
                    brandingDefinitions.put(serverId, config);
                    brandingServerTypeIds.add(serverId);
                    /*IConfigurationElement[] urls = config.getChildren(ELEM_DEFAULT_URL);
                    if (urls != null && urls.length > 0) {

                    }*/
                }
            }
        }
    }

    read = true;
}
项目:agui_eclipse_plugin    文件:BuildFatJar.java   
/**
 * @param jarfile
 */
private void testExtensionPoints(String jarfile) {

    try {
        System.out
                .println("dumping contents in jar using extension net.sf.fjep.fatjar.fatjarJarUtil");
        System.out.println("--- " + jarfile + " ---");
        IExtensionRegistry reg = Platform.getExtensionRegistry();
        IExtensionPoint exp = reg
                .getExtensionPoint("net.sf.fjep.fatjar.jarutil");
        IExtension[] extensions = exp.getExtensions();
        IConfigurationElement[] elements = extensions[0]
                .getConfigurationElements();
        IJarUtilFactory ju = (IJarUtilFactory) elements[0]
                .createExecutableExtension("class");
        IFileSystemSource fss = ju.createJARFileSystemSource(jarfile, "");
        while (fss.hasMoreElements()) {
            IFileSystemElement fse = fss.nextElement();
            System.out.println(fse.getFullName());
        }
        System.out.println("--- finished ---");
    } catch (Exception e) {
        e.printStackTrace();
    }
}
项目:mondo-integration    文件:OfflineCollaborationHandler.java   
private String getRAPPathFromExtensionRegistry() {

        IExtensionRegistry reg = Platform.getExtensionRegistry();
        IExtensionPoint poi;

        String rapPath = null;

        if (reg != null) {
            poi = reg.getExtensionPoint("org.eclipse.rap.ui.entrypoint");
            if (poi != null) {
                IExtension[] exts = poi.getExtensions();

                for (IExtension ext : exts) {
                    IConfigurationElement[] els = ext.getConfigurationElements();
                    for (IConfigurationElement el : els) {
                        String pathAttribute = el.getAttribute("path");
                        if(pathAttribute != null){
                            rapPath = pathAttribute;
                            break;
                        }
                    }
                }
            }
        }
        return rapPath;
    }
项目:gwt-eclipse-plugin    文件:BrowserMenuPopulator.java   
private void addExtensionDebugLauncherMenus(IMenuManager menu, String url) {
  IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(IDebugLaunch.EXTENSION_ID);
  IConfigurationElement[] elements = extensionPoint.getConfigurationElements();
  if (elements == null || elements.length == 0) {
    return;
  }

  for (IConfigurationElement element : elements) {
    try {
      IDebugLaunch debugLaunch = (IDebugLaunch) element.createExecutableExtension("class");
      String label = element.getAttribute("label");
      addExtensionDebugLauncherMenu(menu, label, debugLaunch, url);
    } catch (CoreException e) {
      CorePluginLog.logError("Could not add launcher menu.", e);
    }
  }
}
项目:gwt-eclipse-plugin    文件:BrowserMenuPopulator.java   
private void launchExtension(String browserName, String url) throws CoreException {
  if (browserName == null || browserName.isEmpty()) {
    return;
  }

  // remove the id, which sets the default browser id
  browserName = browserName.replace(BROWSER_NAME_EXTENSION, "");

  IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(IDebugLaunch.EXTENSION_ID);
  IConfigurationElement[] elements = extensionPoint.getConfigurationElements();
  if (elements == null || elements.length == 0) {
    return;
  }
  for (IConfigurationElement element : elements) {
    IDebugLaunch debugLaunch = (IDebugLaunch) element.createExecutableExtension("class");
    String label = element.getAttribute("label");
    if (debugLaunch != null && label != null && label.equals(browserName)) {
      debugLaunch.launch(project, url, "debug");
    }
  }
}
项目:gwt-eclipse-plugin    文件:WebAppProjectCreator.java   
private void includeExtensionPartipants() throws CoreException {
  IExtensionRegistry extensionRegistry = Platform.getExtensionRegistry();
  IExtensionPoint extensionPoint = extensionRegistry
      .getExtensionPoint("com.gwtplugins.gdt.eclipse.suite.webAppCreatorParticipant");
  if (extensionPoint == null) {
    return;
  }
  IExtension[] extensions = extensionPoint.getExtensions();
  for (IExtension extension : extensions) {
    IConfigurationElement[] configurationElements = extension.getConfigurationElements();
    for (IConfigurationElement configurationElement : configurationElements) {
      Object createExecutableExtension = configurationElement.createExecutableExtension("class");
      Participant participant = (Participant) createExecutableExtension;
      participant.updateWebAppProjectCreator(this);
    }
  }
}
项目:PDFReporter-Studio    文件:RBManager.java   
private static IRefactoringService getRefactoringService() {
    IExtensionPoint extp = Platform.getExtensionRegistry().getExtensionPoint( "org.eclipse.babel.core.refactoringService");
    if (extp != null){
     IConfigurationElement[] elements = extp.getConfigurationElements();

     if (elements.length != 0) {
         try {
             return (IRefactoringService) elements[0]
                     .createExecutableExtension("class");
         } catch (CoreException e) {
             e.printStackTrace();
         }
     }
    }
    return new StandardRefactoring();
}
项目:chromedevtools    文件:IPredefinedSourceWrapProvider.java   
/**
* Provides a standard mean of getting an instances of interface. It uses
* Eclipse/OSGI extension registry.
  */
 private static Collection<IPredefinedSourceWrapProvider> getProviders() {
   List<IPredefinedSourceWrapProvider> result = new ArrayList<IPredefinedSourceWrapProvider>();
   IExtensionPoint extensionPoint = RegistryFactory.getRegistry().getExtensionPoint(
       EXTENSION_POINT_ID);
   IExtension[] extensions = extensionPoint.getExtensions();

   for (IExtension extension : extensions) {
     for (IConfigurationElement element : extension.getConfigurationElements()) {
       if (!ELEMENT_NAME.equals(element.getName())) {
         continue;
       }
       Object obj;
       try {
         obj = element.createExecutableExtension(CLASS_PROPERTY);
       } catch (CoreException e) {
         throw new RuntimeException(e);
       }
       IPredefinedSourceWrapProvider provider = (IPredefinedSourceWrapProvider) obj;
       result.add(provider);
     }
   }
   return result;
 }
项目:chromedevtools    文件:JavaScriptFormatter.java   
/**
 * @return an instance of (any random) implementation of {@link JavaScriptFormatter} or null
 */
public static JavaScriptFormatter getInstance() {
  IExtensionPoint extensionPoint = RegistryFactory.getRegistry().getExtensionPoint(
      EXTENSION_POINT_ID);
  IExtension[] extensions = extensionPoint.getExtensions();

  for (IExtension extension : extensions) {
    for (IConfigurationElement element : extension.getConfigurationElements()) {
      if (!ELEMENT_NAME.equals(element.getName())) {
        continue;
      }
      Object obj;
      try {
        obj = element.createExecutableExtension(CLASS_PROPERTY);
      } catch (CoreException e) {
        throw new RuntimeException(e);
      }
      return (JavaScriptFormatter) obj;
    }
  }
  return null;
}
项目:chromedevtools    文件:BackendRegistry.java   
public List<? extends WipBackend> getBackends() {
  IExtensionPoint extensionPoint = RegistryFactory.getRegistry().getExtensionPoint(
      WipBackExtensionPoint.ID);
  IExtension[] extensions = extensionPoint.getExtensions();

  List<WipBackend> result = new ArrayList<WipBackend>(extensions.length);

  for (IExtension extension : extensions) {
    for (IConfigurationElement element : extension.getConfigurationElements()) {
      if (!WipBackExtensionPoint.ELEMENT_NAME.equals(element.getName())) {
        continue;
      }
      Object obj;
      try {
        obj = element.createExecutableExtension(WipBackExtensionPoint.CLASS_PROPERTY);
      } catch (CoreException e) {
        throw new RuntimeException(e);
      }
      WipBackend backend = (WipBackend) obj;
      result.add(backend);
    }
  }
  return result;
}
项目:APICloud-Studio    文件:SVNFileModificationValidator.java   
private IFileModificationValidator loadUIValidator() {
      IExtensionPoint extension = Platform.getExtensionRegistry().getExtensionPoint(ID, DEFAULT_FILE_MODIFICATION_VALIDATOR_EXTENSION);
if (extension != null) {
    IExtension[] extensions =  extension.getExtensions();
    if (extensions.length > 0) {
        IConfigurationElement[] configElements = extensions[0].getConfigurationElements();
        if (configElements.length > 0) {
            try {
                      Object o = configElements[0].createExecutableExtension("class"); //$NON-NLS-1$
                      if (o instanceof IFileModificationValidator) {
                          return (IFileModificationValidator)o;
                      }
                  } catch (CoreException e) {
                      SVNProviderPlugin.log(e.getStatus().getSeverity(), e.getMessage(), e);
                  }
        }
    }
}
return null;
  }
项目:erflute    文件:ExtendPopupMenu.java   
public static List<ExtendPopupMenu> loadExtensions(MainDiagramEditor editor) throws CoreException {
    final List<ExtendPopupMenu> extendPopupMenuList = new ArrayList<>();

    final IExtensionRegistry registry = Platform.getExtensionRegistry();
    final IExtensionPoint extensionPoint = registry.getExtensionPoint(EXTENSION_POINT_ID);

    if (extensionPoint != null) {
        for (final IExtension extension : extensionPoint.getExtensions()) {
            for (final IConfigurationElement configurationElement : extension.getConfigurationElements()) {
                final ExtendPopupMenu extendPopupMenu = ExtendPopupMenu.createExtendPopupMenu(configurationElement, editor);
                if (extendPopupMenu != null) {
                    extendPopupMenuList.add(extendPopupMenu);
                }
            }
        }
    }
    return extendPopupMenuList;
}
项目:mytourbook    文件:GeoclipseExtensions.java   
public static void registerOverlays(final Map map) {

        final IExtensionRegistry registry = RegistryFactory.getRegistry();
        final IExtensionPoint point = registry.getExtensionPoint("net.tourbook.mapOverlay"); //$NON-NLS-1$
        final IExtension[] extensions = point.getExtensions();

        for (final IExtension extension : extensions) {
            final IConfigurationElement[] elements = extension.getConfigurationElements();

            final IConfigurationElement element = elements[elements.length - 1];

            Object o = null;
            try {
                o = element.createExecutableExtension("class"); //$NON-NLS-1$
            } catch (final CoreException e) {
                e.printStackTrace();
            }

            if (o != null && o instanceof MapPainter) {
                map.addOverlayPainter((MapPainter) o);
            }
        }
    }
项目:mytourbook    文件:GeoclipseExtensions.java   
public static void registerOverlays(final Map map) {

        final IExtensionRegistry registry = RegistryFactory.getRegistry();
        final IExtensionPoint point = registry.getExtensionPoint("de.byteholder.geoclipse.mapOverlay"); //$NON-NLS-1$
        final IExtension[] extensions = point.getExtensions();

        for (final IExtension extension : extensions) {
            final IConfigurationElement[] elements = extension.getConfigurationElements();

            final IConfigurationElement element = elements[elements.length - 1];

            Object o = null;
            try {
                o = element.createExecutableExtension("class"); //$NON-NLS-1$
            } catch (final CoreException e) {
                e.printStackTrace();
            }

            if (o != null && o instanceof MapPainter) {
                map.addOverlayPainter((MapPainter) o);
            }
        }
    }
项目:ModelDebugging    文件:Activator.java   
/**
 * Retrieve all the locators registered with the extension point, and additionally store them in a cache.
 * 
 * @return All locators registered with the extension point.
 */
public List<ILocator> retrieveLocators() {
    if (locators == null) {
        IExtensionRegistry reg = Platform.getExtensionRegistry();
        IExtensionPoint ep = reg.getExtensionPoint("org.eclipse.gemoc.dsl.debug.locator");
        IExtension[] extensions = ep.getExtensions();
        ArrayList<ILocator> contributors = new ArrayList<ILocator>();
        for (int i = 0; i < extensions.length; i++) {
            IExtension ext = extensions[i];
            IConfigurationElement[] ce = ext.getConfigurationElements();
            for (int j = 0; j < ce.length; j++) {
                ILocator locator;
                try {
                    locator = (ILocator)ce[j].createExecutableExtension("class");
                    contributors.add(locator);
                } catch (CoreException e) {
                    e.printStackTrace();
                }
            }
        }
        locators = contributors;
    }
    return locators;
}
项目:cmake-eclipse-helper    文件:CMakeLauncher.java   
private String retrieveEclipseVersionString() {
    String product = System.getProperty("eclipse.product");
    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint point = registry.getExtensionPoint("org.eclipse.core.runtime.products");
    if (point != null) {
        IExtension[] extensions = point.getExtensions();
        for (IExtension ext : extensions) {
            if (product.equals(ext.getUniqueIdentifier())) {
                IContributor contributor = ext.getContributor();
                if (contributor != null) {
                    Bundle bundle = Platform.getBundle(contributor.getName());
                    if (bundle != null) {
                        Version version = bundle.getVersion();
                        return version.getMajor() + "." + version.getMinor();
                    }
                }
            }
        }
    }
    return null;
}
项目:OpenSPIFe    文件:PlanStateRegistry.java   
private static List<PlanState> buildPlanStateRegistry() {
    List<PlanState> l = new ArrayList<PlanState>();
    IExtensionRegistry registry = Platform.getExtensionRegistry();
       IExtensionPoint point = registry.getExtensionPoint(EXTENSION_POINT_ID);
       for (IExtension extension : point.getExtensions()) {
        for (IConfigurationElement planState : extension.getConfigurationElements()) {
            String name = planState.getAttribute("name");
            int sort = Integer.valueOf(planState.getAttribute("sortkey"));
            PlanState type = new PlanState(name, sort);
            l.add(type);
           }
       }
       Collections.sort(l, new Comparator<PlanState>() {
        @Override
        public int compare(PlanState o1, PlanState o2) {
            return o1.sortKey - o2.sortKey;
        }
    });
    return Collections.unmodifiableList(l);
}
项目:OpenSPIFe    文件:PlanGroupRegistry.java   
private static List<PlanGroup> buildPlanGroupRegistry() {
    List<PlanGroup> l = new ArrayList<PlanGroup>();
    IExtensionRegistry registry = Platform.getExtensionRegistry();
       IExtensionPoint point = registry.getExtensionPoint(EXTENSION_POINT_ID);
       for (IExtension extension : point.getExtensions()) {
        for (IConfigurationElement planGroup : extension.getConfigurationElements()) {
            String name = planGroup.getAttribute("name");
            String expandedName = planGroup.getAttribute("expandedName");
            int sort = Integer.valueOf(planGroup.getAttribute("sortkey"));
            PlanGroup type = new PlanGroup(name, expandedName, sort);
            l.add(type);
           }
       }

       // Allow contributions
       //
       l.addAll(ClassRegistry.createInstances(PlanGroup.class));

       Collections.sort(l, new Comparator<PlanGroup>() {
        @Override
        public int compare(PlanGroup o1, PlanGroup o2) {
            return o1.sortKey - o2.sortKey;
        }
    });
    return Collections.unmodifiableList(l);
}
项目:OpenSPIFe    文件:PlanModifierRegistry.java   
private PlanModifierRegistry() {
    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint point = registry.getExtensionPoint("gov.nasa.ensemble.core.plan.temporal.PlanModifier");
    for (IExtension extension : point.getExtensions()) {
        for (IConfigurationElement configurationElement : extension.getConfigurationElements()) {
            String elementName = configurationElement.getName();
            if ("modifier".equals(elementName)) {
                modifierFactories.add(new PlanModifierFactory(configurationElement));
            }
        }
    }
    Collections.sort(modifierFactories);
    for (PlanModifierFactory modifierFactory : modifierFactories) {
        IPlanModifier modifier = modifierFactory.instantiateModifier();
        modifierClassToFactory.put(modifier.getClass(), modifierFactory);
    }
}
项目:OpenSPIFe    文件:ZoomManager.java   
private List<ZoomOption> getZoomOptionsFromExtensionPoint() {
    List<ZoomOption> options = new ArrayList<ZoomOption>();

    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint extensionPoint = registry.getExtensionPoint("gov.nasa.arc.spife.core.plan.editor.timeline.TimelineZoomOptions");
    if (extensionPoint == null)
        return options;
    for (IConfigurationElement element : extensionPoint.getConfigurationElements()) {
        ZoomOption zoomOption = parseZoomOption(element);
        if (zoomOption == null) {
            continue;
        }
        options.add(zoomOption);

        String defaultString = element.getAttribute("default");
        if (defaultString != null && defaultString.equals("true")) {
            zoomLevel = options.size() - 1;
        }
    }
    return options;
}
项目:OpenSPIFe    文件:ColumnProviderRegistry.java   
private List<IMergeColumnProvider> getProviders() {
    List<IMergeColumnProvider> providers = new ArrayList<IMergeColumnProvider>();
    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint point = registry.getExtensionPoint("gov.nasa.ensemble.core.plan.editor.merge.IMergeColumnProvider");
    for (IExtension extension : point.getExtensions()) {
        for (IConfigurationElement configurationElement : extension.getConfigurationElements()) {
            try {
                Object object = configurationElement.createExecutableExtension("class");
                if (object instanceof IMergeColumnProvider) {
                    providers.add((IMergeColumnProvider) object);
                }
            } catch (CoreException e) {
                trace.error(e.getMessage());
            }
        }
    }
    return providers;
}
项目:OpenSPIFe    文件:ColumnProviderRegistry.java   
private static List<AbstractPlanMergeColumnProvider> getRuntimePlanMergeColumnProviders(EPlan plan) {
    List<AbstractPlanMergeColumnProvider> providers = new ArrayList();
    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint extensionPoint = registry.getExtensionPoint("gov.nasa.ensemble.common.ClassRegistry");
    for (IConfigurationElement lookupElement : extensionPoint.getConfigurationElements()) {
        String className = lookupElement.getAttribute("class");
        if (IRuntimeMergeColumnProvider.class.getName().equals(className)) {
            for (IConfigurationElement implementationElement : lookupElement.getChildren("implementation")) {
                Class implClass = ExtensionUtils.getClass(implementationElement, implementationElement.getAttribute("class"));
                if (AbstractPlanMergeColumnProvider.class.isAssignableFrom(implClass)) {
                    try {
                        Constructor constructor = implClass.getConstructor(new Class[] { EPlan.class });
                        AbstractPlanMergeColumnProvider provider = (AbstractPlanMergeColumnProvider) constructor.newInstance(new Object[] { plan } );
                        providers.add(provider);
                    } catch (Exception e) {
                        LogUtil.error(e);
                    }
                }
            }
        }
    }
    return providers;
}
项目:OpenSPIFe    文件:TransferRegistry.java   
private TransferRegistry() {
    IExtensionRegistry registry = Platform.getExtensionRegistry();
    IExtensionPoint point = registry.getExtensionPoint("gov.nasa.ensemble.common.TransferProvider");
    for (IExtension extension : point.getExtensions()) {
        for (IConfigurationElement configurationElement : extension.getConfigurationElements()) {
            String elementName = configurationElement.getName();
            if ("provider".equals(elementName)) {
                try {
                    ITransferProvider provider = (ITransferProvider)configurationElement.createExecutableExtension("class");
                    transferProviders.add(provider);
                } catch (ThreadDeath td) {
                    throw td;
                } catch (Throwable t) {
                    trace.error("during ITransferProvider instantiation", t);
                }
            }
        }
    }
}
项目:OpenSPIFe    文件:ForbiddenWorkbenchUtils.java   
public static void removePopupMenus(String[] popupIds) {

    final java.util.List<IExtension> extensionsToRemove = new java.util.ArrayList<IExtension>();

    final IExtensionRegistry registry = Platform.getExtensionRegistry();
    final IExtensionPoint point = registry.getExtensionPoint("org.eclipse.ui.popupMenus");
    final List<String> popups = Arrays.asList(popupIds);
    for (final IConfigurationElement elem : point.getConfigurationElements()) {
        final String id = elem.getAttribute("id");
        if (popups.contains(id))
            extensionsToRemove.add(elem.getDeclaringExtension());
    }

    for (IExtension ext : extensionsToRemove) {
        try {
            registry.removeExtension(ext, ReflectionUtils.get(registry, "masterToken"));
        } catch (Throwable t) {
            // ignore
        }
    }
}
项目:OpenSPIFe    文件:PlanStateRoleAssociationRegistry.java   
private PlanStateRoleAssociationRegistry() {
    IExtensionRegistry registry = Platform.getExtensionRegistry();
       IExtensionPoint point = registry.getExtensionPoint(EXTENSION_POINT_ID);
       for (IExtension extension : point.getExtensions()) {
        for (IConfigurationElement planState : extension.getConfigurationElements()) {
            String stateName = planState.getAttribute("state");
            String roleName = planState.getAttribute("role");
            PlanState state = PlanStateRegistry.getPlanState(stateName);
            PlanRole role = PlanRoleRegistry.getPlanRole(roleName);
            Set<PlanRole> roles = stateToRoleMap.get(state);
            if (roles == null) {
                roles = new HashSet<PlanRole>();
            }
            roles.add(role);
            stateToRoleMap.put(state, roles);
            Set<PlanState> states = roleToStateMap.get(role);
            if (states == null) {
                states = new HashSet<PlanState>();
            }
            states.add(state);
            roleToStateMap.put(role, states);
           }
       }
}
项目:OpenSPIFe    文件:MarkerViolation.java   
private static void initializeMarkerTypeNames() {
    IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(ResourcesPlugin.PI_RESOURCES, ResourcesPlugin.PT_MARKERS);
    if (point != null) {
        IExtension[] extensions = point.getExtensions();
        for (int i = 0; i < extensions.length; ++i) {
            IExtension ext = extensions[i];
            String id = ext.getUniqueIdentifier();
            String label = ext.getLabel();
            if (label.equals("")) {
                if (id.equals(IMarker.PROBLEM)) {
                    label = "Problem";
                } else {
                    label = id;
                }
            }
            MARKER_TYPE_LABELS.put(id, label);
        }
    }
}