fix(ui): учитывать область в стоимости соседа OSPF
This commit is contained in:
1 parent
2199950681
commit
b1080b0a05
6 files changed
+54
-9
No files matched your search
@@ -0,0 +1,11 @@
|
||||
type InterfaceCost = { serverId: number; interface: string; areaId: string; cost: number }
|
||||
export const ospfCostKey = (serverId: number, iface: string, areaId: string) => JSON.stringify([serverId, iface, areaId])
|
||||
export function buildOspfCostIndex(interfaces: InterfaceCost[]): Map<string, number | null> {
|
||||
const result = new Map<string, number | null>()
|
||||
for (const iface of interfaces) {
|
||||
const key = ospfCostKey(iface.serverId, iface.interface, iface.areaId)
|
||||
const cost = Number.isInteger(iface.cost) && iface.cost >= 1 && iface.cost <= 65535 ? iface.cost : null
|
||||
result.set(key, result.has(key) && result.get(key) !== cost ? null : cost)
|
||||
}
|
||||
return result
|
||||
}
|
||||
Reference in new issue
Block a user