diff options
19 files changed, 34 insertions, 40 deletions
diff --git a/bundles/org.eclipse.equinox.p2.metadata.generator/src/org/eclipse/equinox/internal/p2/metadata/generator/ProductQuery.java b/bundles/org.eclipse.equinox.p2.metadata.generator/src/org/eclipse/equinox/internal/p2/metadata/generator/ProductQuery.java index ff38fcc28..6e9a293e5 100644 --- a/bundles/org.eclipse.equinox.p2.metadata.generator/src/org/eclipse/equinox/internal/p2/metadata/generator/ProductQuery.java +++ b/bundles/org.eclipse.equinox.p2.metadata.generator/src/org/eclipse/equinox/internal/p2/metadata/generator/ProductQuery.java @@ -13,10 +13,10 @@ package org.eclipse.equinox.internal.p2.metadata.generator; import java.io.*; import java.util.*; import org.eclipse.equinox.internal.p2.metadata.generator.features.ProductFile; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.internal.provisional.p2.metadata.generator.Generator.GeneratorResult; import org.eclipse.equinox.internal.provisional.p2.metadata.generator.MetadataGeneratorHelper; import org.eclipse.equinox.p2.metadata.*; +import org.eclipse.equinox.p2.query.MatchQuery; public class ProductQuery extends MatchQuery { private static final String EQUINOX_LAUNCHER = "org.eclipse.equinox.launcher"; //$NON-NLS-1$ diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionMatchQuery.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionMatchQuery.java index 58cd913e8..8a6f6271c 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionMatchQuery.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionMatchQuery.java @@ -14,7 +14,6 @@ import java.util.HashSet; import java.util.Iterator; import org.eclipse.equinox.internal.p2.metadata.expression.Expression; import org.eclipse.equinox.internal.p2.metadata.expression.ExpressionFactory; -import org.eclipse.equinox.internal.p2.metadata.query.IMatchQuery; import org.eclipse.equinox.p2.metadata.IArtifactKey; import org.eclipse.equinox.p2.metadata.expression.*; import org.eclipse.equinox.p2.metadata.index.*; diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionQuery.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionQuery.java index 483116faf..8ec52f4e4 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionQuery.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/ExpressionQuery.java @@ -13,7 +13,6 @@ package org.eclipse.equinox.p2.query; import java.util.Iterator; import org.eclipse.equinox.internal.p2.metadata.expression.*; -import org.eclipse.equinox.internal.p2.metadata.query.IMatchQuery; import org.eclipse.equinox.p2.metadata.expression.*; import org.eclipse.equinox.p2.metadata.index.IIndexProvider; import org.eclipse.equinox.p2.metadata.index.IQueryWithIndex; diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/query/IMatchQuery.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/IMatchQuery.java index f25b62d19..aebceca27 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/query/IMatchQuery.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/IMatchQuery.java @@ -7,12 +7,7 @@ * Contributors: * EclipseSource - initial API and implementation ******************************************************************************/ -package org.eclipse.equinox.internal.p2.metadata.query; - -import org.eclipse.equinox.p2.query.ExpressionMatchQuery; - -import org.eclipse.equinox.p2.query.IQuery; - +package org.eclipse.equinox.p2.query; /** * A query in which the elements can be evaluated by calling isMatch on. Each @@ -21,7 +16,8 @@ import org.eclipse.equinox.p2.query.IQuery; * exclusive from all other calls. <P> * * @noimplement This interface is not intended to be implemented by clients. Clients - * creating custom queries must extend {@link ExpressionMatchQuery} instead. + * creating custom queries must extend {@link ExpressionMatchQuery} or + * {@link MatchQuery} instead. * @since 2.0 */ public interface IMatchQuery<T> extends IQuery<T> { diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/query/MatchQuery.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/MatchQuery.java index 8f1c31764..6798a47d5 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/query/MatchQuery.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/MatchQuery.java @@ -1,5 +1,5 @@ /******************************************************************************* -* Copyright (c) 2009 EclipseSource and others. All rights reserved. This +* Copyright (c) 2009, 2010 EclipseSource and others. All rights reserved. This * program and the accompanying materials are made available under the terms of * the Eclipse Public License v1.0 which accompanies this distribution, and is * available at http://www.eclipse.org/legal/epl-v10.html @@ -8,27 +8,23 @@ * EclipseSource - initial API and implementation * IBM Corporation - ongoing development ******************************************************************************/ -package org.eclipse.equinox.internal.p2.metadata.query; - -import org.eclipse.equinox.p2.query.ExpressionMatchQuery; +package org.eclipse.equinox.p2.query; import java.util.Iterator; import org.eclipse.equinox.p2.metadata.expression.IExpression; -import org.eclipse.equinox.p2.query.*; /** - * This class represents the superclass of most of p2's queries. Every element - * in the query can be evaluated by calling isMatch on it. If {@link #isMatch(Object)} returns true, - * then the element WILL be included in the query result. If {@link #isMatch(Object)} returns false, then - * the element WILL NOT be included in the query result. + * This class represents a simple Java-based query. Clients may subclass and + * override the {@link #isMatch(Object)} method in order to write simple + * queries against p2 metadata. * <p> - * This class may be subclassed by clients. Subclasses should specify the type - * of object they support querying on. Subclasses are also encouraged to clearly - * specify their match algorithm, and expose the parameters involved in the match - * computation, to allow {@link IQueryable} implementations to optimize their - * execution of the query. + * Note that hand-written queries cannot be optimized for queryables containing + * indices, or for remote queryables. In general you should use one of the pre-defined + * queries found in {@link QueryUtil} if possible, to obtain queries optimized for indexing and + * remote execution. This class is intended for simple queries against small data + * sources where indexed lookup and remote query execution are not needed. + * </p> * @since 2.0 - * @deprecated Clients should use {@link ExpressionMatchQuery} instead. */ public abstract class MatchQuery<T> implements IMatchQuery<T> { diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/QueryUtil.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/QueryUtil.java index 2f49ba30f..5b4c54c12 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/QueryUtil.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/p2/query/QueryUtil.java @@ -16,7 +16,6 @@ import org.eclipse.equinox.internal.p2.metadata.InstallableUnit; import org.eclipse.equinox.internal.p2.metadata.expression.ContextExpression; import org.eclipse.equinox.internal.p2.metadata.expression.ExpressionFactory; import org.eclipse.equinox.internal.p2.metadata.expression.Expression.VariableFinder; -import org.eclipse.equinox.internal.p2.metadata.query.IMatchQuery; import org.eclipse.equinox.p2.metadata.*; import org.eclipse.equinox.p2.metadata.expression.*; diff --git a/bundles/org.eclipse.equinox.p2.ql/src/org/eclipse/equinox/internal/p2/ql/expression/WrappedIQuery.java b/bundles/org.eclipse.equinox.p2.ql/src/org/eclipse/equinox/internal/p2/ql/expression/WrappedIQuery.java index b899da5bc..b0e6c0b0e 100644 --- a/bundles/org.eclipse.equinox.p2.ql/src/org/eclipse/equinox/internal/p2/ql/expression/WrappedIQuery.java +++ b/bundles/org.eclipse.equinox.p2.ql/src/org/eclipse/equinox/internal/p2/ql/expression/WrappedIQuery.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2009 Cloudsmith Inc. and others. + * Copyright (c) 2009, 2010 Cloudsmith Inc. and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -12,8 +12,8 @@ package org.eclipse.equinox.internal.p2.ql.expression; import java.util.Iterator; import org.eclipse.equinox.internal.p2.metadata.expression.*; -import org.eclipse.equinox.internal.p2.metadata.query.IMatchQuery; import org.eclipse.equinox.p2.metadata.expression.IEvaluationContext; +import org.eclipse.equinox.p2.query.IMatchQuery; import org.eclipse.equinox.p2.query.IQuery; public final class WrappedIQuery extends Function implements IQLConstants { diff --git a/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/AbstractQueryTest.java b/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/AbstractQueryTest.java index 1bcaca558..0b8edfe2a 100644 --- a/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/AbstractQueryTest.java +++ b/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/AbstractQueryTest.java @@ -10,10 +10,10 @@ *******************************************************************************/ package org.eclipse.equinox.p2.tests.ui.query; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.internal.p2.ui.ProvUI; import org.eclipse.equinox.p2.operations.RepositoryTracker; import org.eclipse.equinox.p2.query.IQuery; +import org.eclipse.equinox.p2.query.MatchQuery; import org.eclipse.equinox.p2.repository.IRepositoryManager; import org.eclipse.equinox.p2.tests.AbstractProvisioningTest; import org.eclipse.equinox.p2.ui.ProvisioningUI; diff --git a/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/QueryDescriptorTest.java b/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/QueryDescriptorTest.java index c220d4637..64f468334 100644 --- a/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/QueryDescriptorTest.java +++ b/bundles/org.eclipse.equinox.p2.tests.ui/src/org/eclipse/equinox/p2/tests/ui/query/QueryDescriptorTest.java @@ -12,7 +12,6 @@ package org.eclipse.equinox.p2.tests.ui.query; import java.util.*; import junit.framework.TestCase; import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.internal.p2.ui.ElementQueryDescriptor; import org.eclipse.equinox.internal.p2.ui.ElementWrapper; import org.eclipse.equinox.p2.query.*; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AggregateQueryTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AggregateQueryTest.java index 222699b1d..14fe16a18 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AggregateQueryTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/AggregateQueryTest.java @@ -9,9 +9,10 @@ ******************************************************************************/ package org.eclipse.equinox.p2.tests.core; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.util.*; import junit.framework.TestCase; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.query.*; import org.eclipse.equinox.p2.tests.AbstractProvisioningTest; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CollectorTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CollectorTest.java index 3e97c5eca..1f219e4e0 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CollectorTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CollectorTest.java @@ -11,8 +11,9 @@ *******************************************************************************/ package org.eclipse.equinox.p2.tests.core; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.util.*; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.query.*; import org.eclipse.equinox.p2.tests.AbstractProvisioningTest; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CompoundQueryableTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CompoundQueryableTest.java index 56e25e479..9d10945f5 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CompoundQueryableTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/CompoundQueryableTest.java @@ -9,12 +9,13 @@ ******************************************************************************/ package org.eclipse.equinox.p2.tests.core; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.util.Arrays; import java.util.Iterator; import junit.framework.TestCase; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.tests.harness.TestProgressMonitor; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.query.*; import org.eclipse.equinox.p2.tests.AbstractProvisioningTest; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/QueryTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/QueryTest.java index 428d423b1..511f4d8bb 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/QueryTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/core/QueryTest.java @@ -10,10 +10,11 @@ *******************************************************************************/ package org.eclipse.equinox.p2.tests.core; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.util.Arrays; import java.util.List; import junit.framework.TestCase; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.query.*; import org.eclipse.equinox.p2.tests.AbstractProvisioningTest; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/CompositeMetadataRepositoryTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/CompositeMetadataRepositoryTest.java index 7f5f6520c..1be8a3850 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/CompositeMetadataRepositoryTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/CompositeMetadataRepositoryTest.java @@ -12,13 +12,14 @@ *******************************************************************************/ package org.eclipse.equinox.p2.tests.metadata.repository; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.io.File; import java.net.URI; import java.net.URISyntaxException; import java.util.*; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.runtime.URIUtil; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository; import org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepositoryFactory; import org.eclipse.equinox.internal.p2.persistence.CompositeRepositoryState; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/SPIMetadataRepositoryTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/SPIMetadataRepositoryTest.java index d654fa0d6..8081352a0 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/SPIMetadataRepositoryTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/SPIMetadataRepositoryTest.java @@ -10,6 +10,8 @@ ******************************************************************************/ package org.eclipse.equinox.p2.tests.metadata.repository; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.io.File; import java.io.UnsupportedEncodingException; import java.math.BigInteger; @@ -21,7 +23,6 @@ import java.util.*; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.equinox.internal.p2.core.helpers.CollectionUtils; import org.eclipse.equinox.internal.p2.metadata.*; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.core.ProvisionException; import org.eclipse.equinox.p2.metadata.*; import org.eclipse.equinox.p2.metadata.MetadataFactory.InstallableUnitDescription; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/ProductActionWithAdviceFileTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/ProductActionWithAdviceFileTest.java index a5766888b..750b5853e 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/ProductActionWithAdviceFileTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/ProductActionWithAdviceFileTest.java @@ -10,6 +10,8 @@ ******************************************************************************/ package org.eclipse.equinox.p2.tests.publisher.actions; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.io.File; import java.net.URI; import java.util.Collection; @@ -17,7 +19,6 @@ import java.util.Iterator; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.equinox.internal.p2.metadata.IRequiredCapability; import org.eclipse.equinox.internal.p2.metadata.InstallableUnit; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.internal.p2.publisher.eclipse.ProductFile; import org.eclipse.equinox.p2.metadata.*; import org.eclipse.equinox.p2.metadata.MetadataFactory.InstallableUnitDescription; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/RootIUActionTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/RootIUActionTest.java index ebee6443b..dcf0b7e82 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/RootIUActionTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/publisher/actions/RootIUActionTest.java @@ -12,11 +12,12 @@ package org.eclipse.equinox.p2.tests.publisher.actions; import static org.easymock.EasyMock.expect; +import org.eclipse.equinox.p2.query.MatchQuery; + import java.util.*; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.runtime.Status; import org.eclipse.equinox.internal.p2.metadata.IRequiredCapability; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.metadata.*; import org.eclipse.equinox.p2.publisher.IPublisherResult; import org.eclipse.equinox.p2.publisher.actions.*; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/EvaluatorTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/EvaluatorTest.java index b188ade06..db4cc3a80 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/EvaluatorTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/EvaluatorTest.java @@ -16,7 +16,6 @@ import java.util.*; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.equinox.internal.p2.director.QueryableArray; import org.eclipse.equinox.internal.p2.metadata.InstallableUnit; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.metadata.*; import org.eclipse.equinox.p2.metadata.expression.*; import org.eclipse.equinox.p2.publisher.PublisherInfo; diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java index 2e35de4df..b71322fa4 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java @@ -16,7 +16,6 @@ import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.equinox.internal.p2.director.QueryableArray; import org.eclipse.equinox.internal.p2.director.Slicer; import org.eclipse.equinox.internal.p2.metadata.InstallableUnit; -import org.eclipse.equinox.internal.p2.metadata.query.MatchQuery; import org.eclipse.equinox.p2.metadata.*; import org.eclipse.equinox.p2.query.*; import org.eclipse.equinox.p2.repository.metadata.IMetadataRepository; |