static IProfile[] getProfiles(IProvisioningAgent agent) { IProfileRegistry profileRegistry = (IProfileRegistry) agent.getService(IProfileRegistry.SERVICE_NAME); if (profileRegistry == null) return new IProfile[0]; return profileRegistry.getProfiles(); }
public IQueryResult<IProfile> query(IQuery<IProfile> query, IProgressMonitor monitor) { IProfile[] profiles = ProvUI.getProfileRegistry(ui.getSession()).getProfiles(); SubMonitor sub = SubMonitor.convert(monitor, ProvUIMessages.QueryableProfileRegistry_QueryProfileProgress, profiles.length); try { return query.perform(Arrays.asList(profiles).iterator()); } finally { sub.done(); } } }
private void traverseRegisteredProfiles() { IExtensionRegistry registry = RegistryFactory.getRegistry(); IConfigurationElement[] configElts = registry.getConfigurationElementsFor(PT_MARKSET); for (int i = 0; i < configElts.length; i++) { if (!(configElts[i].getName().equals("run"))) { //$NON-NLS-1$ continue; } IConfigurationElement runAttribute = configElts[i]; if (runAttribute == null) { continue; } IProfileRegistry profileRegistry = (IProfileRegistry) agent.getService(IProfileRegistry.SERVICE_NAME); if (profileRegistry == null) return; IProfile[] registeredProfiles = profileRegistry.getProfiles(); for (int j = 0; j < registeredProfiles.length; j++) { contributeMarkSets(runAttribute, registeredProfiles[j], false); } } } }
/** * Performs garbage collection based on remaining profiles. Should be called to avoid * having PDE's bundle pool area grow unbounded. */ public static void garbageCollect() { try { IProfile[] profiles = getProfileRegistry().getProfiles(); for (int i = 0; i < profiles.length; i++) { if (profiles[i].getProfileId().startsWith(PROFILE_ID_PREFIX)) { getGarbageCollector().runGC(profiles[i]); } } } catch (CoreException e) { // XXX likely should log something here. return; } }
private void traverseRegisteredProfiles() { IExtensionRegistry registry = RegistryFactory.getRegistry(); IConfigurationElement[] configElts = registry.getConfigurationElementsFor(PT_MARKSET); for (int i = 0; i < configElts.length; i++) { if (!(configElts[i].getName().equals("run"))) { //$NON-NLS-1$ continue; } IConfigurationElement runAttribute = configElts[i]; if (runAttribute == null) { continue; } IProfileRegistry profileRegistry = (IProfileRegistry) agent.getService(IProfileRegistry.SERVICE_NAME); if (profileRegistry == null) return; IProfile[] registeredProfiles = profileRegistry.getProfiles(); for (int j = 0; j < registeredProfiles.length; j++) { contributeMarkSets(runAttribute, registeredProfiles[j], false); } } } }
private void traverseRegisteredProfiles() { IExtensionRegistry registry = RegistryFactory.getRegistry(); IConfigurationElement[] configElts = registry.getConfigurationElementsFor(PT_MARKSET); for (int i = 0; i < configElts.length; i++) { if (!(configElts[i].getName().equals("run"))) { //$NON-NLS-1$ continue; } IConfigurationElement runAttribute = configElts[i]; if (runAttribute == null) { continue; } IProfileRegistry profileRegistry = (IProfileRegistry) agent.getService(IProfileRegistry.SERVICE_NAME); if (profileRegistry == null) return; IProfile[] registeredProfiles = profileRegistry.getProfiles(); for (int j = 0; j < registeredProfiles.length; j++) { contributeMarkSets(runAttribute, registeredProfiles[j], false); } } } }
private void traverseRegisteredProfiles() { IExtensionRegistry registry = RegistryFactory.getRegistry(); IConfigurationElement[] configElts = registry.getConfigurationElementsFor(PT_MARKSET); for (int i = 0; i < configElts.length; i++) { if (!(configElts[i].getName().equals("run"))) { //$NON-NLS-1$ continue; } IConfigurationElement runAttribute = configElts[i]; if (runAttribute == null) { continue; } IProfileRegistry profileRegistry = (IProfileRegistry) agent.getService(IProfileRegistry.SERVICE_NAME); if (profileRegistry == null) return; IProfile[] registeredProfiles = profileRegistry.getProfiles(); for (int j = 0; j < registeredProfiles.length; j++) { contributeMarkSets(runAttribute, registeredProfiles[j], false); } } } }
/** * Deletes any profiles associated with target definitions that no longer exist * and returns a list of profile identifiers that were deleted. */ public static List<String> cleanOrphanedTargetDefinitionProfiles() throws CoreException { List<String> list = new ArrayList<>(); IProfileRegistry registry = getProfileRegistry(); ITargetPlatformService tps = (ITargetPlatformService) PDECore.getDefault().acquireService(ITargetPlatformService.class.getName()); if (registry != null && tps != null) { IProfile[] profiles = registry.getProfiles(); for (int i = 0; i < profiles.length; i++) { IProfile profile = profiles[i]; String id = profile.getProfileId(); if (id.startsWith(PROFILE_ID_PREFIX)) { String memento = id.substring(PROFILE_ID_PREFIX.length()); ITargetHandle handle = tps.getTarget(memento); if (!handle.exists()) { deleteProfile(handle); list.add(id); } } } } return list; }