当前位置: 首页>>代码示例>>Java>>正文


Java EventType类代码示例

本文整理汇总了Java中org.apache.zookeeper.recipes.leader.LeaderElectionSupport.EventType的典型用法代码示例。如果您正苦于以下问题:Java EventType类的具体用法?Java EventType怎么用?Java EventType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


EventType类属于org.apache.zookeeper.recipes.leader.LeaderElectionSupport包,在下文中一共展示了EventType类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testReadyOffer

import org.apache.zookeeper.recipes.leader.LeaderElectionSupport.EventType; //导入依赖的package包/类
@Test
public void testReadyOffer() throws Exception {
    final ArrayList<EventType> events = new ArrayList<EventType>();
    final CountDownLatch electedComplete = new CountDownLatch(1);

    final LeaderElectionSupport electionSupport1 = createLeaderElectionSupport();
    electionSupport1.start();
    LeaderElectionSupport electionSupport2 = createLeaderElectionSupport();
    LeaderElectionAware listener = new LeaderElectionAware() {
        boolean stoppedElectedNode = false;
        @Override
        public void onElectionEvent(EventType eventType) {
            events.add(eventType);
            if (!stoppedElectedNode
                    && eventType == EventType.DETERMINE_COMPLETE) {
                stoppedElectedNode = true;
                try {
                    // stopping the ELECTED node, so re-election will happen.
                    electionSupport1.stop();
                } catch (Exception e) {
                    logger.error("Unexpected error", e);
                }
            }
            if (eventType == EventType.ELECTED_COMPLETE) {
                electedComplete.countDown();
            }
        }
    };
    electionSupport2.addListener(listener);
    electionSupport2.start();
    // waiting for re-election.
    electedComplete.await(CONNECTION_TIMEOUT / 3, TimeUnit.MILLISECONDS);

    final ArrayList<EventType> expectedevents = new ArrayList<EventType>();
    expectedevents.add(EventType.START);
    expectedevents.add(EventType.OFFER_START);
    expectedevents.add(EventType.OFFER_COMPLETE);
    expectedevents.add(EventType.DETERMINE_START);
    expectedevents.add(EventType.DETERMINE_COMPLETE);
    expectedevents.add(EventType.DETERMINE_START);
    expectedevents.add(EventType.DETERMINE_COMPLETE);
    expectedevents.add(EventType.ELECTED_START);
    expectedevents.add(EventType.ELECTED_COMPLETE);
    Assert.assertEquals("Events has failed to executed in the order",
            expectedevents, events);
    electionSupport2.stop();
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:48,代码来源:LeaderElectionSupportTest.java

示例2: onElectionEvent

import org.apache.zookeeper.recipes.leader.LeaderElectionSupport.EventType; //导入依赖的package包/类
/**
 * Called during each state transition. Current, low level events are provided
 * at the beginning and end of each state. For instance, START may be followed
 * by OFFER_START, OFFER_COMPLETE, DETERMINE_START, DETERMINE_COMPLETE, and so
 * on.
 * 
 * @param eventType
 */
public void onElectionEvent(EventType eventType);
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:10,代码来源:LeaderElectionAware.java


注:本文中的org.apache.zookeeper.recipes.leader.LeaderElectionSupport.EventType类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。