35 lines
595 B
Go
35 lines
595 B
Go
package blob
|
|
|
|
import (
|
|
"context"
|
|
|
|
"forge.cadoles.com/arcad/edge/pkg/storage"
|
|
"github.com/pkg/errors"
|
|
)
|
|
|
|
type ListBlobInfoArgs struct {
|
|
BucketID BucketID
|
|
}
|
|
|
|
type ListBlobInfoReply struct {
|
|
BlobInfos []storage.BlobInfo
|
|
}
|
|
|
|
func (s *Service) ListBlobInfo(ctx context.Context, args *ListBlobInfoArgs, reply *ListBlobInfoReply) error {
|
|
bucket, err := s.getOpenedBucket(args.BucketID)
|
|
if err != nil {
|
|
return errors.WithStack(err)
|
|
}
|
|
|
|
blobInfos, err := bucket.List(ctx)
|
|
if err != nil {
|
|
return errors.WithStack(err)
|
|
}
|
|
|
|
*reply = ListBlobInfoReply{
|
|
BlobInfos: blobInfos,
|
|
}
|
|
|
|
return nil
|
|
}
|