Interface MessageSearcher<Q,M extends net.morimekta.providence.PMessage<M,F>,F extends net.morimekta.providence.descriptor.PField>

  • Type Parameters:
    Q - Search query param, be it single string or struct or union with search parameters.
    M - PMessage that we search for.
    F - PField of M.
    All Superinterfaces:
    Searcher<Q,M>
    All Known Implementing Classes:
    PredicateFilterMessageStoreSearcher

    public interface MessageSearcher<Q,M extends net.morimekta.providence.PMessage<M,F>,F extends net.morimekta.providence.descriptor.PField>
    extends Searcher<Q,M>
    Interface for searching a store for a specific search S.
    • Method Detail

      • searchBuilders

        @Nonnull
        default <B extends net.morimekta.providence.PMessageBuilder<M,F>> java.util.List<B> searchBuilders​(@Nonnull
                                                                                                           Q query)
        Get a list of builders for the query input. Any modifications to the returned builders will not be reflected onto the store.
        Type Parameters:
        B - The builder type.
        Parameters:
        query - The key to look up.
        Returns:
        List of builders that matches query Q.
      • search

        @Nonnull
        java.util.List<M> search​(@Nonnull
                                 Q query)
        Look up a set of keys from the storage.
        Specified by:
        search in interface Searcher<Q,M extends net.morimekta.providence.PMessage<M,F>>
        Parameters:
        query - The search to query.
        Returns:
        List of all M that matches Query Q.