Documentation
¶
Index ¶
- func ValidateAndBuildArguments(resourceProvider yamlkit.ResourceProvider, ...) ([]api.FunctionArgument, error)
- type FunctionHandler
- func (fh *FunctionHandler) GetConverter() configkit.ConfigConverter
- func (fh *FunctionHandler) GetHandlerImplementation(functionName string) FunctionImplementation
- func (fh *FunctionHandler) GetResourceProvider() yamlkit.ResourceProvider
- func (fh *FunctionHandler) Invoke(c echo.Context) error
- func (fh *FunctionHandler) InvokeCore(ctx context.Context, functionInvocation *api.FunctionInvocationRequest) (*api.FunctionInvocationResponse, error)
- func (fh *FunctionHandler) List(c echo.Context) error
- func (fh *FunctionHandler) ListCore() map[string]*FunctionRegistration
- func (fh *FunctionHandler) ListPaths(c echo.Context) error
- func (fh *FunctionHandler) RegisterFunction(functionName string, registration *FunctionRegistration) error
- func (fh *FunctionHandler) SetConverter(converter configkit.ConfigConverter)
- func (fh *FunctionHandler) SetPathRegistry(pathRegistry api.AttributeNameToResourceTypeToPathToVisitorInfoType)
- func (fh *FunctionHandler) SetResourceProvider(resourceProvider yamlkit.ResourceProvider)
- type FunctionImplementation
- type FunctionProvider
- type FunctionRegistration
- type FunctionRegistry
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ValidateAndBuildArguments ¶
func ValidateAndBuildArguments(resourceProvider yamlkit.ResourceProvider, functionContext *api.FunctionContext, invocation *api.FunctionInvocation, f *api.FunctionSignature) ([]api.FunctionArgument, error)
ValidateAndBuildArguments validates function arguments and builds an in-order argument list. It returns the validated arguments or an error if validation fails.
Types ¶
type FunctionHandler ¶
type FunctionHandler struct {
// contains filtered or unexported fields
}
func NewFunctionHandler ¶
func NewFunctionHandler() *FunctionHandler
func (*FunctionHandler) GetConverter ¶
func (fh *FunctionHandler) GetConverter() configkit.ConfigConverter
func (*FunctionHandler) GetHandlerImplementation ¶
func (fh *FunctionHandler) GetHandlerImplementation(functionName string) FunctionImplementation
func (*FunctionHandler) GetResourceProvider ¶
func (fh *FunctionHandler) GetResourceProvider() yamlkit.ResourceProvider
func (*FunctionHandler) InvokeCore ¶
func (fh *FunctionHandler) InvokeCore(ctx context.Context, functionInvocation *api.FunctionInvocationRequest) (*api.FunctionInvocationResponse, error)
func (*FunctionHandler) ListCore ¶
func (fh *FunctionHandler) ListCore() map[string]*FunctionRegistration
func (*FunctionHandler) RegisterFunction ¶
func (fh *FunctionHandler) RegisterFunction(functionName string, registration *FunctionRegistration) error
func (*FunctionHandler) SetConverter ¶
func (fh *FunctionHandler) SetConverter(converter configkit.ConfigConverter)
func (*FunctionHandler) SetPathRegistry ¶
func (fh *FunctionHandler) SetPathRegistry(pathRegistry api.AttributeNameToResourceTypeToPathToVisitorInfoType)
SetPathRegistry sets the path registry.
func (*FunctionHandler) SetResourceProvider ¶
func (fh *FunctionHandler) SetResourceProvider(resourceProvider yamlkit.ResourceProvider)
type FunctionImplementation ¶
type FunctionProvider ¶
type FunctionProvider interface {
RegisterFunctions(fh FunctionRegistry)
SetPathRegistry(fh FunctionRegistry)
GetToolchainPath() string
}
FunctionProvider defines the interface for a toolchain that registers functions.
type FunctionRegistration ¶
type FunctionRegistration struct {
api.FunctionSignature
Function FunctionImplementation `json:"-"` // implementation
}
type FunctionRegistry ¶
type FunctionRegistry interface {
RegisterFunction(functionName string, registration *FunctionRegistration) error
GetHandlerImplementation(functionName string) FunctionImplementation
SetPathRegistry(pathRegistry api.AttributeNameToResourceTypeToPathToVisitorInfoType)
SetConverter(converter configkit.ConfigConverter)
GetConverter() configkit.ConfigConverter
SetResourceProvider(resourceProvider yamlkit.ResourceProvider)
GetResourceProvider() yamlkit.ResourceProvider
}
FunctionRegistry defines the interface for registering functions. This allows decoupling internal packages from the concrete FunctionHandler implementation.
Click to show internal directories.
Click to hide internal directories.