You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
package wdclient
import ( "context" "code.uber.internal/fraud/alpine/.gen/proto/go/fraud/alpine" )
type SeaweedClient struct { ctx context.Context Master string ClientName string ClusterListener *clusterlistener.ClusterListener }
// NewSeaweedClient creates a SeaweedFS client which contains a listener for the Seaweed system topology changes
func NewSeaweedClient(ctx context.Context, clientName, master string) *SeaweedClient { c := &SeaweedClient{ ctx: ctx, Master: master, ClusterListener: clusterlistener.NewClusterListener(clientName), ClientName: clientName, } c.ClusterListener.StartListener(ctx, c.Master)
conn, err := grpc.Dial(c.Master, grpc.WithInsecure()) if err != nil { glog.Fatalf("%s fail to dial %v: %v", c.ClientName, c.Master, err) } c.MasterClient = pb.NewAlpineMasterClient(conn)
return c }
// NewClusterClient create a lightweight client to access a specific cluster
// TODO The call will block if the keyspace is not created in this data center.
func (c *SeaweedClient) NewClusterClient(keyspace string) (clusterClient *ClusterClient) {
return &ClusterClient{ keyspace: keyspace, }
}
|