gatewayapi

package
v0.4.0-rc.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2023 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TCPProtocol = "TCP"
	UDPProtocol = "UDP"

	L4Protocol = "L4"
	L7Protocol = "L7"
)
View Source
const (
	KindEnvoyProxy   = "EnvoyProxy"
	KindGateway      = "Gateway"
	KindGatewayClass = "GatewayClass"
	KindGRPCRoute    = "GRPCRoute"
	KindHTTPRoute    = "HTTPRoute"
	KindNamespace    = "Namespace"
	KindTLSRoute     = "TLSRoute"
	KindTCPRoute     = "TCPRoute"
	KindUDPRoute     = "UDPRoute"
	KindService      = "Service"
	KindSecret       = "Secret"

	// OwningGatewayNamespaceLabel is the owner reference label used for managed infra.
	// The value should be the namespace of the accepted Envoy Gateway.
	OwningGatewayNamespaceLabel = "gateway.envoyproxy.io/owning-gateway-namespace"

	// OwningGatewayNameLabel is the owner reference label used for managed infra.
	// The value should be the name of the accepted Envoy Gateway.
	OwningGatewayNameLabel = "gateway.envoyproxy.io/owning-gateway-name"
)

Variables

This section is empty.

Functions

func DowngradeBackendRef added in v0.3.0

func DowngradeBackendRef(old v1beta1.BackendRef) v1alpha2.BackendRef

func DowngradeRouteParentStatuses

func DowngradeRouteParentStatuses(routeParentStatuses []v1beta1.RouteParentStatus) []v1alpha2.RouteParentStatus

func FromNamespacesPtr

func FromNamespacesPtr(fromNamespaces v1beta1.FromNamespaces) *v1beta1.FromNamespaces

func GRPCMethodMatchTypeDerefOr added in v0.4.0

func GRPCMethodMatchTypeDerefOr(matchType *v1alpha2.GRPCMethodMatchType, defaultType v1alpha2.GRPCMethodMatchType) v1alpha2.GRPCMethodMatchType

func GatewayAddressTypePtr

func GatewayAddressTypePtr(addr v1beta1.AddressType) *v1beta1.AddressType

func GatewayOwnerLabels

func GatewayOwnerLabels(namespace, name string) map[string]string

GatewayOwnerLabels returns the Gateway Owner labels using the provided namespace and name as the values.

func GroupDerefOr

func GroupDerefOr(group *v1beta1.Group, defaultGroup string) string

func GroupPtr

func GroupPtr(name string) *v1beta1.Group

func GroupPtrV1Alpha2

func GroupPtrV1Alpha2(group string) *v1alpha2.Group

func HasReadyListener

func HasReadyListener(listeners []*ListenerContext) bool

HasReadyListener returns true if at least one Listener in the provided list has a condition of "Ready: true", and false otherwise.

func HeaderMatchTypeDerefOr

func HeaderMatchTypeDerefOr(matchType *v1beta1.HeaderMatchType, defaultType v1beta1.HeaderMatchType) v1beta1.HeaderMatchType

func Int32Ptr

func Int32Ptr(val int32) *int32

func IsAuthnHTTPFilter added in v0.3.0

func IsAuthnHTTPFilter(filter *v1beta1.HTTPRouteFilter) bool

IsAuthnHTTPFilter returns true if the provided filter is an AuthenticationFilter.

func IsRateLimitHTTPFilter added in v0.3.0

func IsRateLimitHTTPFilter(filter *v1beta1.HTTPRouteFilter) bool

IsRateLimitHTTPFilter returns true if the provided filter is a RateLimitFilter.

func IsRefToGateway

func IsRefToGateway(parentRef v1beta1.ParentReference, gateway types.NamespacedName) bool

IsRefToGateway returns whether the provided parent ref is a reference to a Gateway with the given namespace/name, irrespective of whether a section/listener name has been specified (i.e. a parent ref to a listener on the specified gateway will return "true").

func KindPtr

func KindPtr(name string) *v1beta1.Kind

func KindPtrV1Alpha2

func KindPtrV1Alpha2(kind string) *v1alpha2.Kind

func NamespaceDerefOr

func NamespaceDerefOr(namespace *v1beta1.Namespace, defaultNamespace string) string

