github.com/axw/juju@v0.0.0-20161005053422-4bd6544d08d4/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/juju/apiserver/common" 10 "github.com/juju/juju/apiserver/facade" 11 "github.com/juju/juju/state" 12 ) 13 14 func init() { 15 common.RegisterStandardFacade("Resumer", 2, NewResumerAPI) 16 } 17 18 // ResumerAPI implements the API used by the resumer worker. 19 type ResumerAPI struct { 20 st stateInterface 21 auth facade.Authorizer 22 } 23 24 // NewResumerAPI creates a new instance of the Resumer API. 25 func NewResumerAPI(st *state.State, _ facade.Resources, authorizer facade.Authorizer) (*ResumerAPI, error) { 26 if !authorizer.AuthModelManager() { 27 return nil, common.ErrPerm 28 } 29 return &ResumerAPI{ 30 st: getState(st), 31 auth: authorizer, 32 }, nil 33 } 34 35 func (api *ResumerAPI) ResumeTransactions() error { 36 return api.st.ResumeTransactions() 37 }