github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/worker/singular/shim.go (about) 1 // Copyright 2016 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package singular 5 6 import ( 7 "github.com/juju/errors" 8 "gopkg.in/juju/names.v2" 9 "gopkg.in/juju/worker.v1" 10 11 "github.com/juju/juju/api/base" 12 "github.com/juju/juju/api/singular" 13 ) 14 15 // NewFacade creates a Facade from an APICaller and an entity for which 16 // administrative control will be claimed. It's a suitable default value 17 // for ManifoldConfig.NewFacade. 18 func NewFacade(apiCaller base.APICaller, claimant names.MachineTag, entity names.Tag) (Facade, error) { 19 facade, err := singular.NewAPI(apiCaller, claimant, entity) 20 if err != nil { 21 return nil, errors.Trace(err) 22 } 23 return facade, nil 24 } 25 26 // NewWorker calls NewFlagWorker but returns a more convenient type. It's 27 // a suitable default value for ManifoldConfig.NewWorker. 28 func NewWorker(config FlagConfig) (worker.Worker, error) { 29 worker, err := NewFlagWorker(config) 30 if err != nil { 31 return nil, errors.Trace(err) 32 } 33 return worker, nil 34 }