Helper class used to retrieve Azure connection and credential parameters, validate them and compose a AzureFunctionConnectionParams value.
Inherits: IConfigurable, IReferenceable
Description
Helper class to retrieve Azure connection and credential parameters, validate them and compose a AzureFunctionConnectionParams value.
Configuration parameters
- connections:
- uri: full connection uri with specific app and function name
- protocol: connection protocol
- project_id: is your Google Cloud Platform project ID
- region: is the region where your function is deployed
- function_name: is the name of the HTTP function you deployed
- credentials:
- auth_token: Google-generated ID token or null if using custom auth
References
- *:discovery:*:*:1.0 - (optional) IDiscovery services to resolve connection.
- *:credential-store:*:*:1.0 - (optional) credential stores to resolve credentials.
Fields
Instance methods
Configure
Configures a component by passing its configuration parameters.
public
void Configure(ConfigParams config)
- config: ConfigParams - configuration parameters to be set.
ResolveAsync
Resolves connection and credential parameters and generates a single AzureFunctionConnectionParams value.
public
Task<AzureFunctionConnectionParams> ResolveAsync(string correlationId)
- correlationId: string - (optional) transaction id used to trace execution through the call chain.
- returns: Task<AzureFunctionConnectionParams> - receives an AzureFunctionConnectionParams value or error.
SetReferences
Sets references to dependent components.
public
void SetReferences(IReferences references)
- references: IReferences - references to locate the component’s dependencies.
Examples
var config = ConfigParams.FromTuples(
"connection.uri", "http://myapp.azurewebsites.net/api/myfunction",
"connection.app_name", "myapp",
"connection.function_name", "myfunction",
"credential.auth_code", "XXXXXXXXXX",
);
var connectionResolver = new AzureFunctionConnectionResolver();
connectionResolver.Configure(config);
connectionResolver.SetReferences(references);
var connectionParams = await connectionResolver.ResolveAsync("123");