本文整理匯總了Python中foam.geni.db.GeniDB.getLocationData方法的典型用法代碼示例。如果您正苦於以下問題:Python GeniDB.getLocationData方法的具體用法?Python GeniDB.getLocationData怎麽用?Python GeniDB.getLocationData使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類foam.geni.db.GeniDB
的用法示例。
在下文中一共展示了GeniDB.getLocationData方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: addAdDevice
# 需要導入模塊: from foam.geni.db import GeniDB [as 別名]
# 或者: from foam.geni.db.GeniDB import getLocationData [as 別名]
def addAdDevice (rspec, dpid, active=True):
switch_urn = generateSwitchComponentID(dpid)
od = ET.SubElement(rspec, "{%s}datapath" % (OFNSv3))
od.attrib["component_id"] = switch_urn
od.attrib["component_manager_id"] = getManagerID()
od.attrib["dpid"] = dpid
locdata = GeniDB.getLocationData(dpid, switch_urn)
if locdata:
ET.SubElement(od, "{%s}location" % (OFNSv3), country=locdata.country, latitude=locdata.lat, longitude=locdata.long)
attachments = TopoDB.getDPIDAttachments(dpid)
if active:
ports = FV.getDevicePorts(dpid)
for port in ports:
if (port.features == None):
p = ET.SubElement(od, "{%s}port" % (OFNSv3), num=str(port.num), name=port.name)
else:
p = ET.SubElement(od, "{%s}port" % (OFNSv3), num=str(port.num), name=port.name, features=port.features)
for info in attachments.setdefault(port.name, []):
a = ET.SubElement(p, "{%s}attachment" % (OFNSv3))
a.attrib["remote_component_id"] = info.remote_component_id
a.attrib["remote_port"] = info.remote_port
a.attrib["desc"] = info.desc