INNER CODE UNIT · Go
pluginSpecificConfig
andrearaponi/dito · cmd/main.go:105
pluginSpecificConfig = make(map[string]interface{}) // If not exists, pass an empty configuration
dito.Logger.Debug("Plugin configuration not found, using empty default.", slog.String("plugin_name", p.Name()))
}
// Initialize the plugin with its specific configuration
if err := p.Init(context.Background(), pluginSpecificConfig, dito); err != nil {
dito.Logger.Error("Failed to initialize plugin",
slog.String("plugin_name", p.Name()),
slog.Any("error", err))
os.Exit(1) // If a critical plugin fails, block startup
}
}
// Create a new HTTP request multiplexer (mux) to handle incoming requests.
mux := http.NewServeMux()
mux.Handle("/", cmid.LoggingMiddleware(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
handlers.DynamicProxyHandler(dito, w, r, plugins)