1// Copyright 2017 Google LLC. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5package main 6 7import ( 8 "fmt" 9 "log" 10 "net/http" 11 "os" 12 13 drive "google.golang.org/api/drive/v2" 14) 15 16func init() { 17 registerDemo("drive", drive.DriveScope, driveMain) 18} 19 20func driveMain(client *http.Client, argv []string) { 21 if len(argv) != 1 { 22 fmt.Fprintln(os.Stderr, "Usage: drive filename (to upload a file)") 23 return 24 } 25 26 service, err := drive.New(client) 27 if err != nil { 28 log.Fatalf("Unable to create Drive service: %v", err) 29 } 30 31 filename := argv[0] 32 33 goFile, err := os.Open(filename) 34 if err != nil { 35 log.Fatalf("error opening %q: %v", filename, err) 36 } 37 driveFile, err := service.Files.Insert(&drive.File{Title: filename}).Media(goFile).Do() 38 log.Printf("Got drive.File, err: %#v, %v", driveFile, err) 39} 40