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 }