Additional test wotkflow scenarios
This commit is contained in:
parent
85f3326c20
commit
dded9bc884
|
|
@ -20,7 +20,10 @@ namespace Elsa.Samples.WatchDirectoryWorker
|
|||
.AddElsa(options => options
|
||||
.AddConsoleActivities()
|
||||
.AddFileActivities()
|
||||
.AddWorkflow<WatchDirectoryWorkflow>());
|
||||
.AddWorkflow<WatchDirectoryCreatedWorkflow>()
|
||||
.AddWorkflow<WatchDirectoryChangedWorkflow>()
|
||||
.AddWorkflow<WatchDirectoryDatWorkflow>()
|
||||
.AddWorkflow<WatchDirectoryDeletedWorkflow>());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,23 @@
|
|||
using Elsa.Activities.Console;
|
||||
using Elsa.Activities.File;
|
||||
using Elsa.Activities.File.Models;
|
||||
using Elsa.Builders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Samples.WatchDirectoryWorker.Workflows
|
||||
{
|
||||
public class WatchDirectoryChangedWorkflow : IWorkflow
|
||||
{
|
||||
private readonly string _systemRoot = Path.GetPathRoot(Environment.SystemDirectory);
|
||||
|
||||
public void Build(IWorkflowBuilder builder) => builder.WatchDirectory(setup => setup.WithPath(Path.Combine(_systemRoot, "Temp\\FileWatchers"))
|
||||
.WithPattern("*.txt")
|
||||
.WithChangeTypes(WatcherChangeTypes.Changed))
|
||||
.WriteLine(setup => setup.WithText(context => $"{GetType().Name}-{context.GetInput<FileSystemEvent>().FullPath}-{context.GetInput<FileSystemEvent>().ChangeType}"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
using Elsa.Activities.Console;
|
||||
using Elsa.Activities.File;
|
||||
using Elsa.Activities.File.Models;
|
||||
using Elsa.Builders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Samples.WatchDirectoryWorker.Workflows
|
||||
{
|
||||
public class WatchDirectoryCreatedWorkflow : IWorkflow
|
||||
{
|
||||
private readonly string _systemRoot = Path.GetPathRoot(Environment.SystemDirectory);
|
||||
|
||||
public void Build(IWorkflowBuilder builder) => builder.WatchDirectory(setup => setup.WithPath(Path.Combine(_systemRoot,"Temp\\FileWatchers"))
|
||||
.WithPattern("*.txt")
|
||||
.WithChangeTypes(WatcherChangeTypes.Created))
|
||||
.WriteLine(setup => setup.WithText(context => $"{GetType().Name}-{context.GetInput<FileSystemEvent>().FullPath}-{context.GetInput<FileSystemEvent>().ChangeType}"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
using Elsa.Activities.Console;
|
||||
using Elsa.Activities.File;
|
||||
using Elsa.Activities.File.Models;
|
||||
using Elsa.Builders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Samples.WatchDirectoryWorker.Workflows
|
||||
{
|
||||
public class WatchDirectoryDatWorkflow : IWorkflow
|
||||
{
|
||||
private readonly string _systemRoot = Path.GetPathRoot(Environment.SystemDirectory);
|
||||
|
||||
public void Build(IWorkflowBuilder builder) => builder.WatchDirectory(setup => setup.WithPath(Path.Combine(_systemRoot,"Temp\\FileWatchers"))
|
||||
.WithPattern("*.dat"))
|
||||
.WriteLine(setup => setup.WithText(context => $"{GetType().Name}-{context.GetInput<FileSystemEvent>().FullPath}-{context.GetInput<FileSystemEvent>().ChangeType}"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
using Elsa.Activities.Console;
|
||||
using Elsa.Activities.File;
|
||||
using Elsa.Activities.File.Models;
|
||||
using Elsa.Builders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Samples.WatchDirectoryWorker.Workflows
|
||||
{
|
||||
public class WatchDirectoryDeletedWorkflow : IWorkflow
|
||||
{
|
||||
private readonly string _systemRoot = Path.GetPathRoot(Environment.SystemDirectory);
|
||||
|
||||
public void Build(IWorkflowBuilder builder) => builder.WatchDirectory(setup => setup.WithPath(Path.Combine(_systemRoot,"Temp\\FileWatchers"))
|
||||
.WithPattern("*.txt")
|
||||
.WithChangeTypes(WatcherChangeTypes.Deleted))
|
||||
.WriteLine(setup => setup.WithText(context => $"{GetType().Name}-{context.GetInput<FileSystemEvent>().FullPath}-{context.GetInput<FileSystemEvent>().ChangeType}"));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
using Elsa.Activities.Console;
|
||||
using Elsa.Activities.File;
|
||||
using Elsa.Activities.File.Models;
|
||||
using Elsa.Builders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Samples.WatchDirectoryWorker.Workflows
|
||||
{
|
||||
public class WatchDirectoryWorkflow : IWorkflow
|
||||
{
|
||||
public void Build(IWorkflowBuilder builder) => builder.WatchDirectory(setup => setup.WithPath("C:\\Temp")
|
||||
.WithPattern("*.txt"))
|
||||
.WriteLine(setup => setup.WithText(async context => context.GetInput<FileSystemEvent>().FullPath));
|
||||
}
|
||||
}
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"Logging": {
|
||||
"LogLevel": {
|
||||
"Default": "Information",
|
||||
"Microsoft": "Information",
|
||||
"Default": "Warning",
|
||||
"Microsoft": "Warning",
|
||||
"Microsoft.Hosting.Lifetime": "Information"
|
||||
},
|
||||
"Console": {
|
||||
|
|
|
|||
Loading…
Reference in a new issue