Improve plugins builder.

This commit is contained in:
Ludovic Fernandez 2020-09-07 13:58:03 +02:00 committed by GitHub
parent 1dbee90d34
commit 66d151df77
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 22 additions and 10 deletions

View file

@ -28,7 +28,6 @@ import (
"github.com/containous/traefik/v2/pkg/middlewares/stripprefix"
"github.com/containous/traefik/v2/pkg/middlewares/stripprefixregex"
"github.com/containous/traefik/v2/pkg/middlewares/tracing"
"github.com/containous/traefik/v2/pkg/plugins"
"github.com/containous/traefik/v2/pkg/server/provider"
)
@ -41,7 +40,7 @@ const (
// Builder the middleware builder.
type Builder struct {
configs map[string]*runtime.MiddlewareInfo
pluginBuilder *plugins.Builder
pluginBuilder PluginsBuilder
serviceBuilder serviceBuilder
}
@ -50,7 +49,7 @@ type serviceBuilder interface {
}
// NewBuilder creates a new Builder.
func NewBuilder(configs map[string]*runtime.MiddlewareInfo, serviceBuilder serviceBuilder, pluginBuilder *plugins.Builder) *Builder {
func NewBuilder(configs map[string]*runtime.MiddlewareInfo, serviceBuilder serviceBuilder, pluginBuilder PluginsBuilder) *Builder {
return &Builder{configs: configs, serviceBuilder: serviceBuilder, pluginBuilder: pluginBuilder}
}
@ -351,13 +350,13 @@ func (b *Builder) buildConstructor(ctx context.Context, middlewareName string) (
return nil, err
}
m, err := b.pluginBuilder.Build(pluginType, rawPluginConfig, middlewareName)
plug, err := b.pluginBuilder.Build(pluginType, rawPluginConfig, middlewareName)
if err != nil {
return nil, err
}
middleware = func(next http.Handler) (http.Handler, error) {
return m.NewHandler(ctx, next)
return plug(ctx, next)
}
}