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  }