func (c payloads) registerHookContext() { if !markRegistered(payload.ComponentName, "hook-context") { return } unitercontext.RegisterComponentFunc(payload.ComponentName, func(config unitercontext.ComponentConfig) (jujuc.ContextComponent, error) { hctxClient := c.newUnitFacadeClient(config.APICaller) // TODO(ericsnow) Pass the unit's tag through to the component? component, err := context.NewContextAPI(hctxClient, config.DataDir) if err != nil { return nil, errors.Trace(err) } return component, nil }, ) c.registerHookContextCommands() c.registerHookContextFacade() }
// TODO(katco): This seems to be common across components. Pop up a // level and genericize? func (r resources) registerHookContext() { if markRegistered(resource.ComponentName, "hook-context") == false { return } unitercontext.RegisterComponentFunc( resource.ComponentName, func(config unitercontext.ComponentConfig) (jujuc.ContextComponent, error) { unitID := names.NewUnitTag(config.UnitName).String() hctxClient, err := r.newUnitFacadeClient(unitID, config.APICaller) if err != nil { return nil, errors.Trace(err) } // TODO(ericsnow) Pass the unit's tag through to the component? return context.NewContextAPI(hctxClient, config.DataDir), nil }, ) r.registerHookContextCommands() r.registerHookContextFacade() }