github.com/cloud-green/juju@v0.0.0-20151002100041-a00291338d3d/apiserver/resumer/resumer.go (about) 1 // Copyright 2015 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 // The resumer package implements the API interface 5 // used by the resumer worker. 6 package resumer 7 8 import ( 9 "github.com/juju/loggo" 10 11 "github.com/juju/juju/apiserver/common" 12 "github.com/juju/juju/state" 13 ) 14 15 func init() { 16 common.RegisterStandardFacade("Resumer", 1, NewResumerAPI) 17 } 18 19 var logger = loggo.GetLogger("juju.apiserver.resumer") 20 21 // ResumerAPI implements the API used by the resumer worker. 22 type ResumerAPI struct { 23 st stateInterface 24 auth common.Authorizer 25 } 26 27 // NewResumerAPI creates a new instance of the Resumer API. 28 func NewResumerAPI(st *state.State, _ *common.Resources, authorizer common.Authorizer) (*ResumerAPI, error) { 29 if !authorizer.AuthEnvironManager() { 30 return nil, common.ErrPerm 31 } 32 return &ResumerAPI{ 33 st: getState(st), 34 auth: authorizer, 35 }, nil 36 } 37 38 func (api *ResumerAPI) ResumeTransactions() error { 39 return api.st.ResumeTransactions() 40 }