diff options
| author | Petter Rasmussen | 2016-02-08 21:50:21 +0100 |
|---|---|---|
| committer | Petter Rasmussen | 2016-02-08 21:50:21 +0100 |
| commit | 9e2fbc9471996cdab057c2d3807a847424653036 (patch) | |
| tree | a61fdda6f3ae75aafae82efbb7795cf51f6cc3d6 | |
| parent | 0bbe6c4a4b35511c0c16040abd122cf746be9167 (diff) | |
| download | gdrive-9e2fbc9471996cdab057c2d3807a847424653036.tar.bz2 | |
Use listAllFiles
| -rw-r--r-- | drive/download.go | 10 |
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 |
