aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPetter Rasmussen2016-02-08 21:50:21 +0100
committerPetter Rasmussen2016-02-08 21:50:21 +0100
commit9e2fbc9471996cdab057c2d3807a847424653036 (patch)
treea61fdda6f3ae75aafae82efbb7795cf51f6cc3d6
parent0bbe6c4a4b35511c0c16040abd122cf746be9167 (diff)
downloadgdrive-9e2fbc9471996cdab057c2d3807a847424653036.tar.bz2
Use listAllFiles
-rw-r--r--drive/download.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/drive/download.go b/drive/download.go
index 468f96f..8477fd7 100644
--- a/drive/download.go
+++ b/drive/download.go
@@ -7,6 +7,7 @@ import (
"time"
"path/filepath"
"google.golang.org/api/drive/v3"
+ "google.golang.org/api/googleapi"
)
type DownloadArgs struct {
@@ -102,15 +103,18 @@ func (self *Drive) downloadBinary(f *drive.File, args DownloadArgs) error {
}
func (self *Drive) downloadDirectory(parent *drive.File, args DownloadArgs) error {
- query := fmt.Sprintf("'%s' in parents", parent.Id)
- fileList, err := self.service.Files.List().Q(query).Fields("files(id,name)").Do()
+ listArgs := listAllFilesArgs{
+ query: fmt.Sprintf("'%s' in parents", parent.Id),
+ fields: []googleapi.Field{"nextPageToken", "files(id,name)"},
+ }
+ files, err := self.listAllFiles(listArgs)
if err != nil {
return fmt.Errorf("Failed listing files: %s", err)
}
newPath := filepath.Join(args.Path, parent.Name)
- for _, f := range fileList.Files {
+ for _, f := range files {
// Copy args and update changed fields
newArgs := args
newArgs.Path = newPath