Current extant impl BasicRoleDescriptorResolver has hardcoded assumption of an EntityIdCriterion input. This is no longer true, with the new support for resolution based only on secondary indexes, and also the optional support for just applying predicates to the entire metadata collection.
New impl is preferable to refactoring the old one, as there are a bunch of protected methods that carry an entityID and don't make sense any more.
New impl should just pass through the input CriteriaSet unmolested.
The new impl itself should also support applying arbitrary predicates to the resolved role descriptors via an instance of CriterionPredicateRegistry<RoleDescriptor> and the same resolver support methods developed for metadata resolvers.