Extends: AzureFunction
Description
The CommandableAzureFunction allows you to create an abstract Azure Function function that acts as a container to instantiate and run components and expose them via an external entry point.
Important points
-
All actions are automatically generated for commands defined in ICommandable components. Each command is exposed as an action defined by the “cmd” parameter.
-
Container configuration for this Azure Function is stored in "./config/config.yml" file. But this path can be overridden by the CONFIG_PATH environment variable.
-
Note: This component has been deprecated. Use Azure AzureFunctionController instead.
References
- *:logger:*:*:1.0: (optional) ILogger components to pass log messages
- *:counters:*:*:1.0: (optional) ICounters components to pass collected measurements
- *:service:azure-function:*:1.0: (optional) IAzureFunctionController services to handle action requests.
- *:service:commandable-azure-function:*:1.0: (optional) IAzureFunctionController services to handle action requests.
Constructors
Creates a new instance of this Azure Function.
CommandableAzureFunction(String name, [String? description]) : super(name, description)
- name: string - (optional) container’s name (accessible via ContextInfo)
- description: string - (optional) container’s description (accessible via ContextInfo)
Instance methods
getParametrs
Returns body from Azure Function context. This method can be overloaded in child classes
Parameters getParametrs(Map<String, dynamic> context)
- context: any - Azure Function context.
- returns: Parameters - Returns Parameters from context
register
Registers all actions in this Azure Function.
void _registerCommandSet(CommandSet commandSet)
Examples
class MyAzureFunction extends CommandableAzureFunction {
IMyController _service;
...
MyAzureFunction()
/ super('mygroup', 'MyGroup Azure function'){
dependencyResolver.put(
'service',
Descriptor('mygroup','service','*','*','1.0')
);
}
var azureFunction = new MyAzureFunction();
azureFunction.run((err) => {
console.log("MyAzureFunction is started");
});