Interface IIndexProvider<T>

  • All Known Implementing Classes:
    CompoundQueryable, org.eclipse.equinox.internal.p2.metadata.index.IndexProvider

    public interface IIndexProvider<T>
    An index provider is typically an IQueryable.
    Since:
    2.0
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.Iterator<T> everything()
      Return the iterator that delivers all rows that the target query should consider.
      IIndex<T> getIndex​(java.lang.String memberName)
      Return an index optimized for producing candidates based on values for a memberName that denotes a member of the index type.
      java.lang.Object getManagedProperty​(java.lang.Object client, java.lang.String memberName, java.lang.Object key)
      Returns a property that this index manages on behalf of a client object.
    • Method Detail

      • getIndex

        IIndex<T> getIndex​(java.lang.String memberName)
        Return an index optimized for producing candidates based on values for a memberName that denotes a member of the index type.
        Parameters:
        memberName - A member of type T.
        Returns:
        An index or null if this provider does not support this index.
      • everything

        java.util.Iterator<T> everything()
        Return the iterator that delivers all rows that the target query should consider. This is used when no index can be found for any possible member.
        Returns:
        An iterator. Possibly empty but never null.
      • getManagedProperty

        java.lang.Object getManagedProperty​(java.lang.Object client,
                                            java.lang.String memberName,
                                            java.lang.Object key)
        Returns a property that this index manages on behalf of a client object. Examples of this is the properties that a profile manages for installable units.
        Parameters:
        client - The client for which the property is managed. Typically an IU.
        memberName - The name of the managed properties, i.e. "profileProperties"
        key - The property key
        Returns:
        The managed property value or null if no value could be found.