public Collection<User> findUsers(final Set<String> fields, final String query)
            throws UnsupportedOperationException
    {
        return provider.findUsers(fields, query);
    }
Searches for users based on a set of fields and a query string. The fields must
be taken from the values returned by {@link #getSearchFields()}. The query can
include wildcards. For example, a search on the field "Name" with a query of "Ma*"
might return user's with the name "Matt", "Martha" and "Madeline".<p>

This method throws an UnsupportedOperationException if this operation is
not supported by the user provider.

@param fields the fields to search on.
@param query the query string.
@return a Collection of users that match the search.
@throws UnsupportedOperationException if the provider does not
     support the operation (this is an optional operation).
xmppserver/src/main/java/org/jivesoftware/openfire/user/UserManager.java