aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPetter Rasmussen2016-01-16 20:07:15 +0100
committerPetter Rasmussen2016-01-16 22:09:46 +0100
commit6e25407d7c1dde508f144802a2147d7c5abd6322 (patch)
tree2e33f8b4f67009a5c9416ae7ac9199817c023beb
parent53f76875dc0cc926a05dc43c5fa2a5f81b65ad36 (diff)
downloadgdrive-6e25407d7c1dde508f144802a2147d7c5abd6322.tar.bz2
errorF
-rw-r--r--drive/files.go32
-rw-r--r--drive/util.go10
2 files changed, 18 insertions, 24 deletions
diff --git a/drive/files.go b/drive/files.go
index 49cf034..138202a 100644
--- a/drive/files.go
+++ b/drive/files.go
@@ -12,9 +12,7 @@ import (
func (self *Drive) List(args ListFilesArgs) {
fileList, err := self.service.Files.List().PageSize(args.MaxFiles).Q(args.Query).Fields("nextPageToken", "files(id,name,size,createdTime)").Do()
- if err != nil {
- exitF("Failed listing files: %s\n", err.Error())
- }
+ errorF(err, "Failed listing files: %s\n", err)
for _, f := range fileList.Files {
fmt.Printf("%s %s %d %s\n", f.Id, f.Name, f.Size, f.CreatedTime)
@@ -26,14 +24,10 @@ func (self *Drive) Download(args DownloadFileArgs) {
getFile := self.service.Files.Get(args.Id)
f, err := getFile.Do()
- if err != nil {
- exitF("Failed to get file: %s", err.Error())
- }
+ errorF(err, "Failed to get file: %s", err)
res, err := getFile.Download()
- if err != nil {
- exitF("Failed to download file: %s", err.Error())
- }
+ errorF(err, "Failed to download file: %s", err)
// Close body on function exit
defer res.Body.Close()
@@ -51,18 +45,14 @@ func (self *Drive) Download(args DownloadFileArgs) {
// Create new file
outFile, err := os.Create(f.Name)
- if err != nil {
- exitF("Unable to create new file: %s", err.Error())
- }
+ errorF(err, "Unable to create new file: %s", err)
// Close file on function exit
defer outFile.Close()
// Save file to disk
bytes, err := io.Copy(outFile, res.Body)
- if err != nil {
- exitF("Failed saving file: %s", err.Error())
- }
+ errorF(err, "Failed saving file: %s", err)
fmt.Printf("Downloaded '%s' at %s, total %d\n", f.Name, "x/s", bytes)
@@ -77,14 +67,10 @@ func (self *Drive) Upload(args UploadFileArgs) {
//}
srcFile, err := os.Open(args.Path)
- if err != nil {
- exitF("Failed to open file: %s", err.Error())
- }
+ errorF(err, "Failed to open file: %s", err)
srcFileInfo, err := srcFile.Stat()
- if err != nil {
- exitF("Failed to read file metadata: %s", err.Error())
- }
+ errorF(err, "Failed to read file metadata: %s", err)
// Instantiate empty drive file
dstFile := &drive.File{}
@@ -109,9 +95,7 @@ func (self *Drive) Upload(args UploadFileArgs) {
}
f, err := self.service.Files.Create(dstFile).ResumableMedia(context.Background(), srcFile, srcFileInfo.Size(), dstFile.MimeType).Do()
- if err != nil {
- exitF("Failed to upload file: %s", err.Error())
- }
+ errorF(err, "Failed to upload file: %s", err)
fmt.Printf("Uploaded '%s' at %s, total %d\n", f.Name, "x/s", f.Size)
//if args.Share {
diff --git a/drive/util.go b/drive/util.go
index db48d28..8dda213 100644
--- a/drive/util.go
+++ b/drive/util.go
@@ -5,6 +5,16 @@ import (
"os"
)
+func errorF(err error, format string, a ...interface{}) {
+ if err == nil {
+ return
+ }
+
+ fmt.Fprintf(os.Stderr, format, a...)
+ fmt.Println("")
+ os.Exit(1)
+}
+
func exitF(format string, a ...interface{}) {
fmt.Fprintf(os.Stderr, format, a...)
fmt.Println("")