Versions in this module Expand all Collapse all v2 v2.0.2 Feb 11, 2026 Changes in this version + const ActionAbort + const ActionContinue + const DefaultPluginTimeout + const PluginName + var Handshake = goplugin.HandshakeConfig + var PluginMap = map[string]goplugin.Plugin + func NewFiberMiddleware(p MiddlewarePlugin, timeout time.Duration) fiber.Handler + func NewFiberMiddlewareChain(mgr *Manager, pluginNames []string, timeout time.Duration) ([]fiber.Handler, error) + func Serve(impl MiddlewarePlugin) + type ConfigureResult struct + ErrorMessage string + Success bool + type GRPCClient struct + func (c *GRPCClient) Configure(ctx context.Context, settings *PluginSettings) (*ConfigureResult, error) + func (c *GRPCClient) HandleRequest(ctx context.Context, req *Request) (*Response, error) + func (c *GRPCClient) HealthCheck(ctx context.Context) (*HealthCheckResult, error) + type GRPCServer struct + Impl MiddlewarePlugin + func (s *GRPCServer) Configure(ctx context.Context, req *pb.PluginConfig) (*pb.ConfigureResponse, error) + func (s *GRPCServer) HandleRequest(ctx context.Context, req *pb.HttpRequest) (*pb.HttpResponse, error) + func (s *GRPCServer) HealthCheck(ctx context.Context, _ *pb.Empty) (*pb.HealthCheckResponse, error) + type HealthCheckResult struct + Healthy bool + Message string + type Manager struct + func NewManager() *Manager + func (m *Manager) GetPlugin(name string) (MiddlewarePlugin, error) + func (m *Manager) LoadPlugin(name string, binaryPath string, settings map[string]string) error + func (m *Manager) Shutdown() + type MiddlewareGRPCPlugin struct + Impl MiddlewarePlugin + func (p *MiddlewareGRPCPlugin) GRPCClient(ctx context.Context, broker *goplugin.GRPCBroker, c *grpc.ClientConn) (interface{}, error) + func (p *MiddlewareGRPCPlugin) GRPCServer(broker *goplugin.GRPCBroker, s *grpc.Server) error + type MiddlewarePlugin interface + Configure func(ctx context.Context, settings *PluginSettings) (*ConfigureResult, error) + HandleRequest func(ctx context.Context, req *Request) (*Response, error) + HealthCheck func(ctx context.Context) (*HealthCheckResult, error) + type PluginInstance struct + Client *goplugin.Client + Name string + Plugin MiddlewarePlugin + type PluginSettings struct + Settings map[string]string + type Request struct + Body []byte + ClientIP string + Headers map[string]string + Method string + OriginalURL string + Path string + QueryParams map[string]string + type Response struct + Action string + Body []byte + Headers map[string]string + StatusCode int