github.com/juju/juju@v0.0.0-20240327075706-a90865de2538/worker/charmdownloader/interfaces.go (about)

     1  // Copyright 2021 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package charmdownloader
     5  
     6  import (
     7  	"github.com/juju/names/v5"
     8  
     9  	"github.com/juju/juju/core/watcher"
    10  )
    11  
    12  // CharmDownloaderAPI describes the API exposed by the charm downloader facade.
    13  type CharmDownloaderAPI interface {
    14  	WatchApplicationsWithPendingCharms() (watcher.StringsWatcher, error)
    15  	DownloadApplicationCharms(applications []names.ApplicationTag) error
    16  }
    17  
    18  // Logger represents the methods used by the worker to log details.
    19  type Logger interface {
    20  	Tracef(string, ...interface{})
    21  	Debugf(string, ...interface{})
    22  	Warningf(string, ...interface{})
    23  	Infof(string, ...interface{})
    24  	Errorf(string, ...interface{})
    25  	Criticalf(string, ...interface{})
    26  }