The PartitionView is a thing which also can calculate data, check the method 'isMigrating', Such data doesn't make sense when you are returning 'state' from initialize or reArrange. If you would return a PartitionView you are imho abusing a data-structure because it is there, not because it is the most logic data structure to use.