func NamespaceDerefOrAlpha

func NamespaceDerefOrAlpha(namespace *v1alpha2.Namespace, defaultNamespace string) string

func NamespacePtr

func NamespacePtr(name string) *v1beta1.Namespace

func NamespacePtrV1Alpha2

func NamespacePtrV1Alpha2(namespace string) *v1alpha2.Namespace

func ObjectNamePtr

func ObjectNamePtr(val string) *v1alpha2.ObjectName

func PathMatchTypeDerefOr

func PathMatchTypeDerefOr(matchType *v1beta1.PathMatchType, defaultType v1beta1.PathMatchType) v1beta1.PathMatchType

func PathMatchTypePtr

func PathMatchTypePtr(pType v1beta1.PathMatchType) *v1beta1.PathMatchType

func PortNumPtr

func PortNumPtr(val int32) *v1beta1.PortNumber

func PortNumPtrV1Alpha2

func PortNumPtrV1Alpha2(port int) *v1alpha2.PortNumber

func QueryParamMatchTypeDerefOr added in v0.3.0

func QueryParamMatchTypeDerefOr(matchType *v1beta1.QueryParamMatchType,
	defaultType v1beta1.QueryParamMatchType) v1beta1.QueryParamMatchType

func SectionNamePtr

func SectionNamePtr(name string) *v1beta1.SectionName

func SectionNamePtrV1Alpha2

func SectionNamePtrV1Alpha2(sectionName string) *v1alpha2.SectionName

func StringPtr

func StringPtr(val string) *string

func TLSModeTypePtr

func TLSModeTypePtr(mode v1beta1.TLSModeType) *v1beta1.TLSModeType

func UpgradeBackendRef added in v0.3.0

func UpgradeBackendRef(old v1alpha2.BackendRef) v1beta1.BackendRef

UpgradeBackendRef converts v1alpha2.BackendRef to v1beta1.BackendRef

func UpgradeParentReference

func UpgradeParentReference(old v1alpha2.ParentReference) v1beta1.ParentReference

UpgradeParentReference converts v1alpha2.ParentReference to v1beta1.ParentReference

func UpgradeParentReferences

func UpgradeParentReferences(old []v1alpha2.ParentReference) []v1beta1.ParentReference

func UpgradeRouteParentStatuses

func UpgradeRouteParentStatuses(routeParentStatuses []v1alpha2.RouteParentStatus) []v1beta1.RouteParentStatus

func ValidateGRPCRouteFilter added in v0.3.0

func ValidateGRPCRouteFilter(filter *v1alpha2.GRPCRouteFilter, extGKs ...schema.GroupKind) error

ValidateGRPCRouteFilter validates the provided filter within GRPCRoute.

func ValidateHTTPRouteFilter added in v0.3.0

func ValidateHTTPRouteFilter(filter *v1beta1.HTTPRouteFilter, extGKs ...schema.GroupKind) error

ValidateHTTPRouteFilter validates the provided filter within HTTPRoute.

Types

type FiltersTranslator added in v0.3.0

type FiltersTranslator interface {
	HTTPFiltersTranslator
}

type GRPCRouteContext added in v0.3.0

type GRPCRouteContext struct {
	// GatewayControllerName is the name of the Gateway API controller.
	GatewayControllerName string

	*v1alpha2.GRPCRoute
	// contains filtered or unexported fields
}

GRPCRouteContext wraps a GRPCRoute and provides helper methods for accessing the route's parents.

func (*GRPCRouteContext) GetHostnames added in v0.3.0

func (g *GRPCRouteContext) GetHostnames() []string

func (*GRPCRouteContext) GetParentReferences added in v0.3.0

func (g *GRPCRouteContext) GetParentReferences() []v1beta1.ParentReference

func (*GRPCRouteContext) GetRouteParentContext added in v0.3.0

func (g *GRPCRouteContext) GetRouteParentContext(forParentRef v1beta1.ParentReference) *RouteParentContext

func (*GRPCRouteContext) GetRouteStatus added in v0.3.0

func (g *GRPCRouteContext) GetRouteStatus() *v1beta1.RouteStatus

func (*GRPCRouteContext) GetRouteType added in v0.3.0

func (g *GRPCRouteContext) GetRouteType() string

type GatewayContext

