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

     1  // Copyright 2016 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package migrationmaster
     5  
     6  import (
     7  	"github.com/juju/errors"
     8  	"github.com/juju/worker/v3"
     9  
    10  	"github.com/juju/juju/api/base"
    11  	"github.com/juju/juju/api/controller/migrationmaster"
    12  	"github.com/juju/juju/api/watcher"
    13  )
    14  
    15  // NewFacade attempts to create a new facade for the migration master
    16  func NewFacade(apiCaller base.APICaller) (Facade, error) {
    17  	facade := migrationmaster.NewClient(apiCaller, watcher.NewNotifyWatcher)
    18  	return facade, nil
    19  }
    20  
    21  // NewWorker creates a new Worker from the config supplied.
    22  func NewWorker(config Config) (worker.Worker, error) {
    23  	worker, err := New(config)
    24  	if err != nil {
    25  		return nil, errors.Trace(err)
    26  	}
    27  	return worker, nil
    28  }