@@ -3,12 +3,9 @@ package option
3
3
import (
4
4
"errors"
5
5
6
- opentracing "github.com/opentracing/opentracing-go"
7
- "google.golang.org/grpc/balancer"
8
- "google.golang.org/grpc/resolver"
9
-
10
6
vexpb "github.com/binchencoder/gateway-proto/data"
11
7
pb "github.com/binchencoder/skylb-apiv2/proto"
8
+ "google.golang.org/grpc/resolver"
12
9
)
13
10
14
11
var (
17
14
18
15
// SkyLbKeeper defines the interface for a SkyLB keeper.
19
16
type SkyLbKeeper interface {
20
- // RegisterService registers the service with the given spec to the keeper
21
- // and returns a channel for the service instance updates.
22
- RegisterService (spec * pb.ServiceSpec ) <- chan [] * resolver.Address
17
+ // RegisterServiceCliConn registers the service resolver.ClientConn
18
+ // with the given spec to the keeper
19
+ RegisterServiceCliConn (spec * pb.ServiceSpec , cliConn resolver.ClientConn )
23
20
24
21
// Start starts the keeper with the given client service ID and name.
25
22
Start (csId vexpb.ServiceId , csName string , resolveFullEps bool )
@@ -34,38 +31,37 @@ type SkyLbKeeper interface {
34
31
35
32
// LoadBalanceHandler defines the interface to handle the notification logic
36
33
// for different clients in SkyLB API load balancing.
37
- type LoadBalanceHandler interface {
38
- // Returns the service spec for this handler.
39
- ServiceSpec () * pb.ServiceSpec
34
+ // type LoadBalanceHandler interface {
35
+ // // Returns the service spec for this handler.
36
+ // ServiceSpec() *pb.ServiceSpec
40
37
41
- // BeforeResolve is called before SkyLB API resolves the given spec.
42
- BeforeResolve (spec * pb.ServiceSpec , ropts * ResolveOptions )
38
+ // // BeforeResolve is called before SkyLB API resolves the given spec.
39
+ // BeforeResolve(spec *pb.ServiceSpec, ropts *ResolveOptions)
43
40
44
- // AfterResolve is called after SkyLB API resolved the given spec.
45
- AfterResolve (spec * pb.ServiceSpec , csId vexpb.ServiceId , csName string , keeper SkyLbKeeper , tracer opentracing.Tracer , failFast bool )
41
+ // // AfterResolve is called after SkyLB API resolved the given spec.
42
+ // AfterResolve(spec *pb.ServiceSpec, csId vexpb.ServiceId, csName string, keeper SkyLbKeeper, tracer opentracing.Tracer, failFast bool)
46
43
47
- // OnShutdown is called when the SkyLB API is shutting down.
48
- OnShutdown ()
49
- }
44
+ // // OnShutdown is called when the SkyLB API is shutting down.
45
+ // OnShutdown()
46
+ // }
50
47
51
48
// // BalancerCreator is a function which get a grpc Balancer.
52
- type BalancerCreator func (balancerName string ) balancer.Builder
49
+ // type BalancerCreator func(balancerName string) balancer.Builder
53
50
54
- // // ResolveOptions configure a resolve call.
55
- type ResolveOptions struct {
56
- balancerCreator BalancerCreator
57
- }
51
+ // ResolveOptions configure a resolve call.
52
+ // type ResolveOptions struct {
53
+ // balancerCreator BalancerCreator
54
+ // }
58
55
59
56
// BalancerCreator returns the load balancer creator.
60
- func (ropts * ResolveOptions ) BalancerCreator () BalancerCreator {
61
- return ropts .balancerCreator
62
- }
57
+ // func (ropts *ResolveOptions) BalancerCreator() BalancerCreator {
58
+ // return ropts.balancerCreator
59
+ // }
63
60
64
- // // ResolveOption configures how we set up the resolve call.
65
- type ResolveOption func (* ResolveOptions )
61
+ // ResolveOption configures how we set up the resolve call.
62
+ // type ResolveOption func(*ResolveOptions)
66
63
67
- // // WithBalancerCreator returns a ResolveOption which sets a load
68
- // // balancer creator.
64
+ // WithBalancerCreator returns a ResolveOption which sets a load balancer creator.
69
65
// func WithBalancerCreator(balancerName string) ResolveOption {
70
66
// builder := balancer.Get(balancerName)
71
67
// if nil == builder {
0 commit comments