type GatewayContext struct {
	*v1beta1.Gateway
	// contains filtered or unexported fields
}

GatewayContext wraps a Gateway and provides helper methods for setting conditions, accessing Listeners, etc.

func (*GatewayContext) ResetListeners added in v0.3.0

func (g *GatewayContext) ResetListeners()

ResetListeners resets the listener statuses and re-generates the GatewayContext ListenerContexts from the Gateway spec.

type HTTPFilterIR added in v0.3.0

type HTTPFilterIR struct {
	DirectResponse   *ir.DirectResponse
	RedirectResponse *ir.Redirect

	URLRewrite *ir.URLRewrite

	AddRequestHeaders    []ir.AddHeader
	RemoveRequestHeaders []string

	AddResponseHeaders    []ir.AddHeader
	RemoveResponseHeaders []string

	Mirrors []*ir.RouteDestination

	RequestAuthentication *ir.RequestAuthentication
	RateLimit             *ir.RateLimit

	ExtensionRefs []*ir.UnstructuredRef
}

HTTPFilterIR contains the ir processing results.

type HTTPFiltersContext added in v0.3.0

type HTTPFiltersContext struct {
	*HTTPFilterIR

	ParentRef *RouteParentContext
	Route     RouteContext
}

HTTPFiltersContext is the context of http filters processing.

type HTTPFiltersTranslator added in v0.3.0

type HTTPFiltersTranslator interface {
	// contains filtered or unexported methods
}

type HTTPRouteContext

type HTTPRouteContext struct {
	// GatewayControllerName is the name of the Gateway API controller.
	GatewayControllerName string

	*v1beta1.HTTPRoute
	// contains filtered or unexported fields
}

HTTPRouteContext wraps an HTTPRoute and provides helper methods for accessing the route's parents.

func (*HTTPRouteContext) GetHostnames

func (h *HTTPRouteContext) GetHostnames() []string

func (*HTTPRouteContext) GetParentReferences

func (h *HTTPRouteContext) GetParentReferences() []v1beta1.ParentReference

func (*HTTPRouteContext) GetRouteParentContext

func (h *HTTPRouteContext) GetRouteParentContext(forParentRef v1beta1.ParentReference) *RouteParentContext

func (*HTTPRouteContext) GetRouteStatus added in v0.3.0

func (h *HTTPRouteContext) GetRouteStatus() *v1beta1.RouteStatus

func (*HTTPRouteContext) GetRouteType

func (h *HTTPRouteContext) GetRouteType() string

type InfraIRMap

type InfraIRMap map[string]*ir.Infra

type ListenerContext

type ListenerContext struct {
	*v1beta1.Listener
	// contains filtered or unexported fields
}

ListenerContext wraps a Listener and provides helper methods for setting conditions and other status information on the associated Gateway, etc.

func GetReferencedListeners

func GetReferencedListeners(parentRef v1beta1.ParentReference, gateways []*GatewayContext) (bool, []*ListenerContext)

GetReferencedListeners returns whether a given parent ref references a Gateway in the given list, and if so, a list of the Listeners within that Gateway that are included by the parent ref (either one specific Listener, or all Listeners in the Gateway, depending on whether section name is specified or not).

func (*ListenerContext) AllowsKind

func (l *ListenerContext) AllowsKind(kind v1beta1.RouteGroupKind) bool

func (*ListenerContext) AllowsNamespace

func (l *ListenerContext) AllowsNamespace(namespace *v1.Namespace) bool

func (*ListenerContext) AttachedRoutes added in v0.3.0

func (l *ListenerContext) AttachedRoutes() int32

func (*ListenerContext) GetConditions

func (l *ListenerContext) GetConditions() []metav1.Condition

func (*ListenerContext) IncrementAttachedRoutes

func (l *ListenerContext) IncrementAttachedRoutes()

func (*ListenerContext) IsReady

func (l *ListenerContext) IsReady() bool

func (*ListenerContext) SetCondition

func (l *ListenerContext) SetCondition(conditionType v1beta1.ListenerConditionType, status metav1.ConditionStatus, reason v1beta1.ListenerConditionReason, message string)

func (*ListenerContext) SetSupportedKinds

func (l *ListenerContext) SetSupportedKinds(kinds ...v1beta1.RouteGroupKind)

