The logic whether a given entity should be considered in the getEntities method is now inside
so-called BBPredicates ("so-called" because I named them so :-P).
On the first glance this appears to be more code for exactly the same effect,
but it eliminates the duplicate content in both methods.
It also opens up further flexibility to use that method.