| | |
| | | * CDDL HEADER END |
| | | * |
| | | * |
| | | * Copyright 2008 Sun Microsystems, Inc. |
| | | * Copyright 2008-2009 Sun Microsystems, Inc. |
| | | */ |
| | | package org.opends.server.api; |
| | | |
| | | import java.util.Collection; |
| | | import org.opends.server.types.ByteString; |
| | | import org.opends.server.types.DirectoryException; |
| | | import org.opends.server.types.IndexConfig; |
| | | |
| | | |
| | | /** |
| | |
| | | mayInvoke=false) |
| | | public abstract class ExtensibleMatchingRule extends MatchingRule |
| | | { |
| | | /** |
| | | * Returns a collection of extensible indexers associated with this |
| | | * matching rule. |
| | | * @param config The index configuration to be used by this |
| | | * matching rule. |
| | | * @return ExtensibleIndexer associated with this matching rule. |
| | | */ |
| | | public abstract Collection<ExtensibleIndexer> getIndexers( |
| | | IndexConfig config); |
| | | |
| | | //TODO: Index Implementation. |
| | | |
| | | |
| | | |
| | | /** |
| | | * Queries the index using factory of type T and returns |
| | | * a query of type T for the provided assertion value. |
| | | * @param <T> The type of IndexQueryFactory. |
| | | * @param assertionValue An assertion value which needs to be |
| | | * queried. |
| | | * @param factory An IndexQueryFactory which will be used for |
| | | * creating queries. |
| | | * @return T The generated index query. |
| | | * @throws DirectoryException If an error occurs while generating |
| | | * the query. |
| | | */ |
| | | public abstract <T> T createIndexQuery( |
| | | ByteString assertionValue, |
| | | IndexQueryFactory<T> factory) |
| | | throws DirectoryException; |
| | | } |