1package org.bouncycastle.util;
2
3import java.util.Collection;
4
5/**
6 * A generic interface describing a simple store of objects.
7 *
8 * @param <T> the object type stored.
9 */
10public interface Store<T>
11{
12    /**
13     * Return a possibly empty collection of objects that match the criteria implemented
14     * in the passed in Selector.
15     *
16     * @param selector the selector defining the match criteria.
17     * @return a collection of matching objects, empty if none available.
18     * @throws StoreException if there is a failure during matching.
19     */
20    Collection<T> getMatches(Selector<T> selector)
21        throws StoreException;
22}
23