vendor: update github.com/dropbox/dropbox-sdk-go-unofficial

This commit is contained in:
Nick Craig-Wood
2017-09-30 08:10:50 +01:00
parent 6390bb2b09
commit 29e2744155
25 changed files with 4222 additions and 1283 deletions
@@ -1,7 +1,7 @@
#! /usr/bin/env bash
set -euo pipefail
if [[ $# -ne 0 ]]; then
if [[ $# -gt 1 ]]; then
echo "$0: Not expecting any command-line arguments, got $#." 1>&2
exit 1
fi
@@ -15,7 +15,7 @@ stone -v -a :all go_types.stoneg.py "$gen_dir" "$spec_dir"/*.stone
stone -v -a :all go_client.stoneg.py "$gen_dir" "$spec_dir"/*.stone
# Update SDK and API spec versions
sdk_version="1.0.0-beta"
sdk_version=${1:-"1.0.0-beta"}
pushd ${spec_dir}
spec_version=$(git rev-parse --short HEAD)
popd
@@ -1,7 +1,7 @@
import os
from stone.generator import CodeGenerator
from stone.data_type import (
from stone.backend import CodeBackend
from stone.ir import (
is_void_type,
is_struct_type
)
@@ -14,7 +14,7 @@ from go_helpers import (
)
class GoClientGenerator(CodeGenerator):
class GoClientBackend(CodeBackend):
def generate(self, api):
for namespace in api.namespaces.values():
if len(namespace.routes) > 0:
@@ -120,7 +120,7 @@ class GoClientGenerator(CodeGenerator):
headers = {}
if not is_void_type(route.arg_data_type):
if host == 'content':
if host == 'content' or style in ['upload', 'download']:
headers["Dropbox-API-Arg"] = "string(b)"
else:
headers["Content-Type"] = '"application/json"'
@@ -1,5 +1,5 @@
from stone.api import (ApiNamespace, ApiRoute)
from stone.data_type import (
from stone.ir import (ApiNamespace, ApiRoute)
from stone.ir import (
Boolean,
Float32,
Float64,
@@ -15,7 +15,7 @@ from stone.data_type import (
is_struct_type,
Void,
)
from stone.target import helpers
from stone.backends import helpers
HEADER = """\
// Copyright (c) Dropbox, Inc.
@@ -23,9 +23,9 @@ package files
import "encoding/json"
type listFolderResult struct {
Entries []metadataUnion `json:"entries"`
Cursor string `json:"cursor"`
HasMore bool `json:"has_more"`
Entries []json.RawMessage `json:"entries"`
Cursor string `json:"cursor"`
HasMore bool `json:"has_more"`
}
// UnmarshalJSON deserializes into a ListFolderResult instance
@@ -38,21 +38,18 @@ func (r *ListFolderResult) UnmarshalJSON(b []byte) error {
r.HasMore = l.HasMore
r.Entries = make([]IsMetadata, len(l.Entries))
for i, e := range l.Entries {
switch e.Tag {
case "file":
r.Entries[i] = e.File
case "folder":
r.Entries[i] = e.Folder
case "deleted":
r.Entries[i] = e.Deleted
metadata, err := IsMetadataFromJSON(e)
if err != nil {
return err
}
r.Entries[i] = metadata
}
return nil
}
type searchMatch struct {
MatchType *SearchMatchType `json:"match_type"`
Metadata metadataUnion `json:"metadata"`
Metadata json.RawMessage `json:"metadata"`
}
// UnmarshalJSON deserializes into a SearchMatch instance
@@ -62,38 +59,51 @@ func (s *SearchMatch) UnmarshalJSON(b []byte) error {
return err
}
s.MatchType = m.MatchType
e := m.Metadata
switch e.Tag {
case "file":
s.Metadata = e.File
case "folder":
s.Metadata = e.Folder
case "deleted":
s.Metadata = e.Deleted
metadata, err := IsMetadataFromJSON(m.Metadata)
if err != nil {
return err
}
s.Metadata = metadata
return nil
}
type deleteResult struct {
FileOpsResult
Metadata metadataUnion `json:"metadata"`
Metadata json.RawMessage `json:"metadata"`
}
// UnmarshalJSON deserializes into a SearchMatch instance
// UnmarshalJSON deserializes into a DeleteResult instance
func (s *DeleteResult) UnmarshalJSON(b []byte) error {
var m deleteResult
if err := json.Unmarshal(b, &m); err != nil {
return err
}
s.FileOpsResult = m.FileOpsResult
e := m.Metadata
switch e.Tag {
case "file":
s.Metadata = e.File
case "folder":
s.Metadata = e.Folder
case "deleted":
s.Metadata = e.Deleted
metadata, err := IsMetadataFromJSON(m.Metadata)
if err != nil {
return err
}
s.Metadata = metadata
return nil
}
type relocationResult struct {
FileOpsResult
// Metadata : Metadata of the relocated object.
Metadata json.RawMessage `json:"metadata"`
}
// UnmarshalJSON deserializes into a RelocationResult instance
func (s *RelocationResult) UnmarshalJSON(b []byte) error {
var m relocationResult
if err := json.Unmarshal(b, &m); err != nil {
return err
}
s.FileOpsResult = m.FileOpsResult
metadata, err := IsMetadataFromJSON(m.Metadata)
if err != nil {
return err
}
s.Metadata = metadata
return nil
}
@@ -1,8 +1,8 @@
import os
import shutil
from stone.generator import CodeGenerator
from stone.data_type import (
from stone.backend import CodeBackend
from stone.ir import (
is_boolean_type,
is_nullable_type,
is_primitive_type,
@@ -19,7 +19,7 @@ from go_helpers import (
)
class GoTypesGenerator(CodeGenerator):
class GoTypesBackend(CodeBackend):
def generate(self, api):
rsrc_folder = os.path.join(os.path.dirname(__file__), 'go_rsrc')
shutil.copy(os.path.join(rsrc_folder, 'sdk.go'),