Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewIterator ¶
func NewIterator(ctx context.Context, bucket *blob.Bucket, opts Options, l *zap.Logger) (drivers.FileIterator, error)
NewIterator returns new instance of blobIterator the iterator keeps list of blob objects eagerly planned as per user's glob pattern and extract policies clients should call close once done to release all resources like closing the bucket the iterator takes responsibility of closing the bucket
Types ¶
type ObjectReader ¶
type ObjectReader struct {
// contains filtered or unexported fields
}
ObjectReader reads range of bytes from cloud objects implements io.ReaderAt and io.Seeker interfaces
func NewBlobObjectReader ¶
func NewBlobObjectReader(ctx context.Context, bucket *blob.Bucket, obj *blob.ListObject) *ObjectReader
NewBlobObjectReader returns new instance of ObjectReader
func (*ObjectReader) Close ¶
func (f *ObjectReader) Close() error
Close frees up resources if any clients should call Close once done with reader
func (*ObjectReader) Read ¶
func (f *ObjectReader) Read(p []byte) (int, error)
Read implements io.Reader interface
func (*ObjectReader) ReadAt ¶
func (f *ObjectReader) ReadAt(p []byte, off int64) (int, error)
ReadAt implements io.ReaderAt interface
type Options ¶
type Options struct { GlobMaxTotalSize int64 GlobMaxObjectsMatched int GlobMaxObjectsListed int64 GlobPageSize int ExtractPolicy *runtimev1.Source_ExtractPolicy GlobPattern string // Although at this point GlobMaxTotalSize and StorageLimitInBytes have same impl but // this is total size the source should consume on disk and is calculated upstream basis how much data one instance has already consumed // across other sources and the instance level limits StorageLimitInBytes int64 }
Click to show internal directories.
Click to hide internal directories.