Eclipse Platform Release 3.7

## Uses of Interface
org.eclipse.equinox.p2.query.IQuery

Packages that use IQuery
org.eclipse.equinox.p2.engine: Provides support for interacting with the p2 provisioning engine Package Specification This package specifies API for interacting with the p2 provisioning engine.
org.eclipse.equinox.p2.engine.query: Provides queries specific to profiles Package Specification This package specifies API for querying the profile.
org.eclipse.equinox.p2.metadata.expression: Provides a simple expression language used to represent requirements and filters in the metadada Package Specification This package defines a simple expression language that is used to define requirements and filters in the metadata, but also form the base of the p2 query language.
org.eclipse.equinox.p2.metadata.index: Provides classes for metadata query indexing Package Specification This package provides API for creating and manipulating indices that are used to optimize queries against a particular queryable source.
org.eclipse.equinox.p2.query: Provides common classes for the query mechanism.
org.eclipse.equinox.p2.repository.artifact: Defines artifact repository.
org.eclipse.equinox.p2.touchpoint.eclipse.query: Provides query utilities specific to provisioning of OSGi bundles Package Specification This package specifies API for querying and manipulating provisioning metadata that is specific to OSGi bundles or Eclipse-specific constructs such as features.
org.eclipse.equinox.p2.ui: Provides provisioning user interface classes that can be used for assembling a provisioning UI.

Uses of IQuery in org.eclipse.equinox.p2.engine

Methods in org.eclipse.equinox.p2.engine with parameters of type IQuery
`IQueryResult<IInstallableUnit>` `IProfile.available(IQuery<IInstallableUnit> query, IProgressMonitor monitor)` Returns the installable units in this profile that match the given query.

Uses of IQuery in org.eclipse.equinox.p2.engine.query

Classes in org.eclipse.equinox.p2.engine.query that implement IQuery
`class` `IUProfilePropertyQuery` A query that searches for `IInstallableUnit` instances that have a property associated with the specified profile, whose value matches the provided value.
`class` `UserVisibleRootQuery` A query matching all the `IInstallableUnit`s that are marked visible to the user.

Uses of IQuery in org.eclipse.equinox.p2.metadata.expression

Methods in org.eclipse.equinox.p2.metadata.expression with parameters of type IQuery
`IExpression` `IExpressionFactory.toExpression(IQuery<?> query)` Wrap an `IQuery` as an expression.

Uses of IQuery in org.eclipse.equinox.p2.metadata.index

Subinterfaces of IQuery in org.eclipse.equinox.p2.metadata.index
`interface` `IQueryWithIndex<T>` An extension of the `IQuery` that allows use of indexes.

Uses of IQuery in org.eclipse.equinox.p2.query

Subinterfaces of IQuery in org.eclipse.equinox.p2.query

`interface`

`IMatchQuery<T>`
Deprecated. If possible, use one of the predefined queries in `QueryUtil` or use the `QueryUtil.createMatchQuery(String, Object...)` to create a custom expression based query. If the query cannot be expressed using the p2QL, then use a predefined or custom expression query as a first filter (in worst case, use `QueryUtil.createIUAnyQuery()`) and then provide further filtering like so:

     for(iter = queryable.query(someExpressionQuery).iterator(); iter.hasNext();) {
       // do your match here
     }

Classes in org.eclipse.equinox.p2.query that implement IQuery
`class` `ExpressionMatchQuery<T>` A query that matches candidates against an expression.
`class` `ExpressionQuery<T>` A query that evaluates using an iterator as input and produces a new iterator.

`class`

`MatchQuery<T>`
Deprecated. If possible, use one of the predefined queries in `QueryUtil` or use the `QueryUtil.createMatchQuery(String, Object...)` to create a custom expression based query. If the query cannot be expressed using the p2QL, then use a predefined or custom expression query as a first filter (in worst case, use `QueryUtil.createIUAnyQuery()`) and then provide further filtering like so:

     for(iter = queryable.query(someExpressionQuery).iterator(); iter.hasNext();) {
       // do your match here
     }

Fields in org.eclipse.equinox.p2.query declared as IQuery
`static IQuery<IInstallableUnit>` `QueryUtil.ALL_UNITS`
`static IQuery<IInstallableUnit>` `QueryUtil.NO_UNITS`

Methods in org.eclipse.equinox.p2.query that return IQuery

