1
0
mirror of https://github.com/rclone/rclone.git synced 2025-12-27 05:33:17 +00:00

vendor: update all dependencies to latest versions

This commit is contained in:
Nick Craig-Wood
2018-01-16 13:20:59 +00:00
parent 8e83fb6fb9
commit 7d3a17725d
4878 changed files with 1974229 additions and 201215 deletions

85
vendor/github.com/ncw/go-acd/changes.go generated vendored Normal file
View File

@@ -0,0 +1,85 @@
package acd
import (
"encoding/json"
"io"
"net/http"
)
// ChangesService provides access to incemental changes in the Amazon Cloud Drive API.
//
// See: https://developer.amazon.com/public/apis/experience/cloud-drive/content/changes
type ChangesService struct {
client *Client
}
// A ChangeSet is collection of node changes as received from the Changes API
type ChangeSet struct {
Checkpoint string `json:"checkpoint"`
Nodes []*Node `json:"nodes"`
Reset bool `json:"reset"`
StatusCode int `json:"statusCode"`
End bool `json:"end"`
}
// ChangesOptions contains all possible arguments for the Changes API
type ChangesOptions struct {
Checkpoint string `json:"checkpoint,omitempty"`
ChunkSize int `json:"chunkSize,omitempty"`
MaxNodes int `json:"maxNodes,omitempty"`
IncludePurged bool `json:"includePurged,omitempty,string"`
}
// GetChanges returns all the changes since opts.Checkpoint
func (s *ChangesService) GetChanges(opts *ChangesOptions) ([]*ChangeSet, *http.Response, error) {
var changeSets []*ChangeSet
resp, err := s.GetChangesFunc(opts, func(cs *ChangeSet, err error) error {
if err != nil {
return err
}
changeSets = append(changeSets, cs)
return nil
})
return changeSets, resp, err
}
// GetChangesChan gets all the changes since opts.Checkpoint sending each ChangeSet to the channel.
// The provided channel is closed before returning
func (s *ChangesService) GetChangesChan(opts *ChangesOptions, ch chan<- *ChangeSet) (*http.Response, error) {
defer close(ch)
return s.GetChangesFunc(opts, func(cs *ChangeSet, err error) error {
if err != nil {
return err
}
ch <- cs
return nil
})
}
// GetChangesFunc gets all the changes since opts.Checkpoint and calls f with the ChangeSet or the error received.
// If f returns a non nil value, GetChangesFunc exits and returns the given error.
func (s *ChangesService) GetChangesFunc(opts *ChangesOptions, f func(*ChangeSet, error) error) (*http.Response, error) {
req, err := s.client.NewMetadataRequest("POST", "changes", opts)
if err != nil {
return nil, err
}
resp, err := s.client.Do(req, nil)
if err != nil {
return resp, err
}
defer resp.Body.Close()
decoder := json.NewDecoder(resp.Body)
for {
changeSet := &ChangeSet{}
err := decoder.Decode(&changeSet)
if err == io.EOF {
return resp, nil
}
err = f(changeSet, err)
if err != nil {
return resp, err
}
}
}

View File

@@ -44,6 +44,7 @@ type Client struct {
// Services used for talking to different parts of the API.
Account *AccountService
Nodes *NodesService
Changes *ChangesService
}
// NewClient returns a new Amazon Cloud Drive API client. If a nil httpClient is
@@ -66,6 +67,7 @@ func NewClient(httpClient *http.Client) *Client {
c.Account = &AccountService{client: c}
c.Nodes = &NodesService{client: c}
c.Changes = &ChangesService{client: c}
return c
}

11
vendor/github.com/ncw/swift/slo.go generated vendored
View File

@@ -88,7 +88,10 @@ func (c *Connection) StaticLargeObjectMove(srcContainer string, srcObjectName st
return err
}
if err := c.createSLOManifest(dstContainer, dstObjectName, info.ContentType, container, segments); err != nil {
//copy only metadata during move (other headers might not be safe for copying)
headers = headers.ObjectMetadata().ObjectHeaders()
if err := c.createSLOManifest(dstContainer, dstObjectName, info.ContentType, container, segments, headers); err != nil {
return err
}
@@ -100,7 +103,7 @@ func (c *Connection) StaticLargeObjectMove(srcContainer string, srcObjectName st
}
// createSLOManifest creates a static large object manifest
func (c *Connection) createSLOManifest(container string, path string, contentType string, segmentContainer string, segments []Object) error {
func (c *Connection) createSLOManifest(container string, path string, contentType string, segmentContainer string, segments []Object, h Headers) error {
sloSegments := make([]swiftSegment, len(segments))
for i, segment := range segments {
sloSegments[i].Path = fmt.Sprintf("%s/%s", segmentContainer, segment.Name)
@@ -115,7 +118,7 @@ func (c *Connection) createSLOManifest(container string, path string, contentTyp
values := url.Values{}
values.Set("multipart-manifest", "put")
if _, err := c.objectPut(container, path, bytes.NewBuffer(content), false, "", contentType, nil, values); err != nil {
if _, err := c.objectPut(container, path, bytes.NewBuffer(content), false, "", contentType, h, values); err != nil {
return err
}
@@ -127,7 +130,7 @@ func (file *StaticLargeObjectCreateFile) Close() error {
}
func (file *StaticLargeObjectCreateFile) Flush() error {
if err := file.conn.createSLOManifest(file.container, file.objectName, file.contentType, file.segmentContainer, file.segments); err != nil {
if err := file.conn.createSLOManifest(file.container, file.objectName, file.contentType, file.segmentContainer, file.segments, file.headers); err != nil {
return err
}
return file.conn.waitForSegmentsToShowUp(file.container, file.objectName, file.Size())

View File

@@ -297,6 +297,7 @@ var (
TimeoutError = newError(408, "Timeout when reading or writing data")
Forbidden = newError(403, "Operation forbidden")
TooLargeObject = newError(413, "Too Large Object")
RateLimit = newError(498, "Rate Limit")
// Mappings for authentication errors
authErrorMap = errorMap{
@@ -311,6 +312,7 @@ var (
403: Forbidden,
404: ContainerNotFound,
409: ContainerNotEmpty,
498: RateLimit,
}
// Mappings for object errors
@@ -321,6 +323,7 @@ var (
404: ObjectNotFound,
413: TooLargeObject,
422: ObjectCorrupted,
498: RateLimit,
}
)

View File

@@ -106,7 +106,7 @@ func TestWatchdogReaderOnSlowNetwork(t *testing.T) {
b := make([]byte, len(byteString))
n, err := io.ReadFull(wr, b)
if err != nil || n != len(b) || !bytes.Equal(b, byteString) {
t.Fatal("Bad read %s %d", err, n)
t.Fatalf("Bad read %s %d", err, n)
}
checkTimer(t, firedChan, false)
@@ -129,9 +129,9 @@ func TestWatchdogReaderValidity(t *testing.T) {
b := make([]byte, len(byteString))
n, err := io.ReadFull(wr, b)
if err != nil || n != len(b) {
t.Fatal("Read error: %s", err)
t.Fatalf("Read error: %s", err)
}
if !bytes.Equal(b, byteString) {
t.Fatal("Bad read: %#v != %#v", string(b), string(byteString))
t.Fatalf("Bad read: %#v != %#v", string(b), string(byteString))
}
}