當前位置: 首頁>>代碼示例>>Golang>>正文


Golang route_helpers.Routes類代碼示例

本文整理匯總了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
}
開發者ID:edwardt,項目名稱:lattice,代碼行數:35,代碼來源:app_runner.go

示例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
}
開發者ID:hpcloud,項目名稱:lattice,代碼行數:33,代碼來源:app_runner.go

示例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",
開發者ID:davidwadden,項目名稱:lattice-release,代碼行數:31,代碼來源:route_helpers_test.go


注:本文中的github.com/cloudfoundry-incubator/lattice/ltc/route_helpers.Routes類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。