本文整理匯總了Golang中github.com/cloudfoundry-incubator/lattice/ltc/route_helpers.Routes類的典型用法代碼示例。如果您正苦於以下問題:Golang Routes類的具體用法?Golang Routes怎麽用?Golang Routes使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Routes類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: buildRoutes
func (appRunner *appRunner) buildRoutes(params CreateAppParams, primaryPort uint16) route_helpers.Routes {
var routes route_helpers.Routes
var appRoutes route_helpers.AppRoutes
if params.NoRoutes {
appRoutes = route_helpers.AppRoutes{}
} else if len(params.RouteOverrides) > 0 {
routeMap := make(map[uint16][]string)
for _, override := range params.RouteOverrides {
routeMap[override.Port] = append(routeMap[override.Port], fmt.Sprintf("%s.%s", override.HostnamePrefix, appRunner.systemDomain))
}
for port, hostnames := range routeMap {
appRoutes = append(appRoutes, route_helpers.AppRoute{
Hostnames: hostnames,
Port: port,
})
}
} else {
appRoutes = appRunner.buildDefaultRoutingInfo(params.Name, params.ExposedPorts, primaryPort)
}
var tcpRoutes route_helpers.TcpRoutes
if !params.NoRoutes && len(params.TcpRoutes) > 0 {
for _, tcpRoute := range params.TcpRoutes {
tcpRoutes = append(tcpRoutes, route_helpers.TcpRoute{
ExternalPort: tcpRoute.ExternalPort,
Port: tcpRoute.Port,
})
}
routes.TcpRoutes = tcpRoutes
}
routes.AppRoutes = appRoutes
return routes
}
示例2: buildRoutes
func (appRunner *appRunner) buildRoutes(noRoutes bool, routeOverrides RouteOverrides, tcpRoutes TcpRoutes) route_helpers.Routes {
var routes route_helpers.Routes
var appRoutes route_helpers.AppRoutes
if noRoutes {
appRoutes = route_helpers.AppRoutes{}
} else if len(routeOverrides) > 0 {
routeMap := make(map[uint16][]string)
for _, override := range routeOverrides {
routeMap[override.Port] = append(routeMap[override.Port], fmt.Sprintf("%s.%s", override.HostnamePrefix, appRunner.systemDomain))
}
for port, hostnames := range routeMap {
appRoutes = append(appRoutes, route_helpers.AppRoute{
Hostnames: hostnames,
Port: port,
})
}
}
var appTcpRoutes route_helpers.TcpRoutes
if !noRoutes && len(tcpRoutes) > 0 {
for _, tcpRoute := range tcpRoutes {
appTcpRoutes = append(appTcpRoutes, route_helpers.TcpRoute{
ExternalPort: tcpRoute.ExternalPort,
Port: tcpRoute.Port,
})
}
routes.TcpRoutes = appTcpRoutes
}
routes.AppRoutes = appRoutes
return routes
}
示例3:
It("returns map of ports to slice of hostnames", func() {
expectedHostnamesByPort := map[uint16][]string{
11111: []string{"foo1.example.com", "bar1.examaple.com"},
22222: []string{"foo2.example.com", "bar2.examaple.com"},
33333: []string{"foo3.example.com", "bar3.examaple.com"},
}
Expect(appRoutes.HostnamesByPort()).To(Equal(expectedHostnamesByPort))
})
})
Describe("Routes", func() {
var (
routes route_helpers.Routes
tcpRoute1, tcpRoute2 route_helpers.TcpRoute
diegoSSHRoute *route_helpers.DiegoSSHRoute
)
BeforeEach(func() {
tcpRoute1 = route_helpers.TcpRoute{
ExternalPort: 50000,
Port: 5222,
}
tcpRoute2 = route_helpers.TcpRoute{
ExternalPort: 51000,
Port: 5223,
}
diegoSSHRoute = &route_helpers.DiegoSSHRoute{
Port: 2222,
PrivateKey: "ssshhhhh",