Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java')
-rw-r--r--bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java11
1 files changed, 9 insertions, 2 deletions
diff --git a/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java b/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java
index 8d33d918c..c5a2deb75 100644
--- a/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java
+++ b/bundles/org.eclipse.equinox.p2.artifact.repository/src/org/eclipse/equinox/internal/p2/artifact/repository/CompositeArtifactRepositoryFactory.java
@@ -25,10 +25,17 @@ import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException;
import org.eclipse.equinox.internal.provisional.spi.p2.artifact.repository.ArtifactRepositoryFactory;
import org.eclipse.equinox.p2.repository.IRepositoryManager;
import org.eclipse.equinox.p2.repository.artifact.IArtifactRepository;
+import org.eclipse.equinox.p2.repository.artifact.IArtifactRepositoryManager;
import org.eclipse.osgi.util.NLS;
public class CompositeArtifactRepositoryFactory extends ArtifactRepositoryFactory {
+ private IArtifactRepositoryManager getManager() {
+ if (getAgent() != null)
+ return (IArtifactRepositoryManager) getAgent().getService(IArtifactRepositoryManager.SERVICE_NAME);
+ return null;
+ }
+
public IArtifactRepository load(URI location, int flags, IProgressMonitor monitor) throws ProvisionException {
final String PROTOCOL_FILE = "file"; //$NON-NLS-1$
long time = 0;
@@ -95,7 +102,7 @@ public class CompositeArtifactRepositoryFactory extends ArtifactRepositoryFactor
CompositeRepositoryState resultState = io.read(localFile.toURL(), descriptorStream, CompositeArtifactRepository.PI_REPOSITORY_TYPE, sub.newChild(100));
if (resultState.getLocation() == null)
resultState.setLocation(location);
- CompositeArtifactRepository result = new CompositeArtifactRepository(resultState);
+ CompositeArtifactRepository result = new CompositeArtifactRepository(getManager(), resultState);
if (Tracing.DEBUG_METADATA_PARSING) {
time += System.currentTimeMillis();
Tracing.debug(debugMsg + "time (ms): " + time); //$NON-NLS-1$
@@ -118,7 +125,7 @@ public class CompositeArtifactRepositoryFactory extends ArtifactRepositoryFactor
}
public IArtifactRepository create(URI location, String name, String type, Map properties) {
- return new CompositeArtifactRepository(location, name, properties);
+ return new CompositeArtifactRepository(getManager(), location, name, properties);
}
private Transport getTransport() {

Back to the top