mirror of
https://github.com/minio/mc.git
synced 2025-11-14 23:42:27 +03:00
Remove delimiter constant, use c.hostURL.Separator
This commit is contained in:
@@ -29,8 +29,6 @@ import (
|
|||||||
"github.com/minio/minio/pkg/iodine"
|
"github.com/minio/minio/pkg/iodine"
|
||||||
)
|
)
|
||||||
|
|
||||||
const delimiter = "/"
|
|
||||||
|
|
||||||
// Config - see http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?RESTAuthentication.html
|
// Config - see http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?RESTAuthentication.html
|
||||||
type Config struct {
|
type Config struct {
|
||||||
AccessKeyID string
|
AccessKeyID string
|
||||||
@@ -188,7 +186,7 @@ func (c *s3Client) Stat() (*client.Content, error) {
|
|||||||
|
|
||||||
// url2BucketAndObject gives bucketName and objectName from URL path
|
// url2BucketAndObject gives bucketName and objectName from URL path
|
||||||
func (c *s3Client) url2BucketAndObject() (bucketName, objectName string) {
|
func (c *s3Client) url2BucketAndObject() (bucketName, objectName string) {
|
||||||
splits := strings.SplitN(c.hostURL.Path, delimiter, 3)
|
splits := strings.SplitN(c.hostURL.Path, string(c.hostURL.Separator), 3)
|
||||||
switch len(splits) {
|
switch len(splits) {
|
||||||
case 0, 1:
|
case 0, 1:
|
||||||
bucketName = ""
|
bucketName = ""
|
||||||
@@ -263,14 +261,14 @@ func (c *s3Client) listInRoutine(contentCh chan client.ContentOnChannel) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
content := new(client.Content)
|
content := new(client.Content)
|
||||||
normalizedPrefix := strings.TrimSuffix(o, delimiter) + delimiter
|
normalizedPrefix := strings.TrimSuffix(o, string(c.hostURL.Separator)) + string(c.hostURL.Separator)
|
||||||
normalizedKey := object.Stat.Key
|
normalizedKey := object.Stat.Key
|
||||||
if normalizedPrefix != object.Stat.Key && strings.HasPrefix(object.Stat.Key, normalizedPrefix) {
|
if normalizedPrefix != object.Stat.Key && strings.HasPrefix(object.Stat.Key, normalizedPrefix) {
|
||||||
normalizedKey = strings.TrimPrefix(object.Stat.Key, normalizedPrefix)
|
normalizedKey = strings.TrimPrefix(object.Stat.Key, normalizedPrefix)
|
||||||
}
|
}
|
||||||
content.Name = normalizedKey
|
content.Name = normalizedKey
|
||||||
switch {
|
switch {
|
||||||
case strings.HasSuffix(object.Stat.Key, delimiter):
|
case strings.HasSuffix(object.Stat.Key, string(c.hostURL.Separator)):
|
||||||
content.Time = time.Now()
|
content.Time = time.Now()
|
||||||
content.Type = os.ModeDir
|
content.Type = os.ModeDir
|
||||||
default:
|
default:
|
||||||
@@ -339,7 +337,7 @@ func (c *s3Client) listRecursiveInRoutine(contentCh chan client.ContentOnChannel
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
if strings.HasSuffix(o, delimiter) {
|
if strings.HasSuffix(o, string(c.hostURL.Separator)) {
|
||||||
normalizedKey = strings.TrimPrefix(object.Stat.Key, o)
|
normalizedKey = strings.TrimPrefix(object.Stat.Key, o)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ func (s *MySuite) TestBucketOperations(c *C) {
|
|||||||
err = s3c.SetBucketACL("public-read-write")
|
err = s3c.SetBucketACL("public-read-write")
|
||||||
c.Assert(err, IsNil)
|
c.Assert(err, IsNil)
|
||||||
|
|
||||||
conf.HostURL = server.URL + delimiter
|
conf.HostURL = server.URL + string(s3c.URL().Separator)
|
||||||
s3c, err = New(conf)
|
s3c, err = New(conf)
|
||||||
c.Assert(err, IsNil)
|
c.Assert(err, IsNil)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user