frostfs-s3-gw/api/data/listsession.go

34 lines
582 B
Go
Raw Normal View History

package data
import (
"context"
"sync/atomic"
)
type VersionsStream interface {
Next(ctx context.Context) (*NodeVersion, error)
}
type CommonSession struct {
Context context.Context
Cancel context.CancelFunc
Acquired atomic.Bool
}
type ListSession struct {
CommonSession
Next []*ExtendedNodeVersion
Stream VersionsStream
NamesMap map[string]struct{}
}
type MultipartInfoStream interface {
Next(marker, uploadID string) (*MultipartInfo, error)
}
type ListMultipartSession struct {
CommonSession
Next *MultipartInfo
Stream MultipartInfoStream
}