This patch is great. Thanks for going back and doing the cleanup.
This class should not be in filter package?
Probably hard to move it now? Its part of a public API? Could deprecate and replace w/ a more generic, non-filter specific class? Moving it should not be part of this patch. Its not so bad anyways having this filter package pollution since its in client facing code and clients need access to filter stuff...
Would think pollution:
Should be pulling in a non-pb class into an Interface like this. Can we encapsulate these Client conditions in a non-pb class?