mirror of
https://github.com/minio/minio.git
synced 2025-01-11 23:13:23 -05:00
parent
60e60f68dd
commit
fca4ee84c9
@ -355,8 +355,23 @@ func (n *hdfsObjects) listDirFactory() minio.ListDirFunc {
|
|||||||
|
|
||||||
// ListObjects lists all blobs in HDFS bucket filtered by prefix.
|
// ListObjects lists all blobs in HDFS bucket filtered by prefix.
|
||||||
func (n *hdfsObjects) ListObjects(ctx context.Context, bucket, prefix, marker, delimiter string, maxKeys int) (loi minio.ListObjectsInfo, err error) {
|
func (n *hdfsObjects) ListObjects(ctx context.Context, bucket, prefix, marker, delimiter string, maxKeys int) (loi minio.ListObjectsInfo, err error) {
|
||||||
|
if _, err := n.clnt.Stat(minio.PathJoin(hdfsSeparator, bucket)); err != nil {
|
||||||
|
return loi, hdfsToObjectErr(ctx, err, bucket)
|
||||||
|
}
|
||||||
|
|
||||||
getObjectInfo := func(ctx context.Context, bucket, entry string) (minio.ObjectInfo, error) {
|
getObjectInfo := func(ctx context.Context, bucket, entry string) (minio.ObjectInfo, error) {
|
||||||
return n.GetObjectInfo(ctx, bucket, entry, minio.ObjectOptions{})
|
fi, err := n.clnt.Stat(minio.PathJoin(hdfsSeparator, bucket, entry))
|
||||||
|
if err != nil {
|
||||||
|
return minio.ObjectInfo{}, hdfsToObjectErr(ctx, err, bucket, entry)
|
||||||
|
}
|
||||||
|
return minio.ObjectInfo{
|
||||||
|
Bucket: bucket,
|
||||||
|
Name: entry,
|
||||||
|
ModTime: fi.ModTime(),
|
||||||
|
Size: fi.Size(),
|
||||||
|
IsDir: fi.IsDir(),
|
||||||
|
AccTime: fi.(*hdfs.FileInfo).AccessTime(),
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return minio.ListObjects(ctx, n, bucket, prefix, marker, delimiter, maxKeys, n.listPool, n.listDirFactory(), getObjectInfo, getObjectInfo)
|
return minio.ListObjects(ctx, n, bucket, prefix, marker, delimiter, maxKeys, n.listPool, n.listDirFactory(), getObjectInfo, getObjectInfo)
|
||||||
|
Loading…
Reference in New Issue
Block a user