Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Hallgren2010-03-10 14:39:10 +0000
committerThomas Hallgren2010-03-10 14:39:10 +0000
commit16d99e36e9a7f45cc1355d048a069eb316b53c88 (patch)
tree833dd47d0c2fd4df5c9e185a886caf29d7c9aacf /bundles/org.eclipse.equinox.p2.metadata.repository
parent44b72ab11e1da33aeb9df65797dcfc9b7935f392 (diff)
downloadrt.equinox.p2-16d99e36e9a7f45cc1355d048a069eb316b53c88.tar.gz
rt.equinox.p2-16d99e36e9a7f45cc1355d048a069eb316b53c88.tar.xz
rt.equinox.p2-16d99e36e9a7f45cc1355d048a069eb316b53c88.zip
299507 : Filters on IRequirement should be an expression
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.metadata.repository')
-rw-r--r--bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataParser.java6
-rw-r--r--bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataWriter.java4
2 files changed, 5 insertions, 5 deletions
diff --git a/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataParser.java b/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataParser.java
index 8c723f48e..718a17b7a 100644
--- a/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataParser.java
+++ b/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataParser.java
@@ -17,6 +17,7 @@ import java.util.*;
import java.util.Map.Entry;
import org.eclipse.equinox.internal.p2.core.helpers.OrderedProperties;
import org.eclipse.equinox.internal.p2.metadata.ArtifactKey;
+import org.eclipse.equinox.internal.p2.metadata.InstallableUnit;
import org.eclipse.equinox.internal.p2.persistence.XMLParser;
import org.eclipse.equinox.p2.metadata.*;
import org.eclipse.equinox.p2.metadata.MetadataFactory.InstallableUnitDescription;
@@ -26,7 +27,6 @@ import org.eclipse.equinox.p2.metadata.expression.*;
import org.eclipse.equinox.p2.repository.IRepositoryReference;
import org.eclipse.equinox.p2.repository.spi.RepositoryReference;
import org.osgi.framework.BundleContext;
-import org.osgi.framework.Filter;
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
@@ -615,10 +615,10 @@ public abstract class MetadataParser extends XMLParser implements XMLConstants {
protected void finished() {
if (isValidXML()) {
- Filter filter = null;
+ IMatchExpression<IInstallableUnit> filter = null;
if (filterHandler != null)
try {
- filter = ExpressionUtil.parseLDAP(filterHandler.getText());
+ filter = InstallableUnit.parseFilter(filterHandler.getText());
} catch (ExpressionParseException e) {
if (removeWhiteSpace(filterHandler.getText()).equals("(&(|)(|)(|))")) {//$NON-NLS-1$
// We could log this I guess
diff --git a/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataWriter.java b/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataWriter.java
index 864c40cdf..7decd767c 100644
--- a/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataWriter.java
+++ b/bundles/org.eclipse.equinox.p2.metadata.repository/src/org/eclipse/equinox/internal/p2/metadata/repository/io/MetadataWriter.java
@@ -76,7 +76,7 @@ public abstract class MetadataWriter extends XMLWriter implements XMLConstants {
writeMetaRequirements(iu.getMetaRequirements());
writeProvidedCapabilities(iu.getProvidedCapabilities());
writeRequirements(iu.getRequirements());
- writeTrimmedCdata(IU_FILTER_ELEMENT, iu.getFilter() == null ? null : iu.getFilter().toString());
+ writeTrimmedCdata(IU_FILTER_ELEMENT, iu.getFilter() == null ? null : iu.getFilter().getParameters()[0].toString());
writeArtifactKeys(iu.getArtifacts());
writeTouchpointType(iu.getTouchpointType());
@@ -246,7 +246,7 @@ public abstract class MetadataWriter extends XMLWriter implements XMLConstants {
}
attribute(CAPABILITY_GREED_ATTRIBUTE, requirement.isGreedy(), true);
if (requirement.getFilter() != null)
- writeTrimmedCdata(CAPABILITY_FILTER_ELEMENT, requirement.getFilter().toString());
+ writeTrimmedCdata(CAPABILITY_FILTER_ELEMENT, requirement.getFilter().getParameters()[0].toString());
end(REQUIREMENT_ELEMENT);
}

Back to the top