Class AggregatingExternalParametersProvider
OptimaJet.Workflow.Core.Runtime.AggregatingExternalParametersProvider
Combines registered IWorkflowExternalParametersProvider implementations into one provider and routes external parameter operations by parameter ownership and access mode.
Namespace: OptimaJet.Workflow.Core.Runtime
public class AggregatingExternalParametersProvider : BaseAggregatingProvider<IWorkflowExternalParametersProvider>, IWorkflowExternalParametersProviderType Hierarchy
- BaseAggregatingProvider<IWorkflowExternalParametersProvider>
- AggregatingExternalParametersProvider Current type
- Implemented interfaces
- AggregatingExternalParametersProvider Current type
Methods
public Task<object> GetExternalParameterAsync(string parameterName, ProcessInstance processInstance) #Parameters
parameterNameStringprocessInstanceProcessInstanceReturns
Task<Object>Exceptions
NotImplementedExceptionRemarks
public object GetExternalParameter(string parameterName, ProcessInstance processInstance) #Parameters
parameterNameStringprocessInstanceProcessInstanceReturns
ObjectExceptions
NotImplementedExceptionRemarks
public Task SetExternalParameterAsync(string parameterName, object parameterValue, ProcessInstance processInstance) #Parameters
parameterNameStringparameterValueObjectprocessInstanceProcessInstanceReturns
TaskExceptions
NotImplementedExceptionRemarks
public void SetExternalParameter(string parameterName, object parameterValue, ProcessInstance processInstance) #Parameters
parameterNameStringparameterValueObjectprocessInstanceProcessInstanceExceptions
NotImplementedExceptionRemarks
public bool IsGetExternalParameterAsync(string parameterName, string schemeCode, ProcessInstance processInstance) #Parameters
parameterNameStringschemeCodeStringprocessInstanceProcessInstanceReturns
BooleanRemarks
public bool IsSetExternalParameterAsync(string parameterName, string schemeCode, ProcessInstance processInstance) #Parameters
parameterNameStringschemeCodeStringprocessInstanceProcessInstanceReturns
BooleanRemarks
public bool HasExternalParameter(string parameterName, string schemeCode, ProcessInstance processInstance) #Parameters
parameterNameStringschemeCodeStringprocessInstanceProcessInstanceReturns
BooleanRemarks
Remarks
For a scheme, both global providers and providers registered specifically for that scheme are applicable. Providers are searched from the most recently registered to the earliest, regardless of registration scope. A read or write is forwarded to the first provider that recognizes the parameter and whose synchronous or asynchronous mode matches the method being called. Providers with a different access mode are skipped.
AggregatingExternalParametersProvider.HasExternalParameter(string, string, ProcessInstance), AggregatingExternalParametersProvider.IsGetExternalParameterAsync(string, string, ProcessInstance), and AggregatingExternalParametersProvider.IsSetExternalParameterAsync(string, string, ProcessInstance) are aggregate queries: each returns true when any applicable provider returns true. The asynchronous-mode queries do not first require the same provider to report that it recognizes the parameter.