refactor into MasterClient

This commit is contained in:
Chris Lu
2018-07-28 02:10:32 -07:00
parent 1ab8232b55
commit 01bcc89803
5 changed files with 48 additions and 188 deletions

View File

@@ -11,20 +11,20 @@ import (
"path/filepath"
"strings"
"time"
"github.com/chrislusf/seaweedfs/weed/wdclient"
"context"
)
type Filer struct {
masters []string
store FilerStore
directoryCache *ccache.Cache
currentMaster string
masterClient *wdclient.MasterClient
}
func NewFiler(masters []string) *Filer {
return &Filer{
masters: masters,
directoryCache: ccache.New(ccache.Configure().MaxSize(1000).ItemsToPrune(100)),
masterClient: wdclient.NewMasterClient(context.Background(), "filer", masters),
}
}
@@ -36,6 +36,14 @@ func (f *Filer) DisableDirectoryCache() {
f.directoryCache = nil
}
func (fs *Filer) GetMaster() string {
return fs.masterClient.GetMaster()
}
func (fs *Filer) KeepConnectedToMaster() {
fs.masterClient.KeepConnectedToMaster()
}
func (f *Filer) CreateEntry(entry *Entry) error {
dirParts := strings.Split(string(entry.FullPath), "/")