diff options
author | Andrew Niefer | 2010-01-14 20:33:53 +0000 |
---|---|---|
committer | Andrew Niefer | 2010-01-14 20:33:53 +0000 |
commit | ce766efdd44e136019c84950c280ecfb2aa09218 (patch) | |
tree | 34c1a39512d6745f4711a01505b54a96d55a9b0c /bundles/org.eclipse.equinox.p2.publisher | |
parent | c97c841b8087ec6ef5df03bf523495c39f7c798f (diff) | |
download | rt.equinox.p2-ce766efdd44e136019c84950c280ecfb2aa09218.tar.gz rt.equinox.p2-ce766efdd44e136019c84950c280ecfb2aa09218.tar.xz rt.equinox.p2-ce766efdd44e136019c84950c280ecfb2aa09218.zip |
bug 293715 - support filter attribute on inclusions/requirements
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.publisher')
3 files changed, 5 insertions, 12 deletions
diff --git a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/internal/p2/publisher/eclipse/FeatureManifestParser.java b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/internal/p2/publisher/eclipse/FeatureManifestParser.java index bae677e86..3e51ed23a 100644 --- a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/internal/p2/publisher/eclipse/FeatureManifestParser.java +++ b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/internal/p2/publisher/eclipse/FeatureManifestParser.java @@ -187,6 +187,9 @@ public class FeatureManifestParser extends DefaultHandler { if (flag != null) entry.setOptional(Boolean.valueOf(flag).booleanValue()); setEnvironment(attributes, entry); + String filter = attributes.getValue("filter"); //$NON-NLS-1$ + if (filter != null) + entry.setFilter(filter); result.addEntry(entry); } diff --git a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/PublisherResult.java b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/PublisherResult.java index ae358d85b..b97cb7ee7 100644 --- a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/PublisherResult.java +++ b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/PublisherResult.java @@ -44,14 +44,14 @@ public class PublisherResult implements IPublisherResult { } public IInstallableUnit getIU(String id, Version version, String type) { - if (type == null || type == ROOT) { + if ((type == null || type == ROOT) && rootIUs.containsKey(id)) { Collection<IInstallableUnit> ius = rootIUs.get(id); for (IInstallableUnit iu : ius) { if (iu.getVersion().equals(version)) return iu; } } - if (type == null || type == NON_ROOT) { + if ((type == null || type == NON_ROOT) && nonRootIUs.containsKey(id)) { Collection<IInstallableUnit> ius = nonRootIUs.get(id); for (IInstallableUnit iu : ius) { if (iu.getVersion().equals(version)) diff --git a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/eclipse/FeatureEntry.java b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/eclipse/FeatureEntry.java index 8ef764a36..1e7ac67fc 100644 --- a/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/eclipse/FeatureEntry.java +++ b/bundles/org.eclipse.equinox.p2.publisher/src/org/eclipse/equinox/p2/publisher/eclipse/FeatureEntry.java @@ -29,10 +29,6 @@ public class FeatureEntry { private boolean unpack = true; private boolean optional = false; private boolean isPatch = false; - - /** - * Temporary field to add provisioning filters to features - */ private String filter; public static FeatureEntry createRequires(String id, String version, String match, String filter, boolean isPlugin) { @@ -77,9 +73,6 @@ public class FeatureEntry { return arch; } - /** - * Temporary method to add provisioning filters to features - */ public String getFilter() { return filter; } @@ -147,9 +140,6 @@ public class FeatureEntry { this.nl = nl; } - /** - * Temporary method to add provisioning filters to features - */ public void setFilter(String filter) { this.filter = filter; |