Added fileexists activity
This commit is contained in:
parent
6c595841ad
commit
c66667ea9e
|
|
@ -0,0 +1,22 @@
|
|||
using Elsa.ActivityResults;
|
||||
using Elsa.Attributes;
|
||||
using Elsa.Services;
|
||||
using Elsa.Services.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace Elsa.Activities.File
|
||||
{
|
||||
public class FileExists : Activity
|
||||
{
|
||||
[ActivityProperty(Hint = "Path of the file to delete.")]
|
||||
public string Path { get; set; }
|
||||
|
||||
protected override IActivityExecutionResult OnExecute(ActivityExecutionContext context)
|
||||
{
|
||||
var exists = System.IO.File.Exists(Path);
|
||||
return Done(exists);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
using Elsa.Builders;
|
||||
using Elsa.Services.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Activities.File
|
||||
{
|
||||
public static class FileExistsBuilderExtensions
|
||||
{
|
||||
public static IActivityBuilder FileExists(this IActivityBuilder builder, Action<ISetupActivity<FileExists>> setup, [CallerLineNumber] int lineNumber = default, [CallerFilePath] string? sourceFile = default) => builder.Then(setup, null, lineNumber, sourceFile);
|
||||
|
||||
public static IActivityBuilder FileExists(this IActivityBuilder builder, Func<ActivityExecutionContext, string> path, [CallerLineNumber] int lineNumber = default, [CallerFilePath] string? sourceFile = default) =>
|
||||
builder.FileExists(activity => activity
|
||||
.Set(x => x.Path, path),
|
||||
lineNumber,
|
||||
sourceFile);
|
||||
|
||||
public static IActivityBuilder FileExists(this IActivityBuilder builder, Func<ActivityExecutionContext, ValueTask<string>> path, [CallerLineNumber] int lineNumber = default, [CallerFilePath] string? sourceFile = default) =>
|
||||
builder.FileExists(activity => activity
|
||||
.Set(x => x.Path, path),
|
||||
lineNumber,
|
||||
sourceFile);
|
||||
|
||||
public static IActivityBuilder FileExists(this IActivityBuilder builder, Func<string> path, [CallerLineNumber] int lineNumber = default, [CallerFilePath] string? sourceFile = default) =>
|
||||
builder.FileExists(activity => activity
|
||||
.Set(x => x.Path, path),
|
||||
lineNumber,
|
||||
sourceFile);
|
||||
|
||||
public static IActivityBuilder FileExists(this IActivityBuilder builder, Func<ValueTask<string>> path, [CallerLineNumber] int lineNumber = default, [CallerFilePath] string? sourceFile = default) =>
|
||||
builder.FileExists(activity => activity
|
||||
.Set(x => x.Path, path),
|
||||
lineNumber,
|
||||
sourceFile);
|
||||
|
||||
public static IActivityBuilder FileExists(this IActivityBuilder builder, string path, [CallerLineNumber] int lineNumber = default, [CallerFilePath] string? sourceFile = default) =>
|
||||
builder.FileExists(activity => activity
|
||||
.Set(x => x.Path, path),
|
||||
lineNumber,
|
||||
sourceFile);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
using Elsa.Builders;
|
||||
using Elsa.Services.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Elsa.Activities.File
|
||||
{
|
||||
public static class FileExistsExtensions
|
||||
{
|
||||
public static ISetupActivity<FileExists> WithPath(this ISetupActivity<FileExists> setup, Func<ActivityExecutionContext, ValueTask<string>> path) => setup.Set(x => x.Path, path);
|
||||
public static ISetupActivity<FileExists> WithPath(this ISetupActivity<FileExists> setup, Func<ActivityExecutionContext, string> path) => setup.Set(x => x.Path, path);
|
||||
public static ISetupActivity<FileExists> WithPath(this ISetupActivity<FileExists> setup, Func<ValueTask<string>> path) => setup.Set(x => x.Path, path);
|
||||
public static ISetupActivity<FileExists> WithPath(this ISetupActivity<FileExists> setup, Func<string> path) => setup.Set(x => x.Path, path);
|
||||
public static ISetupActivity<FileExists> WithPath(this ISetupActivity<FileExists> setup, string path) => setup.Set(x => x.Path, path);
|
||||
}
|
||||
}
|
||||
|
|
@ -17,6 +17,7 @@ namespace Microsoft.Extensions.DependencyInjection
|
|||
public static ElsaOptionsBuilder AddFileActivities(this ElsaOptionsBuilder builder)
|
||||
{
|
||||
builder.AddActivity<DeleteFile>();
|
||||
builder.AddActivity<FileExists>();
|
||||
builder.AddActivity<OutFile>();
|
||||
builder.AddActivity<TempFile>();
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue