in pkg/virtualrouter/references.go [15:48]
func ExtractVirtualNodeReferences(vr *appmesh.VirtualRouter) []appmesh.VirtualNodeReference {
var vnRefs []appmesh.VirtualNodeReference
for _, route := range vr.Spec.Routes {
if route.GRPCRoute != nil {
for _, target := range route.GRPCRoute.Action.WeightedTargets {
if target.VirtualNodeRef != nil {
vnRefs = append(vnRefs, *target.VirtualNodeRef)
}
}
}
if route.HTTPRoute != nil {
for _, target := range route.HTTPRoute.Action.WeightedTargets {
if target.VirtualNodeRef != nil {
vnRefs = append(vnRefs, *target.VirtualNodeRef)
}
}
}
if route.HTTP2Route != nil {
for _, target := range route.HTTP2Route.Action.WeightedTargets {
if target.VirtualNodeRef != nil {
vnRefs = append(vnRefs, *target.VirtualNodeRef)
}
}
}
if route.TCPRoute != nil {
for _, target := range route.TCPRoute.Action.WeightedTargets {
if target.VirtualNodeRef != nil {
vnRefs = append(vnRefs, *target.VirtualNodeRef)
}
}
}
}
return vnRefs
}