Package cacher provides various blobref fetching caching mechanisms.



    This section is empty.


    This section is empty.


    This section is empty.


    type CachingFetcher

    type CachingFetcher struct {
    	// contains filtered or unexported fields

      A CachingFetcher is a blob.Fetcher and a blob.SeekFetcher.

      func NewCachingFetcher

      func NewCachingFetcher(cache blobserver.Cache, fetcher blob.Fetcher) *CachingFetcher

        NewCachingFetcher returns a CachingFetcher that fetches from fetcher and writes to and serves from cache.

        func (*CachingFetcher) Fetch

        func (cf *CachingFetcher) Fetch(br blob.Ref) (content io.ReadCloser, size uint32, err error)

        func (*CachingFetcher) SetCacheHitHook

        func (cf *CachingFetcher) SetCacheHitHook(fn func(br blob.Ref, rc io.ReadCloser) (io.ReadCloser, error))

          SetCacheHitHook sets a function that will modify the return values from Fetch in the case of a cache hit. Its purpose is to add potential side-effects from calling the Fetcher that would have happened if we had had a cache miss. It is the responsibility of fn to return a ReadCloser equivalent to the state that rc was given in.

          type DiskCache

          type DiskCache struct {
          	// Root is the temp directory being used to store files.
          	// It is available mostly for debug printing.
          	Root string
          	// contains filtered or unexported fields

            A DiskCache is a blob.Fetcher that serves from a local temp directory and is backed by a another blob.Fetcher (usually the pkg/client HTTP client).

            func NewDiskCache

            func NewDiskCache(fetcher blob.Fetcher) (*DiskCache, error)

              NewDiskCache returns a new DiskCache from a Fetcher, which is usually the pkg/client HTTP client (which typically has much higher latency and lower bandwidth than local disk).

              func (*DiskCache) Clean

              func (dc *DiskCache) Clean()

                Clean cleans some or all of the DiskCache.

                Source Files