(instance compat.PluginInstance, info compat.Info, userID uint)
| 397 | } |
| 398 | |
| 399 | func (m *Manager) createPluginConf(instance compat.PluginInstance, info compat.Info, userID uint) (*model.PluginConf, error) { |
| 400 | pluginConf := &model.PluginConf{ |
| 401 | UserID: userID, |
| 402 | ModulePath: info.ModulePath, |
| 403 | Token: auth.GenerateNotExistingToken(auth.GeneratePluginToken, m.pluginConfExists), |
| 404 | } |
| 405 | if compat.HasSupport(instance, compat.Configurer) { |
| 406 | pluginConf.Config, _ = yaml.Marshal(instance.DefaultConfig()) |
| 407 | } |
| 408 | if compat.HasSupport(instance, compat.Messenger) { |
| 409 | app := &model.Application{ |
| 410 | Token: auth.GenerateNotExistingToken(auth.GenerateApplicationToken, m.applicationExists), |
| 411 | Name: info.String(), |
| 412 | UserID: userID, |
| 413 | Internal: true, |
| 414 | Description: fmt.Sprintf("auto generated application for %s", info.ModulePath), |
| 415 | } |
| 416 | if err := m.db.CreateApplication(app); err != nil { |
| 417 | return nil, err |
| 418 | } |
| 419 | pluginConf.ApplicationID = app.ID |
| 420 | } |
| 421 | if err := m.db.CreatePluginConf(pluginConf); err != nil { |
| 422 | return nil, err |
| 423 | } |
| 424 | return pluginConf, nil |
| 425 | } |
no test coverage detected