Hi Pedro
When I split off the RebalancePolicy I was thinking that when a RebalancePolicy needs to collaborate with a ConsistentHashFactory, they should do so via another cache manager-scoped component. But that doesn't really work (yet?), because ConsistentHashFactory can't access any components.
I think it would be better to extend ClusterTopologyManager.triggerRebalance (and ConsistentHashFactory.rebalance) to accept an arbitrary Object parameter. Then RebalancePolicy could use this parameter to pass extra information to the CHF, like your Mappings object, and then when ClusterTopologyManagerImpl asks for a balanced CH, the CHF will include the Mappings in the result CH. What do you think?
Cheers
Dan