public Set<String> getSearchFields() throws UnsupportedOperationException {
        return provider.getSearchFields();
    }
Returns the set of fields that can be used for searching for users. Each field
returned must support wild-card and keyword searching. For example, an
implementation might send back the set {"Username", "Name", "Email"}. Any of
those three fields can then be used in a search with the
{@link #findUsers(Set,String)} method.<p>

This method should throw an UnsupportedOperationException if this
operation is not supported by the backend user store.

@return the valid search fields.
@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