`static

`<T> IQuery<T>`

`

`QueryUtil.createCompoundQuery(Collection<? extends IQuery<? extends T>> queries, boolean and)`
Creates a compound query that combines the given queries.

`static

`<T> IQuery<T>`

`

`QueryUtil.createCompoundQuery(IQuery<? extends T> query1, IQuery<T> query2, boolean and)`
Creates a compound query that combines the two queries.

`static IQuery<IInstallableUnit>` `QueryUtil.createIUAnyQuery()` Returns a query that matches all `InstallableUnit` elements
`static IQuery<IInstallableUnit>` `QueryUtil.createIUCategoryMemberQuery(IInstallableUnit category)` Creates a new query that will return the members of the given `category`.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUCategoryQuery()` Creates a query matching every `IInstallableUnit` that is a category.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUGroupQuery()` Creates a query matching every `IInstallableUnit` that is a group.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUPatchQuery()` Creates an `IInstallableUnit` that will match all patches.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUPropertyQuery(String propertyName, String propertyValue)` Creates a query that searches for `IInstallableUnit` instances that have a property whose value matches the provided value.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUQuery(IVersionedId versionedId)` Creates a query that will match any `IInstallableUnit` with the given id and version.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUQuery(String id)` Creates a query that will match any `IInstallableUnit` with the given id, regardless of version.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUQuery(String id, Version version)` Creates a query that will match any `IInstallableUnit` with the given id and version.
`static IQuery<IInstallableUnit>` `QueryUtil.createIUQuery(String id, VersionRange range)` Creates a query that will match any `IInstallableUnit` with the given id, and whose version falls in the provided range.
`static IQuery<IInstallableUnit>` `QueryUtil.createLatestIUQuery()` Creates a query that returns the latest version for each unique id of an `IVersionedId`.

`static

`<T extends IVersionedId> IQuery<T>`

`

`QueryUtil.createLatestQuery(IQuery<T> query)`
Creates a query that returns the latest version for each unique id of an `IVersionedId` from the collection produced by `query`.

`static

`<T> IQuery<T>`

`

`QueryUtil.createLimitQuery(IQuery<T> query, int limit)`
Creates a limit query that can be used to limit the number of query results returned.

`static

`<T> IQuery<T>`

`

`QueryUtil.createMatchQuery(Class<? extends T> matchingClass, IExpression matchExpression, Object... parameters)`
Creates an query that will iterate over all candidates and discriminate all candidates that are not instances of `matchinClass>` or for which the boolean `matchExpression` returns false.

`static

`<T> IQuery<T>`

`

`QueryUtil.createMatchQuery(Class<? extends T> matchingClass, String matchExpression, Object... parameters)`
Parses the `matchExpression` and creates an query that will iterate over all candidates and discriminate all candidates that are not instances of `matchinClass>` or for which the boolean `matchExpression` returns false.

`static IQuery<IInstallableUnit>` `QueryUtil.createMatchQuery(IExpression matchExpression, Object... parameters)` Creates an `IInstallableUnit` query that will iterate over all candidates and discriminate by applying the boolean `matchExpression` on each candidate.
`static IQuery<IInstallableUnit>` `QueryUtil.createMatchQuery(String matchExpression, Object... parameters)` Parses the `matchExpression` and creates an `IInstallableUnit` query that will iterate over all candidates and discriminate by applying the boolean `matchExpression` on each candidate.

`static

`<T> IQuery<T>`

`

`QueryUtil.createPipeQuery(Collection<? extends IQuery<? extends T>> queries)`
Creates a piped query based on the provided input queries.

`static

`<T> IQuery<T>`

`

`QueryUtil.createPipeQuery(IQuery<? extends T> query1, IQuery<? extends T> query2)`
Creates a piped query based on the provided input queries.

`static

`<T> IQuery<T>`

`

`QueryUtil.createQuery(Class<? extends T> matchingClass, IExpression expression, Object... parameters)`
Creates a query that will limit the result to instances of the `matchinClass`.

`static

`<T> IQuery<T>`

