本文整理汇总了Java中org.apache.helix.NotificationContext.setType方法的典型用法代码示例。如果您正苦于以下问题:Java NotificationContext.setType方法的具体用法?Java NotificationContext.setType怎么用?Java NotificationContext.setType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.helix.NotificationContext
的用法示例。
在下文中一共展示了NotificationContext.setType方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: handleDataChange
import org.apache.helix.NotificationContext; //导入方法依赖的package包/类
@Override
public void handleDataChange(String dataPath, Object data) {
logger.debug("Data change callback: paths changed: " + dataPath);
try {
updateNotificationTime(System.nanoTime());
if (dataPath != null && dataPath.startsWith(_path)) {
NotificationContext changeContext = new NotificationContext(_manager);
changeContext.setType(NotificationContext.Type.CALLBACK);
changeContext.setPathChanged(dataPath);
changeContext.setChangeType(_changeType);
enqueueTask(changeContext);
}
} catch (Exception e) {
String msg = "exception in handling data-change. path: " + dataPath + ", listener: " + _listener;
ZKExceptionHandler.getInstance().handle(msg, e);
}
}
示例2: handleChildChange
import org.apache.helix.NotificationContext; //导入方法依赖的package包/类
@Override
public void handleChildChange(String parentPath, List<String> currentChilds) {
logger.debug("Data change callback: child changed, path: " + parentPath + ", current childs: "
+ currentChilds);
try {
updateNotificationTime(System.nanoTime());
if (parentPath != null && parentPath.startsWith(_path)) {
if (currentChilds == null && parentPath.equals(_path)) {
// _path has been removed, remove this listener
// removeListener will call handler.reset(), which in turn call invoke() on FINALIZE type
_manager.removeListener(_propertyKey, _listener);
} else {
NotificationContext changeContext = new NotificationContext(_manager);
changeContext.setType(NotificationContext.Type.CALLBACK);
changeContext.setPathChanged(parentPath);
changeContext.setChangeType(_changeType);
enqueueTask(changeContext);
}
}
} catch (Exception e) {
String msg = "exception in handling child-change. instance: " + _manager.getInstanceName()
+ ", parentPath: " + parentPath + ", listener: " + _listener;
ZKExceptionHandler.getInstance().handle(msg, e);
}
}
示例3: init
import org.apache.helix.NotificationContext; //导入方法依赖的package包/类
/**
* Invoke the listener so that it sets up the initial values from the zookeeper if any
* exists
*/
public void init() {
updateNotificationTime(System.nanoTime());
try {
NotificationContext changeContext = new NotificationContext(_manager);
changeContext.setType(NotificationContext.Type.INIT);
changeContext.setChangeType(_changeType);
enqueueTask(changeContext);
} catch (Exception e) {
String msg = "Exception while invoking init callback for listener:" + _listener;
ZKExceptionHandler.getInstance().handle(msg, e);
}
}
示例4: reset
import org.apache.helix.NotificationContext; //导入方法依赖的package包/类
/**
* Invoke the listener for the last time so that the listener could clean up resources
*/
public void reset() {
try {
NotificationContext changeContext = new NotificationContext(_manager);
changeContext.setType(NotificationContext.Type.FINALIZE);
changeContext.setChangeType(_changeType);
enqueueTask(changeContext);
} catch (Exception e) {
String msg = "Exception while resetting the listener:" + _listener;
ZKExceptionHandler.getInstance().handle(msg, e);
}
}
示例5: testParticipant
import org.apache.helix.NotificationContext; //导入方法依赖的package包/类
@Test()
public void testParticipant() throws Exception {
String className = getShortClassName();
LOG.info("RUN " + className + " at " + new Date(System.currentTimeMillis()));
final String clusterName = CLUSTER_PREFIX + "_" + className + "_" + "testParticipant";
String path = "/" + clusterName;
if (_gZkClient.exists(path)) {
_gZkClient.deleteRecursive(path);
}
TestHelper.setupEmptyCluster(_gZkClient, clusterName);
final String controllerName = "participant_0";
HelixManager manager =
new MockZKHelixManager(clusterName, controllerName, InstanceType.PARTICIPANT, _gZkClient);
GenericHelixController participant0 = new GenericHelixController();
List<HelixTimerTask> timerTasks = Collections.emptyList();
DistributedLeaderElection election =
new DistributedLeaderElection(manager, participant0, timerTasks);
NotificationContext context = new NotificationContext(manager);
context.setType(NotificationContext.Type.INIT);
election.onControllerChange(context);
path = PropertyPathBuilder.controllerLeader(clusterName);
ZNRecord leaderRecord = _gZkClient.<ZNRecord> readData(path, true);
AssertJUnit.assertNull(leaderRecord);
// AssertJUnit.assertNull(election.getController());
// AssertJUnit.assertNull(election.getLeader());
}