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


Java UpdateOperation类代码示例

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


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

示例1: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(DatapathId sw, OFPort port) {
	UpdateOperation operation;

	IOFSwitch iofSwitch = switchService.getSwitch(sw);
	if (iofSwitch == null) return;

	OFPortDesc ofp = iofSwitch.getPort(port);
	if (ofp == null) return;

	Set<OFPortState> srcPortState = ofp.getState();
	boolean portUp = !srcPortState.contains(OFPortState.STP_BLOCK);

	if (portUp) {
		operation = UpdateOperation.PORT_UP;
	} else {
		operation = UpdateOperation.PORT_DOWN;
	}

	updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:21,代码来源:LinkDiscoveryManager.java

示例2: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(DatapathId sw, OFPort port) {
	UpdateOperation operation;

	IOFSwitch iofSwitch = switchService.getSwitch(sw);
	if (iofSwitch == null) return;

	OFPortDesc ofp = iofSwitch.getPort(port);
	if (ofp == null) return;

	Set<OFPortState> srcPortState = ofp.getState();
	boolean portUp = !srcPortState.contains(OFPortState.STP_BLOCK);

	if (portUp) {
		operation = UpdateOperation.PORT_UP;
	} else {
		operation = UpdateOperation.PORT_DOWN;
	}
	
	updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:21,代码来源:LinkDiscoveryManager.java

示例3: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(long sw, short port) {
    UpdateOperation operation;

    IOFSwitch iofSwitch = floodlightProvider.getSwitch(sw);
    if (iofSwitch == null) return;

    OFPhysicalPort ofp = iofSwitch.getPort(port).toOFPhysicalPort();
    if (ofp == null) return;

    int srcPortState = ofp.getState();
    boolean portUp = ((srcPortState & OFPortState.OFPPS_STP_MASK.getValue())
                           != OFPortState.OFPPS_STP_BLOCK.getValue());

    if (portUp)
        operation = UpdateOperation.PORT_UP;
    else
        operation = UpdateOperation.PORT_DOWN;

    updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:21,代码来源:LinkDiscoveryManager.java

示例4: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(long sw, short port) {
    UpdateOperation operation;

    IOFSwitch iofSwitch = floodlightProvider.getSwitches().get(sw);
    if (iofSwitch == null) return;

    OFPhysicalPort ofp = iofSwitch.getPort(port);
    if (ofp == null) return;

    int srcPortState = ofp.getState();
    boolean portUp = ((srcPortState &
            OFPortState.OFPPS_STP_MASK.getValue()) !=
            OFPortState.OFPPS_STP_BLOCK.getValue());

    if (portUp) operation = UpdateOperation.PORT_UP;
    else operation = UpdateOperation.PORT_DOWN;

    updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:vishalshubham,项目名称:Multipath-Hedera-system-in-Floodlight-controller,代码行数:20,代码来源:LinkDiscoveryManager.java

示例5: removedSwitch

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
/**
 * When a switch disconnects we remove any links from our map and notify.
 * @param The id of the switch
 */
@Override
public void removedSwitch(IOFSwitch iofSwitch) {
    // Update event history
    long sw = iofSwitch.getId();
    evHistTopoSwitch(iofSwitch, EvAction.SWITCH_DISCONNECTED, "None");
    List<Link> eraseList = new ArrayList<Link>();
    lock.writeLock().lock();
    try {
        if (switchLinks.containsKey(sw)) {
            if (log.isTraceEnabled()) {
                log.trace("Handle switchRemoved. Switch {}; removing links {}",
                          HexString.toHexString(sw), switchLinks.get(sw));
            }
            // add all tuples with an endpoint on this switch to erase list
            eraseList.addAll(switchLinks.get(sw));
            deleteLinks(eraseList, "Switch Removed");

            // Send a switch removed update
            LDUpdate update = new LDUpdate(sw, null, UpdateOperation.SWITCH_REMOVED);
            updates.add(update);
        }
    } finally {
        lock.writeLock().unlock();
    }
}
 
开发者ID:vishalshubham,项目名称:Multipath-Hedera-system-in-Floodlight-controller,代码行数:30,代码来源:LinkDiscoveryManager.java

示例6: topologyChanged

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
@Override
public void topologyChanged(List<LDUpdate> linkUpdates) {
	// TODO Auto-generated method stub
	if(!linkUpdates.isEmpty()){
		Iterator<LDUpdate> update = linkUpdates.iterator();
		while(update.hasNext()){
			LDUpdate key = update.next();
			UpdateOperation operation = key.getOperation();
			if(operation == UpdateOperation.LINK_REMOVED && SpanTreeRecovery ==false){
				SpanTreeRecovery =true;
				//massivefailurerecoveryservice.startmassiverecovery();
			}
				
				//this.link_failure_handle(key);
		}
	}

}
 
开发者ID:pixuan,项目名称:floodlight,代码行数:19,代码来源:failure_detection.java

示例7: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(long sw, short port) {
    UpdateOperation operation;

    IOFSwitch iofSwitch = floodlightProvider.getSwitch(sw);
    if (iofSwitch == null) return;

    OFPhysicalPort ofp = iofSwitch.getPort(port).toOFPhysicalPort();
    if (ofp == null) return;

    int srcPortState = ofp.getState();
    boolean portUp = ((srcPortState & OFPortState.OFPPS_STP_MASK.getValue())
                           != OFPortState.OFPPS_STP_BLOCK.getValue());

    if (portUp)
        operation = UpdateOperation.PORT_UP;
    else
        operation = UpdateOperation.PORT_DOWN;

    log.info("generateSwitchPortStatusUpdate");
    updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:daniel666,项目名称:multicastSDN,代码行数:22,代码来源:LinkDiscoveryManager.java

示例8: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(long sw, short port) {
    UpdateOperation operation;

    IOFSwitch iofSwitch = floodlightProvider.getSwitches().get(sw);
    if (iofSwitch == null) return;

    OFPhysicalPort ofp = iofSwitch.getPort(port);
    if (ofp == null) return;

    int srcPortState = ofp.getState();
    boolean portUp = ((srcPortState & OFPortState.OFPPS_STP_MASK.getValue())
                           != OFPortState.OFPPS_STP_BLOCK.getValue());

    if (portUp)
        operation = UpdateOperation.PORT_UP;
    else
        operation = UpdateOperation.PORT_DOWN;

    updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:dana-i2cat,项目名称:floodlight-nfv,代码行数:21,代码来源:LinkDiscoveryManager.java

示例9: generateSwitchPortStatusUpdate

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void generateSwitchPortStatusUpdate(long sw, short port) {
    UpdateOperation operation;

    IOFSwitch iofSwitch = floodlightProvider.getSwitches().get(sw);
    if (iofSwitch == null) return;

    OFPhysicalPort ofp = iofSwitch.getPort(port);
    if (ofp == null) return;

    int srcPortState = ofp.getState();
    boolean portUp = ((srcPortState & OFPortState.OFPPS_STP_MASK.getValue()) != OFPortState.OFPPS_STP_BLOCK.getValue());

    if (portUp)
        operation = UpdateOperation.PORT_UP;
    else
        operation = UpdateOperation.PORT_DOWN;

    updates.add(new LDUpdate(sw, port, operation));
}
 
开发者ID:wallnerryan,项目名称:FL_HAND,代码行数:20,代码来源:LinkDiscoveryManager.java

示例10: getUpdateOperation

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
protected UpdateOperation getUpdateOperation(OFPortState srcPortState, OFPortState dstPortState) {
	boolean added = ((srcPortState != OFPortState.STP_BLOCK) && (dstPortState != OFPortState.STP_BLOCK));

	if (added) {
		return UpdateOperation.LINK_UPDATED;
	} else {
		return UpdateOperation.LINK_REMOVED;
	}
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:10,代码来源:LinkDiscoveryManager.java

示例11: handlePortDown

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
private void handlePortDown(DatapathId switchId, OFPort portNumber) {
	NodePortTuple npt = new NodePortTuple(switchId, portNumber);
	deleteLinksOnPort(npt, "Port Status Changed");
	LDUpdate update = new LDUpdate(switchId, portNumber,
			UpdateOperation.PORT_DOWN);
	updates.add(update);
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:8,代码来源:LinkDiscoveryManager.java

示例12: switchRemoved

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
@Override
public void switchRemoved(DatapathId sw) {
	List<Link> eraseList = new ArrayList<Link>();
	lock.writeLock().lock();
	try {
		if (switchLinks.containsKey(sw)) {
			if (log.isTraceEnabled()) {
				log.trace("Handle switchRemoved. Switch {}; removing links {}", sw.toString(), switchLinks.get(sw));
			}

			List<LDUpdate> updateList = new ArrayList<LDUpdate>();
			updateList.add(new LDUpdate(sw, SwitchType.BASIC_SWITCH, UpdateOperation.SWITCH_REMOVED));
			// add all tuples with an endpoint on this switch to erase list
			eraseList.addAll(switchLinks.get(sw));

			// Sending the updateList, will ensure the updates in this
			// list will be added at the end of all the link updates.
			// Thus, it is not necessary to explicitly add these updates
			// to the queue.
			deleteLinks(eraseList, "Switch Removed", updateList);
		} else {
			// Switch does not have any links.
			updates.add(new LDUpdate(sw, SwitchType.BASIC_SWITCH, UpdateOperation.SWITCH_REMOVED));
		}
	} finally {
		lock.writeLock().unlock();
	}

}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:30,代码来源:LinkDiscoveryManager.java

示例13: switchActivated

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
@Override
public void switchActivated(DatapathId switchId) {
	IOFSwitch sw = switchService.getSwitch(switchId);
	if (sw == null)       //fix dereference violation in case race conditions
		return;
	if (sw.getEnabledPortNumbers() != null) {
		for (OFPort p : sw.getEnabledPortNumbers()) {
			processNewPort(sw.getId(), p);
		}
	}
	LDUpdate update = new LDUpdate(sw.getId(), SwitchType.BASIC_SWITCH, UpdateOperation.SWITCH_UPDATED);
	updates.add(update);
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:14,代码来源:LinkDiscoveryManager.java

示例14: switchRemoved

import net.floodlightcontroller.linkdiscovery.ILinkDiscovery.UpdateOperation; //导入依赖的package包/类
@Override
public void switchRemoved(DatapathId sw) {
       List<Link> eraseList = new ArrayList<Link>();
       lock.writeLock().lock();
       try {
           if (switchLinks.containsKey(sw)) {
               if (log.isTraceEnabled()) {
                   log.trace("Handle switchRemoved. Switch {}; removing links {}", sw.toString(), switchLinks.get(sw));
               }

               List<LDUpdate> updateList = new ArrayList<LDUpdate>();
               updateList.add(new LDUpdate(sw, SwitchType.BASIC_SWITCH, UpdateOperation.SWITCH_REMOVED));
               // add all tuples with an endpoint on this switch to erase list
               eraseList.addAll(switchLinks.get(sw));

               // Sending the updateList, will ensure the updates in this
               // list will be added at the end of all the link updates.
               // Thus, it is not necessary to explicitly add these updates
               // to the queue.
               deleteLinks(eraseList, "Switch Removed", updateList);
           } else {
               // Switch does not have any links.
               updates.add(new LDUpdate(sw, SwitchType.BASIC_SWITCH, UpdateOperation.SWITCH_REMOVED));
           }
       } finally {
           lock.writeLock().unlock();
       }

   }
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:30,代码来源:LinkDiscoveryManager.java


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