...

Package scheduler

import "github.com/docker/distribution/registry/proxy/scheduler"
Overview
Index

Overview ▾

type TTLExpirationScheduler

TTLExpirationScheduler is a scheduler used to perform actions when TTLs expire

type TTLExpirationScheduler struct {
    sync.Mutex
    // contains filtered or unexported fields
}

func New

func New(ctx context.Context, driver driver.StorageDriver, path string) *TTLExpirationScheduler

New returns a new instance of the scheduler

func (*TTLExpirationScheduler) AddBlob

func (ttles *TTLExpirationScheduler) AddBlob(blobRef reference.Canonical, ttl time.Duration) error

AddBlob schedules a blob cleanup after ttl expires

func (*TTLExpirationScheduler) AddManifest

func (ttles *TTLExpirationScheduler) AddManifest(manifestRef reference.Canonical, ttl time.Duration) error

AddManifest schedules a manifest cleanup after ttl expires

func (*TTLExpirationScheduler) OnBlobExpire

func (ttles *TTLExpirationScheduler) OnBlobExpire(f expiryFunc)

OnBlobExpire is called when a scheduled blob's TTL expires

func (*TTLExpirationScheduler) OnManifestExpire

func (ttles *TTLExpirationScheduler) OnManifestExpire(f expiryFunc)

OnManifestExpire is called when a scheduled manifest's TTL expires

func (*TTLExpirationScheduler) Start

func (ttles *TTLExpirationScheduler) Start() error

Start starts the scheduler

func (*TTLExpirationScheduler) Stop

func (ttles *TTLExpirationScheduler) Stop()

Stop stops the scheduler.