Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LeaseRenewingReference ¶
type LeaseRenewingReference[T any] interface { comparable GetLocalReference() object.LocalReference WithLocalReference(localReference object.LocalReference) T }
type LeaseRenewingUploader ¶
type LeaseRenewingUploader[TReference LeaseRenewingReference[TReference], TLease any] struct { // contains filtered or unexported fields }
LeaseRenewingUploader is a decorator for object.Uploader that intercepts results that indicate that an object is incomplete due to expired leases. For these objects, it recursively traverses all children until leases are complete.
func NewLeaseRenewingUploader ¶
func NewLeaseRenewingUploader[TReference LeaseRenewingReference[TReference], TLease any](base object.Uploader[TReference, TLease], objectStoreSemaphore *semaphore.Weighted, maximumUnfinalizedParentsLimit object.Limit) *LeaseRenewingUploader[TReference, TLease]
NewLeaseRenewingUploader creates a LeaseRenewingUploader that dectorates a provided object.Uploader.
func (*LeaseRenewingUploader[TReference, TLease]) ProcessSingleObject ¶
func (u *LeaseRenewingUploader[TReference, TLease]) ProcessSingleObject(ctx context.Context) bool
func (*LeaseRenewingUploader[TReference, TLease]) UploadObject ¶
func (u *LeaseRenewingUploader[TReference, TLease]) UploadObject(ctx context.Context, reference TReference, contents *object.Contents, childrenLeases []TLease, wantContentsIfIncomplete bool) (object.UploadObjectResult[TLease], error)
Click to show internal directories.
Click to hide internal directories.