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


Java IControllerCompletionListener类代码示例

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


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

示例1: dispatchMessage

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
public void dispatchMessage(IOFSwitch sw, OFMessage msg, FloodlightContext bc) {
      List<IOFMessageListener> theListeners = listeners.get(msg.getType()).getOrderedListeners();
      if (theListeners != null) {
          Command result = Command.CONTINUE;
          Iterator<IOFMessageListener> it = theListeners.iterator();
          if (OFType.PACKET_IN.equals(msg.getType())) {
              OFPacketIn pi = (OFPacketIn)msg;
              Ethernet eth = new Ethernet();
              eth.deserialize(pi.getData(), 0, pi.getData().length);
              IFloodlightProviderService.bcStore.put(bc,
                      IFloodlightProviderService.CONTEXT_PI_PAYLOAD,
                      eth);
          }
          while (it.hasNext() && !Command.STOP.equals(result)) {
              result = it.next().receive(sw, msg, bc);
          }
      }
// paag
      for (IControllerCompletionListener listener:completionListeners)
      	listener.onMessageConsumed(sw, msg, bc);
  }
 
开发者ID:telstra,项目名称:open-kilda,代码行数:22,代码来源:MockFloodlightProvider.java

示例2: MockFloodlightProvider

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
/**
 *
 */
public MockFloodlightProvider(boolean useAsyncUpdates) {
    listeners = new ConcurrentHashMap<OFType, ListenerDispatcher<OFType,
                               IOFMessageListener>>();
    haListeners =
            new ListenerDispatcher<HAListenerTypeMarker, IHAListener>();
    completionListeners = 
    		new ConcurrentLinkedQueue<IControllerCompletionListener>();
    role = null;
    this.useAsyncUpdates = useAsyncUpdates;
}
 
开发者ID:telstra,项目名称:open-kilda,代码行数:14,代码来源:MockFloodlightProvider.java

示例3: removeCompletionListener

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public synchronized void removeCompletionListener(IControllerCompletionListener listener) {
	String listenerName = listener.getName();
	if (completionListeners.remove(listener)) {
		log.debug("Removing completion listener {}" , listenerName);
	} else {
		log.warn("Trying to remove unknown completion listener {}" , listenerName);
	}
	listenerName=null; // help gc
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:11,代码来源:Controller.java

示例4: init

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
/**
 * Initialize internal data structures
 */
public void init(Map<String, String> configParams) throws FloodlightModuleException {

    this.moduleLoaderState = ModuleLoaderState.INIT;

    // These data structures are initialized here because other
    // module's startUp() might be called before ours        
    this.messageListeners = new ConcurrentHashMap<OFType, ListenerDispatcher<OFType, IOFMessageListener>>();
    this.haListeners = new ListenerDispatcher<HAListenerTypeMarker, IHAListener>();
    this.controllerNodeIPsCache = new HashMap<String, String>();
    this.updates = new LinkedBlockingQueue<IUpdate>();
    this.providerMap = new HashMap<String, List<IInfoProvider>>();
    this.completionListeners = new ConcurrentLinkedQueue<IControllerCompletionListener>();
    
    setConfigParams(configParams);

    HARole initialRole = getInitialRole(configParams);
    this.notifiedRole = initialRole;
    this.shutdownService = new ShutdownServiceImpl();

    this.roleManager = new RoleManager(this, this.shutdownService,
                                       this.notifiedRole,
                                       INITIAL_ROLE_CHANGE_DESCRIPTION);
    this.timer = new HashedWheelTimer();

    // Switch Service Startup
    this.switchService.registerLogicalOFMessageCategory(LogicalOFMessageCategory.MAIN);
    this.switchService.addOFSwitchListener(new NotificationSwitchListener());

    this.counters = new ControllerCounters(debugCounterService);
 }
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:34,代码来源:Controller.java

示例5: init

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
/**
 * Initialize internal data structures
 */
public void init(Map<String, String> configParams) throws FloodlightModuleException {

    this.moduleLoaderState = ModuleLoaderState.INIT;

    // These data structures are initialized here because other
    // module's startUp() might be called before ours
    this.messageListeners = new ConcurrentHashMap<OFType, ListenerDispatcher<OFType, IOFMessageListener>>();
    this.haListeners = new ListenerDispatcher<HAListenerTypeMarker, IHAListener>();
    this.controllerNodeIPsCache = new HashMap<String, String>();
    this.updates = new LinkedBlockingQueue<IUpdate>();
    this.providerMap = new HashMap<String, List<IInfoProvider>>();
    this.completionListeners = new ConcurrentLinkedQueue<IControllerCompletionListener>();

    setConfigParams(configParams);

    HARole initialRole = getInitialRole(configParams);
    this.notifiedRole = initialRole;
    this.shutdownService = new ShutdownServiceImpl();

    this.roleManager = new RoleManager(this, this.shutdownService,
                                       this.notifiedRole,
                                       INITIAL_ROLE_CHANGE_DESCRIPTION);
    this.timer = new HashedWheelTimer();

    // Switch Service Startup
    this.switchService.registerLogicalOFMessageCategory(LogicalOFMessageCategory.MAIN);
    this.switchService.addOFSwitchListener(new NotificationSwitchListener());

    this.counters = new ControllerCounters(debugCounterService);
 }
 
开发者ID:zhenshengcai,项目名称:floodlight-hardware,代码行数:34,代码来源:Controller.java

示例6: addCompletionListener

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public void addCompletionListener(IControllerCompletionListener listener) {
	completionListeners.add(listener);
}
 
开发者ID:telstra,项目名称:open-kilda,代码行数:5,代码来源:MockFloodlightProvider.java

示例7: removeCompletionListener

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public void removeCompletionListener(IControllerCompletionListener listener) {
	completionListeners.remove(listener);
}
 
开发者ID:telstra,项目名称:open-kilda,代码行数:5,代码来源:MockFloodlightProvider.java

示例8: addCompletionListener

import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public synchronized void addCompletionListener(IControllerCompletionListener listener) {
	completionListeners.add(listener);
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:5,代码来源:Controller.java


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