226cf48c41
* move clients to internal/s3client * move Config and Client into common.go
28 lines
740 B
Go
28 lines
740 B
Go
// Copyright (C) 2018 Storj Labs, Inc.
|
|
// See LICENSE for copying information.
|
|
|
|
package s3client
|
|
|
|
// Config is the setup for a particular client
|
|
type Config struct {
|
|
S3Gateway string
|
|
Satellite string
|
|
AccessKey string
|
|
SecretKey string
|
|
APIKey string
|
|
EncryptionKey string
|
|
NoSSL bool
|
|
}
|
|
|
|
// Client is the common interface for different implementations
|
|
type Client interface {
|
|
MakeBucket(bucket, location string) error
|
|
RemoveBucket(bucket string) error
|
|
ListBuckets() ([]string, error)
|
|
|
|
Upload(bucket, objectName string, data []byte) error
|
|
Download(bucket, objectName string, buffer []byte) ([]byte, error)
|
|
Delete(bucket, objectName string) error
|
|
ListObjects(bucket, prefix string) ([]string, error)
|
|
}
|