本文整理汇总了Golang中github.com/osrg/gobgp/table.Path.GetAsPathLen方法的典型用法代码示例。如果您正苦于以下问题:Golang Path.GetAsPathLen方法的具体用法?Golang Path.GetAsPathLen怎么用?Golang Path.GetAsPathLen使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/osrg/gobgp/table.Path
的用法示例。
在下文中一共展示了Path.GetAsPathLen方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: evaluate
// compare AS_PATH length in the message's AS_PATH attribute with
// the one in condition.
func (c *AsPathLengthCondition) evaluate(path *table.Path) bool {
length := uint32(path.GetAsPathLen())
result := false
switch c.Operator {
case ATTRIBUTE_EQ:
result = c.Value == length
case ATTRIBUTE_GE:
result = c.Value <= length
case ATTRIBUTE_LE:
result = c.Value >= length
default:
return false
}
if result {
log.WithFields(log.Fields{
"Topic": "Policy",
"Condition": "aspath length",
"Reason": c.Operator,
}).Debug("condition matched")
}
return result
}