From d6c73201f7e2e47df2021efc7768706e34e241de Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Sat, 5 Jan 2019 15:02:22 +0100 Subject: [PATCH] Bug fixes --- Elsa.sln | 14 +++++++------- .../Elsa.Activities.Http/ActivityDescriptors.cs | 2 +- .../Extensions/ActivityLibraryExtensions.cs | 2 +- .../Extensions/AsyncEnumerableExtensions.cs | 5 +++++ .../Extensions/ServiceCollectionExtensions.cs | 4 ++-- .../Models/ActivityDescriptor.cs | 2 ++ .../Extensions/ServiceCollectionExtensions.cs | 16 ++++++++-------- .../Tokenizers/WorkflowTokenizer.cs | 3 ++- src/samples/SampleDashboard.Web/Program.cs | 2 +- ...shboard.csproj => SampleDashboard.Web.csproj} | 14 +++++++------- src/samples/SampleDashboard.Web/Startup.cs | 2 +- src/samples/SampleHost.Web/appsettings.json | 2 +- 12 files changed, 38 insertions(+), 30 deletions(-) rename src/samples/SampleDashboard.Web/{Elsa.Web.Dashboard.csproj => SampleDashboard.Web.csproj} (58%) diff --git a/Elsa.sln b/Elsa.sln index 9d97cd571..ed149bd47 100644 --- a/Elsa.sln +++ b/Elsa.sln @@ -57,10 +57,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleHost.Web", "src\sampl EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elsa.Web.Activities.Http", "src\web\modules\Elsa.Web.Activities.Http\Elsa.Web.Activities.Http.csproj", "{F4EC0B11-8E24-43C8-983B-38B7321FC4F9}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elsa.Web.Dashboard", "src\web\dashboard\Elsa.Web.Dashboard\Elsa.Web.Dashboard.csproj", "{35DD61F1-878A-4198-97F3-0F19E8E5D22F}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elsa.Web.BootstrapTheme", "src\web\themes\Elsa.Web.BootstrapTheme\Elsa.Web.BootstrapTheme.csproj", "{B5E36E84-1978-43C7-8859-F5184C9A657C}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleDashboard.Web", "src\samples\SampleDashboard.Web\SampleDashboard.Web.csproj", "{27BD3AE7-8D3B-4D19-A8E3-4DC6922C2213}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -135,14 +135,14 @@ Global {F4EC0B11-8E24-43C8-983B-38B7321FC4F9}.Debug|Any CPU.Build.0 = Debug|Any CPU {F4EC0B11-8E24-43C8-983B-38B7321FC4F9}.Release|Any CPU.ActiveCfg = Release|Any CPU {F4EC0B11-8E24-43C8-983B-38B7321FC4F9}.Release|Any CPU.Build.0 = Release|Any CPU - {35DD61F1-878A-4198-97F3-0F19E8E5D22F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {35DD61F1-878A-4198-97F3-0F19E8E5D22F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {35DD61F1-878A-4198-97F3-0F19E8E5D22F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {35DD61F1-878A-4198-97F3-0F19E8E5D22F}.Release|Any CPU.Build.0 = Release|Any CPU {B5E36E84-1978-43C7-8859-F5184C9A657C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {B5E36E84-1978-43C7-8859-F5184C9A657C}.Debug|Any CPU.Build.0 = Debug|Any CPU {B5E36E84-1978-43C7-8859-F5184C9A657C}.Release|Any CPU.ActiveCfg = Release|Any CPU {B5E36E84-1978-43C7-8859-F5184C9A657C}.Release|Any CPU.Build.0 = Release|Any CPU + {27BD3AE7-8D3B-4D19-A8E3-4DC6922C2213}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {27BD3AE7-8D3B-4D19-A8E3-4DC6922C2213}.Debug|Any CPU.Build.0 = Debug|Any CPU + {27BD3AE7-8D3B-4D19-A8E3-4DC6922C2213}.Release|Any CPU.ActiveCfg = Release|Any CPU + {27BD3AE7-8D3B-4D19-A8E3-4DC6922C2213}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -162,7 +162,6 @@ Global {1D63E1B4-2386-4BEC-9090-C3F3CBF25703} = {B43B546E-23F3-46E8-ACB7-D04F05CDA180} {E7DE9E53-2CF0-4F45-BF82-C470A19F0CF7} = {B43B546E-23F3-46E8-ACB7-D04F05CDA180} {05D06E92-E52D-4186-9382-C27D293AE4D1} = {C55090FE-8506-4FDA-928F-5ACBB9CBE019} - {35DD61F1-878A-4198-97F3-0F19E8E5D22F} = {C55090FE-8506-4FDA-928F-5ACBB9CBE019} {444A7B77-ECB1-4D3B-A0F2-B9A41C6E8ACD} = {B33F1927-FF0A-4826-80C6-F480E9C43892} {F4EC0B11-8E24-43C8-983B-38B7321FC4F9} = {B33F1927-FF0A-4826-80C6-F480E9C43892} {B588D068-1ADE-4DB3-84BB-D8BA95897FAC} = {B33F1927-FF0A-4826-80C6-F480E9C43892} @@ -171,6 +170,7 @@ Global {7A30960A-1B95-4564-B2C8-2DFDDB06C594} = {B33F1927-FF0A-4826-80C6-F480E9C43892} {E04F98D6-F6B3-475F-BCAA-F0D586EE3965} = {B33F1927-FF0A-4826-80C6-F480E9C43892} {B5E36E84-1978-43C7-8859-F5184C9A657C} = {B33F1927-FF0A-4826-80C6-F480E9C43892} + {27BD3AE7-8D3B-4D19-A8E3-4DC6922C2213} = {C55090FE-8506-4FDA-928F-5ACBB9CBE019} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {8B0975FD-7050-48B0-88C5-48C33378E158} diff --git a/src/activities/Elsa.Activities.Http/ActivityDescriptors.cs b/src/activities/Elsa.Activities.Http/ActivityDescriptors.cs index af07ad7c7..932fefea9 100644 --- a/src/activities/Elsa.Activities.Http/ActivityDescriptors.cs +++ b/src/activities/Elsa.Activities.Http/ActivityDescriptors.cs @@ -17,7 +17,7 @@ namespace Elsa.Activities.Http protected override IEnumerable Describe() { - yield return ActivityDescriptor.ForAction( + yield return ActivityDescriptor.ForTrigger( Category, T["HTTP Request Trigger"], T["Triggers when an incoming HTTP request is received."], diff --git a/src/core/Elsa.Abstractions/Extensions/ActivityLibraryExtensions.cs b/src/core/Elsa.Abstractions/Extensions/ActivityLibraryExtensions.cs index 9cfd3d35a..56d9de5c4 100644 --- a/src/core/Elsa.Abstractions/Extensions/ActivityLibraryExtensions.cs +++ b/src/core/Elsa.Abstractions/Extensions/ActivityLibraryExtensions.cs @@ -35,7 +35,7 @@ namespace Elsa.Extensions { return activityLibrary .ListAsync(x => x.Name == name, cancellationToken) - .SingleAsync(); + .SingleOrDefaultAsync(); } } } \ No newline at end of file diff --git a/src/core/Elsa.Abstractions/Extensions/AsyncEnumerableExtensions.cs b/src/core/Elsa.Abstractions/Extensions/AsyncEnumerableExtensions.cs index 0469838d6..981db0686 100644 --- a/src/core/Elsa.Abstractions/Extensions/AsyncEnumerableExtensions.cs +++ b/src/core/Elsa.Abstractions/Extensions/AsyncEnumerableExtensions.cs @@ -31,5 +31,10 @@ namespace Elsa.Extensions { return (await task).Single(); } + + public static async Task SingleOrDefaultAsync(this Task> task) + { + return (await task).SingleOrDefault(); + } } } \ No newline at end of file diff --git a/src/core/Elsa.Abstractions/Extensions/ServiceCollectionExtensions.cs b/src/core/Elsa.Abstractions/Extensions/ServiceCollectionExtensions.cs index a83d8a727..6b6e17145 100644 --- a/src/core/Elsa.Abstractions/Extensions/ServiceCollectionExtensions.cs +++ b/src/core/Elsa.Abstractions/Extensions/ServiceCollectionExtensions.cs @@ -8,14 +8,14 @@ namespace Elsa.Extensions public static IServiceCollection AddActivityDescriptors(this IServiceCollection services) where T : class, IActivityDescriptorProvider { - services.TryAddSingleton(); + services.AddSingleton(); return services; } public static IServiceCollection AddActivityDriver(this IServiceCollection services) where T : class, IActivityDriver { - services.TryAddSingleton(); + services.AddSingleton(); return services; } } diff --git a/src/core/Elsa.Abstractions/Models/ActivityDescriptor.cs b/src/core/Elsa.Abstractions/Models/ActivityDescriptor.cs index d920b564b..719ed5499 100644 --- a/src/core/Elsa.Abstractions/Models/ActivityDescriptor.cs +++ b/src/core/Elsa.Abstractions/Models/ActivityDescriptor.cs @@ -53,6 +53,8 @@ namespace Elsa.Models DisplayText = displayText; Description = description; GetEndpoints = a => endpoints; + IsTrigger = isTrigger; + IsBrowsable = isBrowsable; } public bool IsBrowsable { get; set; } = true; diff --git a/src/core/Elsa.Core/Extensions/ServiceCollectionExtensions.cs b/src/core/Elsa.Core/Extensions/ServiceCollectionExtensions.cs index e35f474f6..4a9cd4f22 100644 --- a/src/core/Elsa.Core/Extensions/ServiceCollectionExtensions.cs +++ b/src/core/Elsa.Core/Extensions/ServiceCollectionExtensions.cs @@ -15,16 +15,16 @@ namespace Elsa.Extensions services.TryAddSingleton(); services.TryAddScoped(); services.TryAddScoped(); - services.TryAddScoped(); + services.AddScoped(); services.TryAddScoped(); services.AddActivityDescriptors(); - services.TryAddSingleton(); - services.TryAddSingleton(); - services.TryAddSingleton(); + services.AddSingleton(); + services.AddSingleton(); + services.AddSingleton(); services.TryAddSingleton(); services.TryAddSingleton(); - services.TryAddSingleton(); - services.TryAddSingleton(); + services.AddSingleton(); + services.AddSingleton(); return services; } @@ -34,8 +34,8 @@ namespace Elsa.Extensions services.TryAddSingleton(); services.TryAddSingleton(); services.TryAddSingleton(); - services.TryAddSingleton(); - services.TryAddSingleton(); + services.AddSingleton(); + services.AddSingleton(); services.TryAddSingleton(); return services; diff --git a/src/core/Elsa.Core/Serialization/Tokenizers/WorkflowTokenizer.cs b/src/core/Elsa.Core/Serialization/Tokenizers/WorkflowTokenizer.cs index c87da5b52..bebc91c6f 100644 --- a/src/core/Elsa.Core/Serialization/Tokenizers/WorkflowTokenizer.cs +++ b/src/core/Elsa.Core/Serialization/Tokenizers/WorkflowTokenizer.cs @@ -94,7 +94,8 @@ namespace Elsa.Serialization.Tokenizers { var name = token["name"].Value(); var descriptor = await GetActivityDescriptorAsync(name, cancellationToken); - var activity = descriptor != null ? (IActivity) token.ToObject(descriptor.ActivityType) : new UnknownActivity(); + var activityType = descriptor?.ActivityType ?? typeof(UnknownActivity); + var activity = (IActivity)token.ToObject(activityType); activity.Descriptor = descriptor; return activity; diff --git a/src/samples/SampleDashboard.Web/Program.cs b/src/samples/SampleDashboard.Web/Program.cs index f44088d53..0aea2bfd8 100644 --- a/src/samples/SampleDashboard.Web/Program.cs +++ b/src/samples/SampleDashboard.Web/Program.cs @@ -1,7 +1,7 @@ using Microsoft.AspNetCore; using Microsoft.AspNetCore.Hosting; -namespace Elsa.Web.Dashboard +namespace SampleDashboard.Web { public class Program { diff --git a/src/samples/SampleDashboard.Web/Elsa.Web.Dashboard.csproj b/src/samples/SampleDashboard.Web/SampleDashboard.Web.csproj similarity index 58% rename from src/samples/SampleDashboard.Web/Elsa.Web.Dashboard.csproj rename to src/samples/SampleDashboard.Web/SampleDashboard.Web.csproj index 2f66924cb..5d39ef1d6 100644 --- a/src/samples/SampleDashboard.Web/Elsa.Web.Dashboard.csproj +++ b/src/samples/SampleDashboard.Web/SampleDashboard.Web.csproj @@ -22,13 +22,13 @@ - - - - - - - + + + + + + + diff --git a/src/samples/SampleDashboard.Web/Startup.cs b/src/samples/SampleDashboard.Web/Startup.cs index abaf51d1a..cb56a00b9 100644 --- a/src/samples/SampleDashboard.Web/Startup.cs +++ b/src/samples/SampleDashboard.Web/Startup.cs @@ -3,7 +3,7 @@ using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.DependencyInjection; -namespace Elsa.Web.Dashboard +namespace SampleDashboard.Web { public class Startup { diff --git a/src/samples/SampleHost.Web/appsettings.json b/src/samples/SampleHost.Web/appsettings.json index b4fe4538b..fa35373a0 100644 --- a/src/samples/SampleHost.Web/appsettings.json +++ b/src/samples/SampleHost.Web/appsettings.json @@ -6,7 +6,7 @@ }, "AllowedHosts": "*", "FileStore": { - "RootDirectory": "C:\\Activities\\Projects\\Elsa\\src\\web\\dashboard\\Elsa.Web.Dashboard\\App_Data\\Sites\\Default\\elsa\\workflows", + "RootDirectory": "C:\\Activities\\Projects\\Elsa\\src\\web\\dashboard\\SampleDashboard.Web\\App_Data\\Sites\\Default\\elsa\\workflows", "Format": "YAML" } }