github.com/keybase/client/go@v0.0.0-20240309051027-028f7c731f8b/kbfs/libfs/status_file.go (about) 1 // Copyright 2015-2016 Keybase Inc. All rights reserved. 2 // Use of this source code is governed by a BSD 3 // license that can be found in the LICENSE file. 4 5 package libfs 6 7 import ( 8 "time" 9 10 "github.com/keybase/client/go/kbfs/data" 11 "github.com/keybase/client/go/kbfs/libkbfs" 12 "github.com/keybase/client/go/kbfs/tlf" 13 "golang.org/x/net/context" 14 ) 15 16 // GetEncodedFolderStatus returns serialized JSON containing status information 17 // for a folder 18 func GetEncodedFolderStatus(ctx context.Context, config libkbfs.Config, 19 folderBranch data.FolderBranch) ( 20 data []byte, t time.Time, err error) { 21 var status libkbfs.FolderBranchStatus 22 status, _, err = config.KBFSOps().FolderStatus(ctx, folderBranch) 23 if err != nil { 24 return nil, time.Time{}, err 25 } 26 27 data, err = PrettyJSON(status) 28 return 29 } 30 31 // GetEncodedStatus returns serialized JSON containing top-level KBFS status 32 // information 33 func GetEncodedStatus(ctx context.Context, config libkbfs.Config) ( 34 data []byte, t time.Time, err error) { 35 status, _, err := config.KBFSOps().Status(ctx) 36 if err != nil { 37 config.Reporter().ReportErr(ctx, "", tlf.Private, libkbfs.ReadMode, err) 38 return nil, t, err 39 } 40 data, err = PrettyJSON(status) 41 return 42 }