`

`QueryUtil.createQuery(Class<? extends T> matchingClass, String expression, Object... parameters)`
Parses the `expression` and creates a query that will limit the result to instances of the `matchinClass`.

`static IQuery<IInstallableUnit>` `QueryUtil.createQuery(IExpression expression, Object... parameters)` Creates an `IInstallableUnit` query based on an `expression` that uses all candidates as input.
`static IQuery<IInstallableUnit>` `QueryUtil.createQuery(String expression, Object... parameters)` Parses the `expression` and creates an `IInstallableUnit` query.

Methods in org.eclipse.equinox.p2.query with parameters of type IQuery

`static

`<T> IQuery<T>`

`

`QueryUtil.createCompoundQuery(IQuery<? extends T> query1, IQuery<T> query2, boolean and)`
Creates a compound query that combines the two queries.

`static

`<T> IQuery<T>`

`

`QueryUtil.createCompoundQuery(IQuery<? extends T> query1, IQuery<T> query2, boolean and)`
Creates a compound query that combines the two queries.

`static

`<T> IContextExpression<T>`

`

`ExpressionQuery.createExpression(IQuery<T> query)`

`static

`<T extends IVersionedId> IQuery<T>`

`

`QueryUtil.createLatestQuery(IQuery<T> query)`
Creates a query that returns the latest version for each unique id of an `IVersionedId` from the collection produced by `query`.

`static

`<T> IQuery<T>`

`

`QueryUtil.createLimitQuery(IQuery<T> query, int limit)`
Creates a limit query that can be used to limit the number of query results returned.

`static

`<T> IQuery<T>`

`

`QueryUtil.createPipeQuery(IQuery<? extends T> query1, IQuery<? extends T> query2)`
Creates a piped query based on the provided input queries.

`static

`<T> IQuery<T>`

`

`QueryUtil.createPipeQuery(IQuery<? extends T> query1, IQuery<? extends T> query2)`
Creates a piped query based on the provided input queries.

`static

`<T> Class<? extends T>`

`

`ExpressionQuery.getElementClass(IQuery<T> query)`

`IQueryResult<T>` `CollectionResult.query(IQuery<T> query, IProgressMonitor monitor)`
`IQueryResult<T>` `Collector.query(IQuery<T> query, IProgressMonitor monitor)` Performs a query on this results of this collector.
`IQueryResult<T>` `IQueryable.query(IQuery<T> query, IProgressMonitor monitor)` Performs a query, passing any objects that satisfy the query to the provided collector.

Method parameters in org.eclipse.equinox.p2.query with type arguments of type IQuery

`static

`<T> IQuery<T>`

`

`QueryUtil.createCompoundQuery(Collection<? extends IQuery<? extends T>> queries, boolean and)`
Creates a compound query that combines the given queries.

`static

`<T> IQuery<T>`

`

`QueryUtil.createPipeQuery(Collection<? extends IQuery<? extends T>> queries)`
Creates a piped query based on the provided input queries.

Uses of IQuery in org.eclipse.equinox.p2.repository.artifact

Classes in org.eclipse.equinox.p2.repository.artifact that implement IQuery
`class` `ArtifactDescriptorQuery` A general purpose query for matching `IArtifactDescriptor` instances that satisfy various criteria.
`class` `ArtifactKeyQuery` A general purpose query for matching `IArtifactKey` instances that satisfy various criteria.

Uses of IQuery in org.eclipse.equinox.p2.touchpoint.eclipse.query

Classes in org.eclipse.equinox.p2.touchpoint.eclipse.query that implement IQuery
`class` `OSGiBundleQuery` A query matching every `IInstallableUnit` that describes an OSGi bundle.

Uses of IQuery in org.eclipse.equinox.p2.ui

Methods in org.eclipse.equinox.p2.ui that return IQuery
`IQuery<IInstallableUnit>` `Policy.getVisibleAvailableIUQuery()` Return a query that can be used to obtain the IInstallableUnits that should be presented to the user from the software repositories.
`IQuery<IInstallableUnit>` `Policy.getVisibleInstalledIUQuery()` Return a query that can be used to obtain the IInstallableUnits in the profile that should be presented to the user.

Methods in org.eclipse.equinox.p2.ui with parameters of type IQuery
`void` `Policy.setVisibleAvailableIUQuery(IQuery<IInstallableUnit> query)` Set the query that can be used to obtain the IInstallableUnits that should be presented to the user.
`void` `Policy.setVisibleInstalledIUQuery(IQuery<IInstallableUnit> query)` Set the query that can be used to obtain the IInstallableUnits in the profile that should be presented to the user.

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.