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


Java IHAListener.transitionToActive方法代码示例

本文整理汇总了Java中net.floodlightcontroller.core.IHAListener.transitionToActive方法的典型用法代码示例。如果您正苦于以下问题:Java IHAListener.transitionToActive方法的具体用法?Java IHAListener.transitionToActive怎么用?Java IHAListener.transitionToActive使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.floodlightcontroller.core.IHAListener的用法示例。


在下文中一共展示了IHAListener.transitionToActive方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testSetRoleOthercases

import net.floodlightcontroller.core.IHAListener; //导入方法依赖的package包/类
/** Test other setRole cases: re-setting role to the current role,
 * setting role to equal, etc.
 */
@Test
public void testSetRoleOthercases() throws Exception {
	doSetUp(HARole.STANDBY);

    // Create and add the HA listener
    IHAListener listener = createMock(IHAListener.class);
    expect(listener.getName()).andReturn("foo").anyTimes();
    setupListenerOrdering(listener);
    replay(listener);
    controller.addHAListener(listener);

    // Set role to slave again. Nothing should happen
    controller.setRole(HARole.STANDBY, "FooBar");
    controller.processUpdateQueueForTesting();
    verify(listener);

    reset(listener);
    expect(listener.getName()).andReturn("foo").anyTimes();
    listener.transitionToActive();
    expectLastCall().once();
    replay(listener);
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:26,代码来源:ControllerTest.java

示例2: transitionToActive

import net.floodlightcontroller.core.IHAListener; //导入方法依赖的package包/类
/**
 * Dispatches a new role change notification
 * @param oldRole
 * @param newRole
 */
public void transitionToActive() {
    IUpdate update = new IUpdate() {
        @Override
        public void dispatch() {
            for (IHAListener rl : haListeners.getOrderedListeners()) {
                rl.transitionToActive();
            }
        }
    };
    addUpdateToQueue(update);
}
 
开发者ID:telstra,项目名称:open-kilda,代码行数:17,代码来源:MockFloodlightProvider.java

示例3: dispatch

import net.floodlightcontroller.core.IHAListener; //导入方法依赖的package包/类
@Override
public void dispatch() {
    if (log.isDebugEnabled()) {
        log.debug("Dispatching HA Role update newRole = {}",
                  newRole);
    }
    for (IHAListener listener : controller.haListeners.getOrderedListeners()) {
        if (log.isTraceEnabled()) {
            log.trace("Calling HAListener {} with transitionTo{}",
                      listener.getName(), newRole);
        }
        switch(newRole) {
            case ACTIVE:
                listener.transitionToActive();
                break;
            case STANDBY:
                listener.transitionToStandby();
                break;
        }
   }

   controller.setNotifiedRole(newRole);

   if(newRole == HARole.STANDBY) {
       String reason = String.format("Received role request to "
               + "transition from ACTIVE to STANDBY (reason: %s)",
               getRoleInfo().getRoleChangeDescription());
       shutdownService.terminate(reason, 0);
   }
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:31,代码来源:RoleManager.java

示例4: testSetRole

import net.floodlightcontroller.core.IHAListener; //导入方法依赖的package包/类
/**
 * Start as SLAVE then set role to MASTER
 * Tests normal role change transition. Check that connected channels
 * receive a setRole request
 */
@Test
public void testSetRole() throws Exception {
	doSetUp(HARole.STANDBY);
    RoleInfo info = controller.getRoleInfo();
    assertEquals(HARole.STANDBY, info.getRole());
    assertEquals(HARole.STANDBY, controller.getRole());


    OFSwitchHandshakeHandler h = createMock(OFSwitchHandshakeHandler.class);

    // Reassert the role.
    reset(h);
    h.sendRoleRequestIfNotPending(OFControllerRole.ROLE_SLAVE);
    replay(h);
    controller.reassertRole(h, HARole.STANDBY);
    verify(h);

    // reassert a different role: no-op
    reset(h);
    replay(h);
    controller.reassertRole(h, HARole.ACTIVE);
    verify(h);

    IHAListener listener = createMock(IHAListener.class);
    expect(listener.getName()).andReturn("foo").anyTimes();
    setupListenerOrdering(listener);
    listener.transitionToActive();
    expectLastCall().once();
    replay(listener);
    controller.addHAListener(listener);
    controller.setRole(HARole.ACTIVE, "FooBar");
    controller.processUpdateQueueForTesting();
    verify(listener);
    info = controller.getRoleInfo();
    assertEquals(HARole.ACTIVE, info.getRole());
    assertEquals("FooBar", info.getRoleChangeDescription());
    assertEquals(HARole.ACTIVE, controller.getRole());
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:44,代码来源:ControllerTest.java

示例5: dispatch

import net.floodlightcontroller.core.IHAListener; //导入方法依赖的package包/类
@Override
public void dispatch() {
    if (log.isDebugEnabled()) {
        log.debug("Dispatching HA Role update newRole = {}",
                  newRole);
    }
    for (IHAListener listener : controller.haListeners.getOrderedListeners()) {
        if (log.isTraceEnabled()) {
            log.trace("Calling HAListener {} with transitionTo{}",
                      listener.getName(), newRole);
        }
        switch(newRole) {
            case ACTIVE:
                listener.transitionToActive();
                break;
            case STANDBY:
                listener.transitionToStandby();
            case EQUAL:
                listener.transitionToEQUAL();
                break;
        }
   }

   controller.setNotifiedRole(newRole);

   if(newRole == HARole.STANDBY) {
       String reason = String.format("Received role request to "
               + "transition from ACTIVE to STANDBY (reason: %s)",
               getRoleInfo().getRoleChangeDescription());
       shutdownService.terminate(reason, 0);
   }
}
 
开发者ID:hksoni,项目名称:SDN-Multicast,代码行数:33,代码来源:RoleManager.java


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