func (*ListenerContext) SetTLSSecrets added in v0.4.0

func (l *ListenerContext) SetTLSSecrets(tlsSecrets []*v1.Secret)

type ListenersTranslator added in v0.3.0

type ListenersTranslator interface {
	ProcessListeners(gateways []*GatewayContext, xdsIR XdsIRMap, infraIR InfraIRMap, resources *Resources)
}

type Resources

type Resources struct {
	// This field is only used for marshalling/unmarshalling purposes and is not used by
	// the translator
	GatewayClass          *v1beta1.GatewayClass          `json:"gatewayClass,omitempty"`
	Gateways              []*v1beta1.Gateway             `json:"gateways,omitempty"`
	HTTPRoutes            []*v1beta1.HTTPRoute           `json:"httpRoutes,omitempty"`
	GRPCRoutes            []*v1alpha2.GRPCRoute          `json:"grpcRoutes,omitempty"`
	TLSRoutes             []*v1alpha2.TLSRoute           `json:"tlsRoutes,omitempty"`
	TCPRoutes             []*v1alpha2.TCPRoute           `json:"tcpRoutes,omitempty"`
	UDPRoutes             []*v1alpha2.UDPRoute           `json:"udpRoutes,omitempty"`
	ReferenceGrants       []*v1alpha2.ReferenceGrant     `json:"referenceGrants,omitempty"`
	Namespaces            []*v1.Namespace                `json:"namespaces,omitempty"`
	Services              []*v1.Service                  `json:"services,omitempty"`
	Secrets               []*v1.Secret                   `json:"secrets,omitempty"`
	AuthenticationFilters []*egv1a1.AuthenticationFilter `json:"authenticationFilters,omitempty"`
	RateLimitFilters      []*egv1a1.RateLimitFilter      `json:"rateLimitFilters,omitempty"`
	EnvoyProxy            *egcfgv1a1.EnvoyProxy          `json:"envoyProxy,omitempty"`
	ExtensionRefFilters   []unstructured.Unstructured    `json:"extensionRefFilters,omitempty"`
}

Resources holds the Gateway API and related resources that the translators needs as inputs. +k8s:deepcopy-gen=true

func NewResources added in v0.3.0

func NewResources() *Resources

func (*Resources) DeepCopy added in v0.3.0

func (in *Resources) DeepCopy() *Resources

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources.

func (*Resources) DeepCopyInto added in v0.3.0

func (in *Resources) DeepCopyInto(out *Resources)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Resources) GetNamespace

func (r *Resources) GetNamespace(name string) *v1.Namespace

func (*Resources) GetSecret

func (r *Resources) GetSecret(namespace, name string) *v1.Secret

func (*Resources) GetService

func (r *Resources) GetService(namespace, name string) *v1.Service

type RouteContext

type RouteContext interface {
	client.Object

	// GetRouteType returns the Kind of the Route object, HTTPRoute,
	// TLSRoute, TCPRoute, UDPRoute etc.
	GetRouteType() string

	// GetRouteStatus returns the RouteStatus object associated with the Route.
	GetRouteStatus() *v1beta1.RouteStatus

	// TODO: [v1alpha2-v1beta1] This should not be required once all Route
	// objects being implemented are of type v1beta1.
	// GetParentReferences returns the ParentReference of the Route object.
	GetParentReferences() []v1beta1.ParentReference

	// GetRouteParentContext returns RouteParentContext by using the Route
	// objects' ParentReference.
	GetRouteParentContext(forParentRef v1beta1.ParentReference) *RouteParentContext

	// TODO: [v1alpha2-v1beta1] This should not be required once all Route
	// objects being implemented are of type v1beta1.
	// GetHostnames returns the hosts targeted by the Route object.
	GetHostnames() []string
}

RouteContext represents a generic Route object (HTTPRoute, TLSRoute, etc.) that can reference Gateway objects.

type RouteParentContext

type RouteParentContext struct {
	*v1beta1.ParentReference
	// contains filtered or unexported fields
}

RouteParentContext wraps a ParentReference and provides helper methods for setting conditions and other status information on the associated HTTPRoute, TLSRoute etc.

func (*RouteParentContext) HasCondition added in v0.4.0

