github.com/axw/juju@v0.0.0-20161005053422-4bd6544d08d4/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 10 "github.com/juju/juju/api/base" 11 "github.com/juju/juju/api/singular" 12 "github.com/juju/juju/worker" 13 ) 14 15 // NewFacade creates a Facade from an APICaller and a controller. It's a 16 // suitable default value for ManifoldConfig.NewFacade. 17 func NewFacade(apiCaller base.APICaller, controllerTag names.MachineTag) (Facade, error) { 18 facade, err := singular.NewAPI(apiCaller, controllerTag) 19 if err != nil { 20 return nil, errors.Trace(err) 21 } 22 return facade, nil 23 } 24 25 // NewWorker calls NewFlagWorker but returns a more convenient type. It's 26 // a suitable default value for ManifoldConfig.NewWorker. 27 func NewWorker(config FlagConfig) (worker.Worker, error) { 28 worker, err := NewFlagWorker(config) 29 if err != nil { 30 return nil, errors.Trace(err) 31 } 32 return worker, nil 33 }