github.com/projecteru2/core@v0.0.0-20240321043226-06bcc1c23f58/client/resolver/static/resolver.go (about)

     1  package static
     2  
     3  import (
     4  	"strings"
     5  
     6  	"google.golang.org/grpc/resolver"
     7  )
     8  
     9  // Resolver for target static://{addr1},{addr2},{addr3}
    10  type Resolver struct {
    11  	addresses []resolver.Address
    12  	cc        resolver.ClientConn
    13  }
    14  
    15  // New Resolver
    16  func New(cc resolver.ClientConn, endpoints string) *Resolver {
    17  	var addresses []resolver.Address
    18  	for _, ep := range strings.Split(endpoints, ",") {
    19  		addresses = append(addresses, resolver.Address{Addr: ep})
    20  	}
    21  	cc.UpdateState(resolver.State{Addresses: addresses}) //nolint
    22  	return &Resolver{
    23  		cc:        cc,
    24  		addresses: addresses,
    25  	}
    26  }
    27  
    28  // ResolveNow for interface
    29  func (r *Resolver) ResolveNow(_ resolver.ResolveNowOptions) {}
    30  
    31  // Close for interface
    32  func (r *Resolver) Close() {}