jiajunwang commented on a change in pull request #851: Modify Helix generic
controller to include new stage for customized view aggregation
URL: https://github.com/apache/helix/pull/851#discussion_r396800481
##########
File path:
helix-core/src/main/java/org/apache/helix/manager/zk/CallbackHandler.java
##########
@@ -259,45 +266,52 @@ private void parseListenerProperties() {
Class listenerClass = null;
switch (_changeType) {
- case IDEAL_STATE:
- listenerClass = IdealStateChangeListener.class;
- break;
- case INSTANCE_CONFIG:
- if (_listener instanceof ConfigChangeListener) {
+ case IDEAL_STATE:
+ listenerClass = IdealStateChangeListener.class;
+ break;
+ case INSTANCE_CONFIG:
+ if (_listener instanceof ConfigChangeListener) {
+ listenerClass = ConfigChangeListener.class;
+ } else if (_listener instanceof InstanceConfigChangeListener) {
+ listenerClass = InstanceConfigChangeListener.class;
+ }
+ break;
+ case CLUSTER_CONFIG:
+ listenerClass = ClusterConfigChangeListener.class;
+ break;
+ case RESOURCE_CONFIG:
+ listenerClass = ResourceConfigChangeListener.class;
+ break;
+ case CUSTOMIZED_STATE_CONFIG:
+ listenerClass = CustomizedStateConfigChangeListener.class;
+ break;
+ case CONFIG:
listenerClass = ConfigChangeListener.class;
- } else if (_listener instanceof InstanceConfigChangeListener) {
- listenerClass = InstanceConfigChangeListener.class;
- }
- break;
- case CLUSTER_CONFIG:
- listenerClass = ClusterConfigChangeListener.class;
- break;
- case RESOURCE_CONFIG:
- listenerClass = ResourceConfigChangeListener.class;
- break;
- case CONFIG:
- listenerClass = ConfigChangeListener.class;
- break;
- case LIVE_INSTANCE:
- listenerClass = LiveInstanceChangeListener.class;
- break;
- case CURRENT_STATE:
- listenerClass = CurrentStateChangeListener.class;
- ;
- break;
- case MESSAGE:
- case MESSAGES_CONTROLLER:
- listenerClass = MessageListener.class;
- break;
- case EXTERNAL_VIEW:
- case TARGET_EXTERNAL_VIEW:
- listenerClass = ExternalViewChangeListener.class;
- break;
- case CUSTOMIZED_VIEW:
- listenerClass = CustomizedViewChangeListener.class;
- break;
- case CONTROLLER:
- listenerClass = ControllerChangeListener.class;
+ break;
+ case LIVE_INSTANCE:
+ listenerClass = LiveInstanceChangeListener.class;
+ break;
+ case CURRENT_STATE:
+ listenerClass = CurrentStateChangeListener.class;
+ break;
+ case CUSTOMIZED_STATE_ROOT:
+ listenerClass = CustomizedStateRootChangeListener.class;
Review comment:
This can also use the same listener class if you move the handling method to
CustomizedStateChangeListener.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]