diff options
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/actions/QueryableFilterAdvice.java')
-rw-r--r-- | bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/actions/QueryableFilterAdvice.java | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/actions/QueryableFilterAdvice.java b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/actions/QueryableFilterAdvice.java index 01b34b4aa..9a068b790 100644 --- a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/actions/QueryableFilterAdvice.java +++ b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/actions/QueryableFilterAdvice.java @@ -9,10 +9,12 @@ ******************************************************************************/ package org.eclipse.equinox.p2.publisher.actions; -import org.eclipse.equinox.internal.provisional.p2.metadata.Version; - -import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit; -import org.eclipse.equinox.internal.provisional.p2.metadata.query.*; +import org.eclipse.equinox.p2.metadata.IInstallableUnit; +import org.eclipse.equinox.p2.metadata.Version; +import org.eclipse.equinox.p2.metadata.query.InstallableUnitQuery; +import org.eclipse.equinox.p2.query.IQueryResult; +import org.eclipse.equinox.p2.query.IQueryable; +import org.osgi.framework.Filter; /** * An IFilterAdvice that looks up the desired IU in the publisher's input metadata @@ -20,23 +22,24 @@ import org.eclipse.equinox.internal.provisional.p2.metadata.query.*; */ public class QueryableFilterAdvice implements IFilterAdvice { - private IQueryable queryable; + private IQueryable<IInstallableUnit> queryable; - public QueryableFilterAdvice(IQueryable queryable) { + public QueryableFilterAdvice(IQueryable<IInstallableUnit> queryable) { this.queryable = queryable; } - public String getFilter(String id, Version version, boolean exact) { + public Filter getFilter(String id, Version version, boolean exact) { InstallableUnitQuery query = new InstallableUnitQuery(id, version); - Collector result = queryable.query(query, new Collector(), null); + IQueryResult<IInstallableUnit> result = queryable.query(query, null); if (!result.isEmpty()) - return (((IInstallableUnit) result.iterator().next()).getFilter()); + return result.iterator().next().getFilter(); if (exact) return null; + query = new InstallableUnitQuery(id); - result = queryable.query(query, new Collector(), null); + result = queryable.query(query, null); if (!result.isEmpty()) - return (((IInstallableUnit) result.iterator().next()).getFilter()); + return result.iterator().next().getFilter(); return null; } |