From 3dd1798af27570e63970649454774ba49116cb65 Mon Sep 17 00:00:00 2001 From: Andrew Niefer Date: Thu, 24 Sep 2009 15:35:21 +0000 Subject: bug 290323 - remove IUs from repo --- .../repository/tools/tasks/RemoveIUTask.java | 33 +++++++++++++--------- 1 file changed, 19 insertions(+), 14 deletions(-) (limited to 'bundles/org.eclipse.equinox.p2.repository.tools/src_ant') diff --git a/bundles/org.eclipse.equinox.p2.repository.tools/src_ant/org/eclipse/equinox/p2/internal/repository/tools/tasks/RemoveIUTask.java b/bundles/org.eclipse.equinox.p2.repository.tools/src_ant/org/eclipse/equinox/p2/internal/repository/tools/tasks/RemoveIUTask.java index ccf1032b1..ed4749ad2 100644 --- a/bundles/org.eclipse.equinox.p2.repository.tools/src_ant/org/eclipse/equinox/p2/internal/repository/tools/tasks/RemoveIUTask.java +++ b/bundles/org.eclipse.equinox.p2.repository.tools/src_ant/org/eclipse/equinox/p2/internal/repository/tools/tasks/RemoveIUTask.java @@ -27,20 +27,19 @@ import org.eclipse.osgi.util.NLS; public class RemoveIUTask extends AbstractRepositoryTask { - public RemoveIUTask() { - application = new AbstractApplication() { - public IStatus run(IProgressMonitor monitor) { - return null; - } + protected static class RemoveIUApplication extends AbstractApplication { + //Only need the application to reuse super's repo management. + public IStatus run(IProgressMonitor monitor) { + return null; + } - public IMetadataRepository getCompositeMetadataRepository() { - return destinationMetadataRepository; - } + public void finalizeRepos() throws ProvisionException { + super.finalizeRepositories(); + } + } - public IArtifactRepository getCompositeArtifactRepository() { - return destinationArtifactRepository; - } - }; + public RemoveIUTask() { + this.application = new RemoveIUApplication(); } public void execute() throws BuildException { @@ -52,8 +51,8 @@ public class RemoveIUTask extends AbstractRepositoryTask { if (application.getCompositeMetadataRepository() == null) throw new BuildException(Messages.AbstractApplication_no_valid_destinations); //need a repo - IMetadataRepository repository = application.getCompositeMetadataRepository(); - IArtifactRepository artifacts = application.getCompositeArtifactRepository(); + IMetadataRepository repository = application.getDestinationMetadataRepository(); + IArtifactRepository artifacts = application.getDestinationArtifactRepository(); for (Iterator iter = iuTasks.iterator(); iter.hasNext();) { IUDescription iu = (IUDescription) iter.next(); @@ -76,6 +75,12 @@ public class RemoveIUTask extends AbstractRepositoryTask { } } catch (ProvisionException e) { throw new BuildException(e); + } finally { + try { + ((RemoveIUApplication) application).finalizeRepos(); + } catch (ProvisionException e) { + throw new BuildException(e); + } } } } -- cgit v1.2.3