Interface IFlowModule
- Namespace
- Crosser.EdgeNode.Flows.Abstractions
- Assembly
- Crosser.EdgeNode.Flows.Abstractions.dll
Base class for all modules.
public interface IFlowModule : IDisposable
- Inherited Members
Properties
Categories
List<string> Categories { get; set; }
Property Value
Debug
bool Debug { get; set; }
Property Value
Description
string Description { get; }
Property Value
Disabled
bool Disabled { get; set; }
Property Value
FlowContext
[JsonIgnore]
RepositoryInstance<string, dynamic> FlowContext { get; }
Property Value
- RepositoryInstance<string, dynamic>
FlowId
Guid FlowId { get; set; }
Property Value
FlowName
string FlowName { get; }
Property Value
FlowStatistics
[Obsolete("Will be removed in the next major version")]
[JsonIgnore]
FlowStatistics FlowStatistics { get; set; }
Property Value
HaltOnError
bool HaltOnError { get; set; }
Property Value
HasInput
bool HasInput { get; set; }
Property Value
HasOutput
bool HasOutput { get; }
Property Value
Id
Guid Id { get; set; }
Property Value
Index
int Index { get; set; }
Property Value
Logger
ILog? Logger { get; }
Property Value
- ILog
ModuleProtocol
[Obsolete("Will be removed in the next major version")]
FlowModuleProtocol ModuleProtocol { get; set; }
Property Value
ModuleStatistics
[Obsolete("Will be removed in the next major version")]
[JsonIgnore]
FlowModuleStatistics ModuleStatistics { get; set; }
Property Value
ModuleType
FlowModuleType ModuleType { get; set; }
Property Value
ModuleVersion
string ModuleVersion { get; set; }
Property Value
Name
string Name { get; set; }
Property Value
OnDebug
[JsonIgnore]
EventHandler<ModuleDebugMessage>? OnDebug { get; set; }
Property Value
- EventHandler<ModuleDebugMessage>
OnError
[JsonIgnore]
EventHandler<FlowModuleException>? OnError { get; set; }
Property Value
OnFlowDataReceived
[Obsolete("Will be removed in the next major version")]
[JsonIgnore]
EventHandler<FlowStatisticsData>? OnFlowDataReceived { get; set; }
Property Value
- EventHandler<FlowStatisticsData>
OnFlowDataSent
[Obsolete("Will be removed in the next major version")]
[JsonIgnore]
EventHandler<FlowStatisticsData>? OnFlowDataSent { get; set; }
Property Value
- EventHandler<FlowStatisticsData>
OnMessageDeadLetter
[JsonIgnore]
EventHandler<MessageEvent>? OnMessageDeadLetter { get; set; }
Property Value
OnMessageDropped
[JsonIgnore]
EventHandler<MessageEvent>? OnMessageDropped { get; set; }
Property Value
OnModuleDataReceived
[Obsolete("Will be removed in the next major version")]
[JsonIgnore]
EventHandler<FlowModuleStatisticsData>? OnModuleDataReceived { get; set; }
Property Value
- EventHandler<FlowModuleStatisticsData>
OnModuleDataSent
[Obsolete("Will be removed in the next major version")]
[JsonIgnore]
EventHandler<FlowModuleStatisticsData>? OnModuleDataSent { get; set; }
Property Value
- EventHandler<FlowModuleStatisticsData>
OnStatusChanged
[JsonIgnore]
EventHandler<ModuleStatusEvent>? OnStatusChanged { get; set; }
Property Value
OnWarning
[JsonIgnore]
EventHandler<FlowModuleException>? OnWarning { get; set; }
Property Value
Outputs
List<RepositoryInstance<Guid, IFlowModule?>> Outputs { get; set; }
Property Value
- List<RepositoryInstance<Guid, IFlowModule>>
ReceivesInputFromMultipleModules
bool ReceivesInputFromMultipleModules { get; set; }
Property Value
RemoteSessionEnabled
bool RemoteSessionEnabled { get; set; }
Property Value
Resources
IList<ResourceBase> Resources { get; set; }
Property Value
Settings
FlowModuleSettings Settings { get; }
Property Value
Status
Status Status { get; }
Property Value
Topic
[Obsolete("Will be removed in the next major version")]
string? Topic { get; set; }
Property Value
Type
string Type { get; }
Property Value
UserFriendlyName
string UserFriendlyName { get; }
Property Value
Methods
CanStart()
[Obsolete("Use Initialize and Start to handle and return errors")]
IError? CanStart()
Returns
- IError
FlowDefinitionId()
Guid FlowDefinitionId()
Returns
Initialize()
Task<IError?> Initialize()
Returns
- Task<IError>
InitializeInteractivity()
Override this method and register your module interactivity methods
void InitializeInteractivity()
LoadSettings(string)
void LoadSettings(string settingsAsJson)
Parameters
settingsAsJsonstring
Receive(IFlowMessage)
Task Receive(IFlowMessage message)
Parameters
messageIFlowMessage
Returns
ReceiveFrom(IFlowModule, int)
IFlowModule ReceiveFrom(IFlowModule module, int ix = 0)
Parameters
moduleIFlowModuleixint
Returns
SendTo(IFlowModule, int)
IFlowModule SendTo(IFlowModule module, int ix = 0)
Parameters
moduleIFlowModuleixint
Returns
SetStatus(Status)
void SetStatus(Status status)
Parameters
statusStatus
SetStatus(Status, string)
void SetStatus(Status status, string message)
Parameters
SetStatus(Status, string, bool, Exception)
void SetStatus(Status status, string message, bool force, Exception exception)
Parameters
Start()
Task<IError?> Start()
Returns
- Task<IError>
Stop()
Task Stop()
Returns
ValidateSettings(SettingsValidator)
void ValidateSettings(SettingsValidator validator)
Parameters
validatorSettingsValidator