Versions in this module Expand all Collapse all v0 v0.0.2 Oct 15, 2024 Changes in this version + const ClusterResourceTypeName + const EndpointsResourceTypeName + const FederationScheme + const ListenerResourceTypeName + const RouteConfigTypeName + var RandInt63n = rand.Int63n + var ValidateClusterAndConstructClusterUpdateForTesting = validateClusterAndConstructClusterUpdate + func IsClusterResource(url string) bool + func IsEndpointsResource(url string) bool + func IsHTTPConnManagerResource(url string) bool + func IsListenerResource(url string) bool + func IsRouteConfigResource(url string) bool + func NewErrorf(t ErrorType, format string, args ...any) error + func UnwrapResource(r *anypb.Any) (*anypb.Any, error) + func WatchCluster(p Producer, name string, w ClusterWatcher) (cancel func()) + func WatchEndpoints(p Producer, name string, w EndpointsWatcher) (cancel func()) + func WatchListener(p Producer, name string, w ListenerWatcher) (cancel func()) + func WatchRouteConfig(p Producer, name string, w RouteConfigWatcher) (cancel func()) + type ClusterResourceData struct + Resource ClusterUpdate + func (c *ClusterResourceData) Equal(other ResourceData) bool + func (c *ClusterResourceData) Raw() *anypb.Any + func (c *ClusterResourceData) ToJSON() string + type ClusterType int + const ClusterTypeAggregate + const ClusterTypeEDS + const ClusterTypeLogicalDNS + type ClusterUpdate struct + ClusterName string + ClusterType ClusterType + DNSHostName string + EDSServiceName string + LBPolicy json.RawMessage + LRSServerConfig *bootstrap.ServerConfig + MaxRequests *uint32 + OutlierDetection json.RawMessage + PrioritizedClusterNames []string + Raw *anypb.Any + SecurityCfg *SecurityConfig + TelemetryLabels map[string]string + type ClusterWatcher interface + OnError func(error) + OnResourceDoesNotExist func() + OnUpdate func(*ClusterResourceData) + type CompositeMatcher struct + func RouteToMatcher(r *Route) (*CompositeMatcher, error) + func (a *CompositeMatcher) Match(info iresolver.RPCInfo) bool + func (a *CompositeMatcher) String() string + type DecodeOptions struct + BootstrapConfig *bootstrap.Config + ServerConfig *bootstrap.ServerConfig + type DecodeResult struct + Name string + Resource ResourceData + type Endpoint struct + Address string + HealthStatus EndpointHealthStatus + Weight uint32 + type EndpointHealthStatus int32 + const EndpointHealthStatusDegraded + const EndpointHealthStatusDraining + const EndpointHealthStatusHealthy + const EndpointHealthStatusTimeout + const EndpointHealthStatusUnhealthy + const EndpointHealthStatusUnknown + type EndpointsResourceData struct + Resource EndpointsUpdate + func (e *EndpointsResourceData) Equal(other ResourceData) bool + func (e *EndpointsResourceData) Raw() *anypb.Any + func (e *EndpointsResourceData) ToJSON() string + type EndpointsUpdate struct + Drops []OverloadDropConfig + Localities []Locality + Raw *anypb.Any + type EndpointsWatcher interface + OnError func(error) + OnResourceDoesNotExist func() + OnUpdate func(*EndpointsResourceData) + type ErrorType int + const ErrTypeStreamFailedAfterRecv + const ErrorTypeConnection + const ErrorTypeResourceNotFound + const ErrorTypeResourceTypeUnsupported + const ErrorTypeUnknown + func ErrType(e error) ErrorType + type FilterChain struct + HTTPFilters []HTTPFilter + InlineRouteConfig *RouteConfigUpdate + RouteConfigName string + SecurityCfg *SecurityConfig + UsableRouteConfiguration *atomic.Pointer[UsableRouteConfiguration] + func (fc *FilterChain) ConstructUsableRouteConfiguration(config RouteConfigUpdate) *UsableRouteConfiguration + type FilterChainLookupParams struct + DestAddr net.IP + IsUnspecifiedListener bool + SourceAddr net.IP + SourcePort int + type FilterChainManager struct + RouteConfigNames map[string]bool + func NewFilterChainManager(lis *v3listenerpb.Listener) (*FilterChainManager, error) + func (fcm *FilterChainManager) FilterChains() []*FilterChain + func (fcm *FilterChainManager) Lookup(params FilterChainLookupParams) (*FilterChain, error) + func (fcm *FilterChainManager) Validate(f func(fc *FilterChain) error) error + type HTTPFilter struct + Config httpfilter.FilterConfig + Filter httpfilter.Filter + Name string + type HashPolicy struct + HashPolicyType HashPolicyType + HeaderName string + Regex *regexp.Regexp + RegexSubstitution string + Terminal bool + type HashPolicyType int + const HashPolicyTypeChannelID + const HashPolicyTypeHeader + type HeaderMatcher struct + ExactMatch *string + InvertMatch *bool + Name string + PrefixMatch *string + PresentMatch *bool + RangeMatch *Int64Range + RegexMatch *regexp.Regexp + StringMatch *matcher.StringMatcher + SuffixMatch *string + type InboundListenerConfig struct + Address string + FilterChains *FilterChainManager + Port string + type Int64Range struct + End int64 + Start int64 + type ListenerResourceData struct + Resource ListenerUpdate + func (l *ListenerResourceData) Equal(other ResourceData) bool + func (l *ListenerResourceData) Raw() *anypb.Any + func (l *ListenerResourceData) ToJSON() string + type ListenerUpdate struct + HTTPFilters []HTTPFilter + InboundListenerCfg *InboundListenerConfig + InlineRouteConfig *RouteConfigUpdate + MaxStreamDuration time.Duration + Raw *anypb.Any + RouteConfigName string + type ListenerWatcher interface + OnError func(error) + OnResourceDoesNotExist func() + OnUpdate func(*ListenerResourceData) + type Locality struct + Endpoints []Endpoint + ID internal.LocalityID + Priority uint32 + Weight uint32 + type Name struct + Authority string + ContextParams map[string]string + ID string + Scheme string + Type string + func ParseName(name string) *Name + func (n *Name) String() string + type OverloadDropConfig struct + Category string + Denominator uint32 + Numerator uint32 + type Producer interface + WatchResource func(rType Type, resourceName string, watcher ResourceWatcher) (cancel func()) + type ResourceData interface + Equal func(ResourceData) bool + Raw func() *anypb.Any + ToJSON func() string + type ResourceWatcher interface + OnError func(error) + OnResourceDoesNotExist func() + OnUpdate func(ResourceData) + type RetryBackoff struct + BaseInterval time.Duration + MaxInterval time.Duration + type RetryConfig struct + NumRetries uint32 + RetryBackoff RetryBackoff + RetryOn map[codes.Code]bool + type Route struct + ActionType RouteActionType + CaseInsensitive bool + ClusterSpecifierPlugin string + Fraction *uint32 + HTTPFilterConfigOverride map[string]httpfilter.FilterConfig + HashPolicies []*HashPolicy + Headers []*HeaderMatcher + MaxStreamDuration *time.Duration + Path *string + Prefix *string + Regex *regexp.Regexp + RetryConfig *RetryConfig + WeightedClusters map[string]WeightedCluster + type RouteActionType int + const RouteActionNonForwardingAction + const RouteActionRoute + const RouteActionUnsupported + type RouteConfigResourceData struct + Resource RouteConfigUpdate + func (r *RouteConfigResourceData) Equal(other ResourceData) bool + func (r *RouteConfigResourceData) Raw() *anypb.Any + func (r *RouteConfigResourceData) ToJSON() string + type RouteConfigUpdate struct + ClusterSpecifierPlugins map[string]clusterspecifier.BalancerConfig + Raw *anypb.Any + VirtualHosts []*VirtualHost + type RouteConfigWatcher interface + OnError func(error) + OnResourceDoesNotExist func() + OnUpdate func(*RouteConfigResourceData) + type RouteWithInterceptors struct + ActionType RouteActionType + Interceptors []resolver.ServerInterceptor + M *CompositeMatcher + type SecurityConfig struct + IdentityCertName string + IdentityInstanceName string + RequireClientCert bool + RootCertName string + RootInstanceName string + SubjectAltNameMatchers []matcher.StringMatcher + func (sc *SecurityConfig) Equal(other *SecurityConfig) bool + type ServiceStatus int + const ServiceStatusACKed + const ServiceStatusNACKed + const ServiceStatusNotExist + const ServiceStatusRequested + const ServiceStatusUnknown + type SourceType int + const SourceTypeAny + const SourceTypeExternal + const SourceTypeSameOrLoopback + type Type interface + AllResourcesRequiredInSotW func() bool + Decode func(*DecodeOptions, *anypb.Any) (*DecodeResult, error) + TypeName func() string + TypeURL func() string + type UpdateErrorMetadata struct + Err error + Timestamp time.Time + Version string + type UpdateMetadata struct + ErrState *UpdateErrorMetadata + Status ServiceStatus + Timestamp time.Time + Version string + type UpdateValidatorFunc func(any) error + type UpdateWithMD struct + MD UpdateMetadata + Raw *anypb.Any + type UsableRouteConfiguration struct + Err error + VHS []VirtualHostWithInterceptors + type VirtualHost struct + Domains []string + HTTPFilterConfigOverride map[string]httpfilter.FilterConfig + RetryConfig *RetryConfig + Routes []*Route + func FindBestMatchingVirtualHost(host string, vHosts []*VirtualHost) *VirtualHost + type VirtualHostWithInterceptors struct + Domains []string + Routes []RouteWithInterceptors + func FindBestMatchingVirtualHostServer(authority string, vHosts []VirtualHostWithInterceptors) *VirtualHostWithInterceptors + type WeightedCluster struct + HTTPFilterConfigOverride map[string]httpfilter.FilterConfig + Weight uint32