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


Java ITopologyService.getL2DomainId方法代码示例

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


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

示例1: getDuplicateAttachmentPoints

import net.floodlightcontroller.topology.ITopologyService; //导入方法依赖的package包/类
/**
 * Get a list of duplicate attachment points, given a list of old attachment
 * points and one attachment point per L2 domain. Given a true attachment
 * point in the L2 domain, say trueAP, another attachment point in the
 * same L2 domain, say ap, is duplicate if:
 * 1. ap is inconsistent with trueAP, and
 * 2. active time of ap is after that of trueAP; and
 * 3. last seen time of ap is within the last INACTIVITY_INTERVAL
 * @param oldAPList
 * @param apMap
 * @return
 */
List<AttachmentPoint> getDuplicateAttachmentPoints(List<AttachmentPoint>oldAPList, Map<DatapathId, AttachmentPoint>apMap) {
    ITopologyService topology = deviceManager.topology;
    List<AttachmentPoint> dupAPs = new ArrayList<AttachmentPoint>();
    long timeThreshold = System.currentTimeMillis() - AttachmentPoint.INACTIVITY_INTERVAL;

    if (oldAPList == null || apMap == null)
        return dupAPs;

    for(AttachmentPoint ap : oldAPList) {
        DatapathId id = topology.getL2DomainId(ap.getSw());
        AttachmentPoint trueAP = apMap.get(id);

        if (trueAP == null) continue;
        boolean c = (topology.isConsistent(trueAP.getSw(), trueAP.getPort(),
                                          ap.getSw(), ap.getPort()));
        boolean active = (ap.getActiveSince().after(trueAP.getActiveSince()));
        boolean last = ap.getLastSeen().getTime() > timeThreshold;
        if (!c && active && last) {
            dupAPs.add(ap);
        }
    }

    return dupAPs;
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:37,代码来源:Device.java

示例2: retrieve

import net.floodlightcontroller.topology.ITopologyService; //导入方法依赖的package包/类
@Get("json")
public Map<String, List<String>> retrieve() {
    IOFSwitchService switchService =
            (IOFSwitchService) getContext().getAttributes().
                get(IOFSwitchService.class.getCanonicalName());
    ITopologyService topologyService =
            (ITopologyService) getContext().getAttributes().
                get(ITopologyService.class.getCanonicalName());

    Form form = getQuery();
    String queryType = form.getFirstValue("type", true);
    boolean openflowDomain = true;
    if (queryType != null && "l2".equals(queryType)) {
        openflowDomain = false;
    }

    Map<String, List<String>> switchClusterMap = new HashMap<String, List<String>>();
    for (DatapathId dpid: switchService.getAllSwitchDpids()) {
        DatapathId clusterDpid =
                (openflowDomain
                 ? topologyService.getOpenflowDomainId(dpid)
                 :topologyService.getL2DomainId(dpid));
        List<String> switchesInCluster = switchClusterMap.get(clusterDpid.toString());
        if (switchesInCluster != null) {
            switchesInCluster.add(dpid.toString());
        } else {
            List<String> l = new ArrayList<String>();
            l.add(dpid.toString());
            switchClusterMap.put(clusterDpid.toString(), l);
        }
    }
    return switchClusterMap;
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:34,代码来源:SwitchClustersResource.java

示例3: makeMockTopologyAllPortsAp

import net.floodlightcontroller.topology.ITopologyService; //导入方法依赖的package包/类
private ITopologyService makeMockTopologyAllPortsAp() {
	ITopologyService mockTopology = createMock(ITopologyService.class);
	mockTopology.isAttachmentPointPort(DatapathId.of(anyLong()), OFPort.of(anyShort()));
	expectLastCall().andReturn(true).anyTimes();
	mockTopology.getL2DomainId(DatapathId.of(anyLong()));
	expectLastCall().andReturn(DatapathId.of(1L)).anyTimes();
	mockTopology.isBroadcastDomainPort(DatapathId.of(anyLong()), OFPort.of(anyShort()));
	expectLastCall().andReturn(false).anyTimes();
	mockTopology.isConsistent(DatapathId.of(anyLong()), OFPort.of(anyShort()), DatapathId.of(anyLong()), OFPort.of(anyShort()));
	expectLastCall().andReturn(false).anyTimes();
	mockTopology.isInSameBroadcastDomain(DatapathId.of(anyLong()), OFPort.of(anyShort()), DatapathId.of(anyLong()), OFPort.of(anyShort()));
	expectLastCall().andReturn(false).anyTimes();
	return mockTopology;
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:15,代码来源:DeviceManagerImplTest.java

示例4: getDuplicateAttachmentPoints

import net.floodlightcontroller.topology.ITopologyService; //导入方法依赖的package包/类
/**
 * Get a list of duplicate attachment points, given a list of old attachment
 * points and one attachment point per L2 domain. Given a true attachment
 * point in the L2 domain, say trueAP, another attachment point in the
 * same L2 domain, say ap, is duplicate if:
 * 1. ap is inconsistent with trueAP, and
 * 2. active time of ap is after that of trueAP; and
 * 3. last seen time of ap is within the last INACTIVITY_INTERVAL
 * @param oldAPList
 * @param apMap
 * @return
 */
List<AttachmentPoint> getDuplicateAttachmentPoints(List<AttachmentPoint>oldAPList,
                                                   Map<Long, AttachmentPoint>apMap) {
    ITopologyService topology = deviceManager.topology;
    List<AttachmentPoint> dupAPs = new ArrayList<AttachmentPoint>();
    long timeThreshold = System.currentTimeMillis() -
            AttachmentPoint.INACTIVITY_INTERVAL;

    if (oldAPList == null || apMap == null)
        return dupAPs;

    for(AttachmentPoint ap: oldAPList) {
        long id = topology.getL2DomainId(ap.getSw());
        AttachmentPoint trueAP = apMap.get(id);

        if (trueAP == null) continue;
        boolean c = (topology.isConsistent(trueAP.getSw(), trueAP.getPort(),
                                          ap.getSw(), ap.getPort()));
        boolean active = (ap.getActiveSince() > trueAP.getActiveSince());
        boolean last = ap.getLastSeen() > timeThreshold;
        if (!c && active && last) {
            dupAPs.add(ap);
        }
    }

    return dupAPs;
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:39,代码来源:Device.java

示例5: retrieve

import net.floodlightcontroller.topology.ITopologyService; //导入方法依赖的package包/类
@Get("json")
public Map<String, List<String>> retrieve() {
    IFloodlightProviderService floodlightProvider =
            (IFloodlightProviderService)getContext().getAttributes().
                get(IFloodlightProviderService.class.getCanonicalName());
    ITopologyService topology =
            (ITopologyService)getContext().getAttributes().
                get(ITopologyService.class.getCanonicalName());

    Form form = getQuery();
    String queryType = form.getFirstValue("type", true);
    boolean openflowDomain = true;
    if (queryType != null && "l2".equals(queryType)) {
        openflowDomain = false;
    }

    Map<String, List<String>> switchClusterMap = new HashMap<String, List<String>>();
    for (Long dpid: floodlightProvider.getAllSwitchDpids()) {
        Long clusterDpid =
                (openflowDomain
                 ? topology.getOpenflowDomainId(dpid)
                 :topology.getL2DomainId(dpid));
        List<String> switchesInCluster = switchClusterMap.get(HexString.toHexString(clusterDpid));
        if (switchesInCluster != null) {
            switchesInCluster.add(HexString.toHexString(dpid));
        } else {
            List<String> l = new ArrayList<String>();
            l.add(HexString.toHexString(dpid));
            switchClusterMap.put(HexString.toHexString(clusterDpid), l);
        }
    }
    return switchClusterMap;
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:34,代码来源:SwitchClustersResource.java

示例6: makeMockTopologyAllPortsAp

import net.floodlightcontroller.topology.ITopologyService; //导入方法依赖的package包/类
private ITopologyService makeMockTopologyAllPortsAp() {
    ITopologyService mockTopology = createMock(ITopologyService.class);
    mockTopology.isAttachmentPointPort(anyLong(), anyShort());
    expectLastCall().andReturn(true).anyTimes();
    mockTopology.getL2DomainId(anyLong());
    expectLastCall().andReturn(1L).anyTimes();
    mockTopology.isBroadcastDomainPort(anyLong(), anyShort());
    expectLastCall().andReturn(false).anyTimes();
    mockTopology.isConsistent(anyLong(), anyShort(), anyLong(), anyShort());
    expectLastCall().andReturn(false).anyTimes();
    mockTopology.isInSameBroadcastDomain(anyLong(), anyShort(),
                                         anyLong(), anyShort());
    expectLastCall().andReturn(false).anyTimes();
    return mockTopology;
}
 
开发者ID:JianqingJiang,项目名称:QoS-floodlight,代码行数:16,代码来源:DeviceManagerImplTest.java


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