@Override
public void onIdealStateChange(List<IdealState> idealStates, NotificationContext changeContext) {
logger.info("START: Generic GenericClusterController.onIdealStateChange()");
ClusterEvent event = new ClusterEvent("idealStateChange");
event.addAttribute("helixmanager", changeContext.getManager());
event.addAttribute("changeContext", changeContext);
event.addAttribute("eventData", idealStates);
handleEvent(event);
if (changeContext.getType() != Type.FINALIZE) {
checkRebalancingTimer(changeContext.getManager(), idealStates);