camput: move rollSplits to Uploader field, not passed along.

Change-Id: I8e78fe88e179235a03117927bd7b36217242e055
This commit is contained in:
Brad Fitzpatrick 2012-04-15 07:18:40 -07:00
parent 91501cdbd1
commit a8687d112c
2 changed files with 9 additions and 4 deletions

View File

@ -96,6 +96,8 @@ type HaveCache interface {
type Uploader struct {
*client.Client
rollSplits bool // rolling checksum file splitting
// for debugging; normally nil, but overrides Client if set
// TODO(bradfitz): clean this up? embed a StatReceiver instead
// of a Client?
@ -175,7 +177,7 @@ func (up *Uploader) releaseUploadToken() {
<-up.filecapc
}
func (up *Uploader) UploadFile(filename string, rollSplits bool) (respr *client.PutResult, outerr error) {
func (up *Uploader) UploadFile(filename string) (respr *client.PutResult, outerr error) {
up.getUploadToken()
defer up.releaseUploadToken()
@ -231,7 +233,7 @@ func (up *Uploader) UploadFile(filename string, rollSplits bool) (respr *client.
}
schemaWriteFileMap := schema.WriteFileMap
if rollSplits {
if up.rollSplits {
schemaWriteFileMap = schema.WriteFileMapRolling
}
blobref, err := schemaWriteFileMap(statReceiver, m, io.LimitReader(file, fi.Size()))
@ -284,7 +286,7 @@ func (up *Uploader) UploadFile(filename string, rollSplits bool) (respr *client.
for _, name := range dirNames {
rate <- true
go func(dirEntName string) {
pr, err := up.UploadFile(filename+"/"+dirEntName, rollSplits)
pr, err := up.UploadFile(filename+"/"+dirEntName)
if pr == nil && err == nil {
log.Fatalf("nil/nil from up.UploadFile on %q", filename+"/"+dirEntName)
}

View File

@ -130,8 +130,11 @@ func (c *fileCmd) RunCommand(up *Uploader, args []string) error {
if c.diskUsage {
return fmt.Errorf("TODO: implement diskUsage mode")
}
if c.rollSplits {
up.rollSplits = true
}
for _, filename := range args {
lastPut, err = up.UploadFile(filename, c.rollSplits)
lastPut, err = up.UploadFile(filename)
if handleResult("file", lastPut, err) != nil {
return err
}