@Override public URI[] getKnownRepositories(int flags) { return delegate.getKnownRepositories(flags); }
@Override public URI[] getKnownRepositories(int flags) { return delegate.getKnownRepositories(flags); }
static URI[] getArtifactRepositories(IProvisioningAgent agent) { IArtifactRepositoryManager manager = (IArtifactRepositoryManager) agent.getService(IArtifactRepositoryManager.SERVICE_NAME); if (manager == null) throw new IllegalStateException("No metadata repository manager found"); //$NON-NLS-1$ URI[] repos = manager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL); if (repos.length > 0) return repos; return null; }
private static void getRunnableRepositories(IArtifactRepositoryManager manager, List<IFileArtifactRepository> bundleRepositories) { URI[] localURLs = manager.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); for (int i = 0; i < localURLs.length; i++) { try { IArtifactRepository candidate = manager.loadRepository(localURLs[i], new NullProgressMonitor()); if (Boolean.parseBoolean(candidate.getProperty(IArtifactRepository.PROP_RUNNABLE))) { if (candidate != null && candidate instanceof IFileArtifactRepository && !bundleRepositories.contains(candidate)) bundleRepositories.add((IFileArtifactRepository) candidate); } } catch (ProvisionException e) { //skip repositories that could not be read } } }
private static void getRunnableRepositories(IArtifactRepositoryManager manager, List<IFileArtifactRepository> bundleRepositories) { URI[] localURLs = manager.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); for (int i = 0; i < localURLs.length; i++) { try { IArtifactRepository candidate = manager.loadRepository(localURLs[i], new NullProgressMonitor()); if (Boolean.parseBoolean(candidate.getProperty(IArtifactRepository.PROP_RUNNABLE))) { if (candidate != null && candidate instanceof IFileArtifactRepository && !bundleRepositories.contains(candidate)) bundleRepositories.add((IFileArtifactRepository) candidate); } } catch (ProvisionException e) { //skip repositories that could not be read } } }
/** * Returns the artifact repositories to consider when getting artifacts. Returns a default set of * repositories if current repository settings are <code>null</code>). * * @return URI's of repositories to use when getting artifacts * @exception CoreException */ private URI[] getArtifactRepositories(ITargetDefinition target) throws CoreException { Set<URI> result = new HashSet<>(); ITargetLocation[] containers = target.getTargetLocations(); IArtifactRepositoryManager manager = getArtifactRepositoryManager(); for (int i = 0; i < containers.length; i++) { ITargetLocation container = containers[i]; if (container instanceof IUBundleContainer) { URI[] repos = ((IUBundleContainer) container).getRepositories(); if (repos == null) { repos = manager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL); } result.addAll(Arrays.asList(repos)); } } if (useAdditionalLocalArtifacts()) { // get all the artifact repos we know in the manager currently result.addAll(Arrays.asList(manager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL))); // Add in the IDE profile bundle pool and all known workspaces findProfileRepos(result); findWorkspaceRepos(result); } return result.toArray(new URI[result.size()]); }
/** * Return an array of loaded artifact repositories. */ private List<IArtifactRepository> getLoadedArtifactRepositories(IProgressMonitor monitor) { IArtifactRepositoryManager repoManager = (IArtifactRepositoryManager) agent.getService(IArtifactRepositoryManager.SERVICE_NAME); URI[] repositories = artifactRepositories == null ? repoManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL) : artifactRepositories; Arrays.sort(repositories, LOCAL_FIRST_COMPARATOR); List<IArtifactRepository> repos = new ArrayList<>(); SubMonitor sub = SubMonitor.convert(monitor, (repositories.length + 1) * 100); for (int i = 0; i < repositories.length; i++) { URI location = repositories[i]; getLoadedRepository(location, repoManager, repos, sub); // Remove this URI from the list of extra references if it is there. if (referencedArtifactRepositories != null && location != null) { referencedArtifactRepositories.remove(location.toString()); } } // Are there any extra artifact repository references to consider? if (referencedArtifactRepositories != null && referencedArtifactRepositories.size() > 0 && shouldFollowArtifactReferences()) { SubMonitor innerSub = SubMonitor.convert(sub.newChild(100), referencedArtifactRepositories.size() * 100); for (URI referencedURI : referencedArtifactRepositories.values()) { getLoadedRepository(referencedURI, repoManager, repos, innerSub); } } return repos; }
/** * Removes repositories from fragments locations as they might be obsolete and adds them back. */ private void setUpRepos() { //clean old junk IMetadataRepositoryManager metaManager = (IMetadataRepositoryManager) agent.getService(IMetadataRepositoryManager.SERVICE_NAME); URI[] knownRepositories = metaManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); for (URI uri : knownRepositories) { if ("true".equals(metaManager.getRepositoryProperty(uri, EngineActivator.P2_FRAGMENT_PROPERTY))) { //$NON-NLS-1$ metaManager.removeRepository(uri); } } IArtifactRepositoryManager artifactManager = (IArtifactRepositoryManager) agent.getService(IArtifactRepositoryManager.SERVICE_NAME); knownRepositories = artifactManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); for (URI uri : knownRepositories) { if ("true".equals(artifactManager.getRepositoryProperty(uri, EngineActivator.P2_FRAGMENT_PROPERTY))) { //$NON-NLS-1$ artifactManager.removeRepository(uri); } } File[] fragments = EngineActivator.getExtensionsDirectories(); for (File f : fragments) { metaManager.addRepository(f.toURI()); metaManager.setRepositoryProperty(f.toURI(), EngineActivator.P2_FRAGMENT_PROPERTY, Boolean.TRUE.toString()); artifactManager.addRepository(f.toURI()); artifactManager.setRepositoryProperty(f.toURI(), EngineActivator.P2_FRAGMENT_PROPERTY, Boolean.TRUE.toString()); } }
/** * Removes repositories from fragments locations as they might be obsolete and adds them back. */ private void setUpRepos() { //clean old junk IMetadataRepositoryManager metaManager = (IMetadataRepositoryManager) agent.getService(IMetadataRepositoryManager.SERVICE_NAME); URI[] knownRepositories = metaManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); for (URI uri : knownRepositories) { if ("true".equals(metaManager.getRepositoryProperty(uri, EngineActivator.P2_FRAGMENT_PROPERTY))) { //$NON-NLS-1$ metaManager.removeRepository(uri); } } IArtifactRepositoryManager artifactManager = (IArtifactRepositoryManager) agent.getService(IArtifactRepositoryManager.SERVICE_NAME); knownRepositories = artifactManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_LOCAL); for (URI uri : knownRepositories) { if ("true".equals(artifactManager.getRepositoryProperty(uri, EngineActivator.P2_FRAGMENT_PROPERTY))) { //$NON-NLS-1$ artifactManager.removeRepository(uri); } } File[] fragments = EngineActivator.getExtensionsDirectories(); for (File f : fragments) { metaManager.addRepository(f.toURI()); metaManager.setRepositoryProperty(f.toURI(), EngineActivator.P2_FRAGMENT_PROPERTY, Boolean.TRUE.toString()); artifactManager.addRepository(f.toURI()); artifactManager.setRepositoryProperty(f.toURI(), EngineActivator.P2_FRAGMENT_PROPERTY, Boolean.TRUE.toString()); } }
URI[] repositories = artifactRepositories == null ? repoManager.getKnownRepositories(IRepositoryManager.REPOSITORIES_ALL) : artifactRepositories; Arrays.sort(repositories, LOCAL_FIRST_COMPARATOR);