本文整理汇总了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);
}
示例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;
}
示例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
}
示例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);
}
示例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);
}
示例6: addCompletionListener
import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public void addCompletionListener(IControllerCompletionListener listener) {
completionListeners.add(listener);
}
示例7: removeCompletionListener
import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public void removeCompletionListener(IControllerCompletionListener listener) {
completionListeners.remove(listener);
}
示例8: addCompletionListener
import net.floodlightcontroller.core.IControllerCompletionListener; //导入依赖的package包/类
@Override
public synchronized void addCompletionListener(IControllerCompletionListener listener) {
completionListeners.add(listener);
}