// Create a new StorageClient object based on a configuration file. func (c *Config) NewClient() (dialects.StorageClient, error) { creds := credentials.NewStaticCredentials(c.AccessKeyID, c.SecretAccessKey, "") _, err := creds.Get() if err != nil { return nil, err } converterFunction, err := dialects.GetBatchConverterFunction(c.FileFormat) if err != nil { return nil, err } config := &aws.Config{ Region: &c.Region, Credentials: creds, Endpoint: &c.Endpoint, S3ForcePathStyle: aws.Bool(true)} return &S3Storage{ AccessKeyID: c.AccessKeyID, SecretAccessKey: c.SecretAccessKey, Bucket: c.Bucket, BlobPath: c.BlobPath, Region: c.Region, FileFormat: c.FileFormat, BatchConverter: converterFunction, Client: s3.New(session.New(), config)}, nil }
// Create a new StorageClient object based on a configuration file. func (c *Config) NewClient() (dialects.StorageClient, error) { serviceClient, err := storage.NewBasicClient(c.Account, c.AccessKey) if err != nil { return nil, err } converterFunction, err := dialects.GetBatchConverterFunction(c.FileFormat) if err != nil { return nil, err } return &BlobStorage{ Account: c.Account, AccessKey: c.AccessKey, BlobPath: c.BlobPath, Container: c.Container, FileFormat: c.FileFormat, BatchConverter: converterFunction, Client: serviceClient.GetBlobService()}, nil }