mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2025-12-17 17:51:20 +08:00
change filer API to gRPC
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
package filesys
|
||||
|
||||
import "bazil.org/fuse/fs"
|
||||
import (
|
||||
"bazil.org/fuse/fs"
|
||||
"fmt"
|
||||
"google.golang.org/grpc"
|
||||
"github.com/chrislusf/seaweedfs/weed/filer"
|
||||
)
|
||||
|
||||
type WFS struct {
|
||||
filer string
|
||||
@@ -15,3 +20,16 @@ func NewSeaweedFileSystem(filer string) *WFS {
|
||||
func (wfs *WFS) Root() (fs.Node, error) {
|
||||
return &Dir{Path: "/", wfs: wfs}, nil
|
||||
}
|
||||
|
||||
func (wfs *WFS) withFilerClient(fn func(filer.SeaweedFilerClient) error) error {
|
||||
|
||||
grpcConnection, err := grpc.Dial(wfs.filer, grpc.WithInsecure())
|
||||
if err != nil {
|
||||
return fmt.Errorf("fail to dial %s: %v", wfs.filer, err)
|
||||
}
|
||||
defer grpcConnection.Close()
|
||||
|
||||
client := filer.NewSeaweedFilerClient(grpcConnection)
|
||||
|
||||
return fn(client)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user