func (r *RouteParentContext) HasCondition(route RouteContext, condType v1beta1.RouteConditionType, status metav1.ConditionStatus) bool

func (*RouteParentContext) ResetConditions

func (r *RouteParentContext) ResetConditions(route RouteContext)

func (*RouteParentContext) SetCondition

func (r *RouteParentContext) SetCondition(route RouteContext, conditionType v1beta1.RouteConditionType, status metav1.ConditionStatus, reason v1beta1.RouteConditionReason, message string)

func (*RouteParentContext) SetListeners

func (r *RouteParentContext) SetListeners(listeners ...*ListenerContext)

type RoutesTranslator added in v0.3.0

type RoutesTranslator interface {
	ProcessHTTPRoutes(httpRoutes []*v1beta1.HTTPRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*HTTPRouteContext
	ProcessGRPCRoutes(grpcRoutes []*v1alpha2.GRPCRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*GRPCRouteContext
	ProcessTLSRoutes(tlsRoutes []*v1alpha2.TLSRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*TLSRouteContext
	ProcessTCPRoutes(tcpRoutes []*v1alpha2.TCPRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*TCPRouteContext
	ProcessUDPRoutes(udpRoutes []*v1alpha2.UDPRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*UDPRouteContext
}

type TCPRouteContext added in v0.3.0

type TCPRouteContext struct {
	// GatewayControllerName is the name of the Gateway API controller.
	GatewayControllerName string

	*v1alpha2.TCPRoute
	// contains filtered or unexported fields
}

TCPRouteContext wraps a TCPRoute and provides helper methods for accessing the route's parents.

func (*TCPRouteContext) GetHostnames added in v0.3.0

func (t *TCPRouteContext) GetHostnames() []string

func (*TCPRouteContext) GetParentReferences added in v0.3.0

func (t *TCPRouteContext) GetParentReferences() []v1beta1.ParentReference

func (*TCPRouteContext) GetRouteParentContext added in v0.3.0

func (t *TCPRouteContext) GetRouteParentContext(forParentRef v1beta1.ParentReference) *RouteParentContext

func (*TCPRouteContext) GetRouteStatus added in v0.3.0

func (t *TCPRouteContext) GetRouteStatus() *v1beta1.RouteStatus

func (*TCPRouteContext) GetRouteType added in v0.3.0

func (t *TCPRouteContext) GetRouteType() string

type TLSRouteContext

type TLSRouteContext struct {
	// GatewayControllerName is the name of the Gateway API controller.
	GatewayControllerName string

	*v1alpha2.TLSRoute
	// contains filtered or unexported fields
}

TLSRouteContext wraps a TLSRoute and provides helper methods for accessing the route's parents.

func (*TLSRouteContext) GetHostnames

func (t *TLSRouteContext) GetHostnames() []string

func (*TLSRouteContext) GetParentReferences

func (t *TLSRouteContext) GetParentReferences() []v1beta1.ParentReference

func (*TLSRouteContext) GetRouteParentContext

func (t *TLSRouteContext) GetRouteParentContext(forParentRef v1beta1.ParentReference) *RouteParentContext

func (*TLSRouteContext) GetRouteStatus added in v0.3.0

func (t *TLSRouteContext) GetRouteStatus() *v1beta1.RouteStatus

func (*TLSRouteContext) GetRouteType

func (t *TLSRouteContext) GetRouteType() string

type TranslateResult

type TranslateResult struct {
	Resources
	XdsIR   XdsIRMap
	InfraIR InfraIRMap
}

type Translator

type Translator struct {
	// GatewayControllerName is the name of the Gateway API controller
	GatewayControllerName string

	// GatewayClassName is the name of the GatewayClass
	// to process Gateways for.
	GatewayClassName v1beta1.ObjectName

	// GlobalRateLimitEnabled is true when global
	// ratelimiting has been configured by the admin.
	GlobalRateLimitEnabled bool

	// ExtensionGroupKinds stores the group/kind for all resources
	// introduced by an Extension so that the translator can
	// store referenced resources in the IR for later use.
	ExtensionGroupKinds []schema.GroupKind
}

Translator translates Gateway API resources to IRs and computes status for Gateway API resources.

func (*Translator) GetRelevantGateways

func (t *Translator) GetRelevantGateways(gateways []*v1beta1.Gateway) []*GatewayContext

GetRelevantGateways returns GatewayContexts, containing a copy of the original Gateway with the Listener statuses reset.

func (*Translator) ProcessGRPCFilters added in v0.3.0

func (t *Translator) ProcessGRPCFilters(parentRef *RouteParentContext,
	route RouteContext,
	filters []v1alpha2.GRPCRouteFilter,
	resources *Resources) *HTTPFiltersContext

ProcessGRPCFilters translates gateway api grpc filters to IRs.

func (*Translator) ProcessGRPCRoutes added in v0.3.0

func (t *Translator) ProcessGRPCRoutes(grpcRoutes []*v1alpha2.GRPCRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*GRPCRouteContext

func (*Translator) ProcessHTTPFilters added in v0.3.0

func (t *Translator) ProcessHTTPFilters(parentRef *RouteParentContext,
	route RouteContext,
	filters []v1beta1.HTTPRouteFilter,
	resources *Resources) *HTTPFiltersContext

ProcessHTTPFilters translates gateway api http filters to IRs.

func (*Translator) ProcessHTTPRoutes

func (t *Translator) ProcessHTTPRoutes(httpRoutes []*v1beta1.HTTPRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*HTTPRouteContext

func (*Translator) ProcessListeners

func (t *Translator) ProcessListeners(gateways []*GatewayContext, xdsIR XdsIRMap, infraIR InfraIRMap, resources *Resources)

func (*Translator) ProcessTCPRoutes added in v0.3.0

func (t *Translator) ProcessTCPRoutes(tcpRoutes []*v1alpha2.TCPRoute, gateways []*GatewayContext, resources *Resources,
	xdsIR XdsIRMap) []*TCPRouteContext

func (*Translator) ProcessTLSRoutes

func (t *Translator) ProcessTLSRoutes(tlsRoutes []*v1alpha2.TLSRoute, gateways []*GatewayContext, resources *Resources, xdsIR XdsIRMap) []*TLSRouteContext

func (*Translator) ProcessUDPRoutes added in v0.3.0

func (t *Translator) ProcessUDPRoutes(udpRoutes []*v1alpha2.UDPRoute, gateways []*GatewayContext, resources *Resources,
	xdsIR XdsIRMap) []*UDPRouteContext

func (*Translator) Translate

func (t *Translator) Translate(resources *Resources) *TranslateResult

type TranslatorManager added in v0.3.0

type TranslatorManager interface {
	Translate(resources *Resources) *TranslateResult
	GetRelevantGateways(gateways []*v1beta1.Gateway) []*GatewayContext

	RoutesTranslator
	ListenersTranslator
	FiltersTranslator
}

type UDPRouteContext added in v0.3.0

type UDPRouteContext struct {
	// GatewayControllerName is the name of the Gateway API controller.
	GatewayControllerName string

	*v1alpha2.UDPRoute
	// contains filtered or unexported fields
}

UDPRouteContext wraps a UDPRoute and provides helper methods for accessing the route's parents.

func (*UDPRouteContext) GetHostnames added in v0.3.0

func (u *UDPRouteContext) GetHostnames() []string

func (*UDPRouteContext) GetParentReferences added in v0.3.0

func (u *UDPRouteContext) GetParentReferences() []v1beta1.ParentReference

func (*UDPRouteContext) GetRouteParentContext added in v0.3.0

func (u *UDPRouteContext) GetRouteParentContext(forParentRef v1beta1.ParentReference) *RouteParentContext

func (*UDPRouteContext) GetRouteStatus added in v0.3.0

func (u *UDPRouteContext) GetRouteStatus() *v1beta1.RouteStatus

func (*UDPRouteContext) GetRouteType added in v0.3.0

func (u *UDPRouteContext) GetRouteType() string

type XdsIRMap

type XdsIRMap map[string]*ir.Xds

type XdsIRRoutes

type XdsIRRoutes []*ir.HTTPRoute

func (XdsIRRoutes) Len

func (x XdsIRRoutes) Len() int

func (XdsIRRoutes) Less

func (x XdsIRRoutes) Less(i, j int) bool

func (XdsIRRoutes) Swap

func (x XdsIRRoutes) Swap(i, j int)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL