diff --git a/Flowsharp.sln b/Flowsharp.sln index d8ce4099e..7b88e75b5 100644 --- a/Flowsharp.sln +++ b/Flowsharp.sln @@ -17,6 +17,8 @@ ProjectSection(SolutionItems) = preProject Nuget.Config = Nuget.Config EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Flowsharp.Abstractions", "src\Flowsharp.Abstractions\Flowsharp.Abstractions.csproj", "{3130C574-557C-4DA2-933E-AED7A9EBE48A}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -31,6 +33,10 @@ Global {48EDB976-3227-4DFD-BBB3-3BC9AEA19A88}.Debug|Any CPU.Build.0 = Debug|Any CPU {48EDB976-3227-4DFD-BBB3-3BC9AEA19A88}.Release|Any CPU.ActiveCfg = Release|Any CPU {48EDB976-3227-4DFD-BBB3-3BC9AEA19A88}.Release|Any CPU.Build.0 = Release|Any CPU + {3130C574-557C-4DA2-933E-AED7A9EBE48A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3130C574-557C-4DA2-933E-AED7A9EBE48A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3130C574-557C-4DA2-933E-AED7A9EBE48A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3130C574-557C-4DA2-933E-AED7A9EBE48A}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -41,5 +47,6 @@ Global GlobalSection(NestedProjects) = preSolution {300EE2D5-54C5-46F2-AD03-BB43589EA074} = {DA71CDAA-8DD3-4D5F-9FBD-8E4B37A2D925} {48EDB976-3227-4DFD-BBB3-3BC9AEA19A88} = {DA71CDAA-8DD3-4D5F-9FBD-8E4B37A2D925} + {3130C574-557C-4DA2-933E-AED7A9EBE48A} = {DA71CDAA-8DD3-4D5F-9FBD-8E4B37A2D925} EndGlobalSection EndGlobal diff --git a/src/Flowsharp.Core/Models/IActivity.cs b/src/Flowsharp.Abstractions/Activities/IActivity.cs similarity index 58% rename from src/Flowsharp.Core/Models/IActivity.cs rename to src/Flowsharp.Abstractions/Activities/IActivity.cs index cd943c3ff..2179eea2b 100644 --- a/src/Flowsharp.Core/Models/IActivity.cs +++ b/src/Flowsharp.Abstractions/Activities/IActivity.cs @@ -1,4 +1,4 @@ -namespace Flowsharp.Models +namespace Flowsharp.Activities { public interface IActivity { diff --git a/src/Flowsharp.Core/Expressions/IExpressionEvaluator.cs b/src/Flowsharp.Abstractions/Expressions/IExpressionEvaluator.cs similarity index 100% rename from src/Flowsharp.Core/Expressions/IExpressionEvaluator.cs rename to src/Flowsharp.Abstractions/Expressions/IExpressionEvaluator.cs diff --git a/src/Flowsharp.Core/Expressions/IWorkflowExpressionEvaluator.cs b/src/Flowsharp.Abstractions/Expressions/IWorkflowExpressionEvaluator.cs similarity index 100% rename from src/Flowsharp.Core/Expressions/IWorkflowExpressionEvaluator.cs rename to src/Flowsharp.Abstractions/Expressions/IWorkflowExpressionEvaluator.cs diff --git a/src/Flowsharp.Core/Expressions/WorkflowExpression.cs b/src/Flowsharp.Abstractions/Expressions/WorkflowExpression.cs similarity index 100% rename from src/Flowsharp.Core/Expressions/WorkflowExpression.cs rename to src/Flowsharp.Abstractions/Expressions/WorkflowExpression.cs diff --git a/src/Flowsharp.Abstractions/Flowsharp.Abstractions.csproj b/src/Flowsharp.Abstractions/Flowsharp.Abstractions.csproj new file mode 100644 index 000000000..66e3fa082 --- /dev/null +++ b/src/Flowsharp.Abstractions/Flowsharp.Abstractions.csproj @@ -0,0 +1,13 @@ + + + + netstandard2.0 + Flowsharp + latest + + + + + + + diff --git a/src/Flowsharp.Core/Handlers/IActivityHandler.cs b/src/Flowsharp.Abstractions/Handlers/IActivityHandler.cs similarity index 97% rename from src/Flowsharp.Core/Handlers/IActivityHandler.cs rename to src/Flowsharp.Abstractions/Handlers/IActivityHandler.cs index 583cb13aa..2f3ce8d42 100644 --- a/src/Flowsharp.Core/Handlers/IActivityHandler.cs +++ b/src/Flowsharp.Abstractions/Handlers/IActivityHandler.cs @@ -1,6 +1,7 @@ using System; using System.Threading; using System.Threading.Tasks; +using Flowsharp.Activities; using Flowsharp.Models; using Flowsharp.Results; diff --git a/src/Flowsharp.Core/Services/IActivityInvoker.cs b/src/Flowsharp.Abstractions/IActivityInvoker.cs similarity index 92% rename from src/Flowsharp.Core/Services/IActivityInvoker.cs rename to src/Flowsharp.Abstractions/IActivityInvoker.cs index 1c9b43b27..f83e3e1d2 100644 --- a/src/Flowsharp.Core/Services/IActivityInvoker.cs +++ b/src/Flowsharp.Abstractions/IActivityInvoker.cs @@ -1,9 +1,10 @@ using System.Threading; using System.Threading.Tasks; +using Flowsharp.Activities; using Flowsharp.Models; using Flowsharp.Results; -namespace Flowsharp.Services +namespace Flowsharp { public interface IActivityInvoker { diff --git a/src/Flowsharp.Core/Services/IWorkflowInvoker.cs b/src/Flowsharp.Abstractions/IWorkflowInvoker.cs similarity index 94% rename from src/Flowsharp.Core/Services/IWorkflowInvoker.cs rename to src/Flowsharp.Abstractions/IWorkflowInvoker.cs index af4478985..739c4ffb2 100644 --- a/src/Flowsharp.Core/Services/IWorkflowInvoker.cs +++ b/src/Flowsharp.Abstractions/IWorkflowInvoker.cs @@ -3,7 +3,7 @@ using System.Threading.Tasks; using Flowsharp.Activities; using Flowsharp.Models; -namespace Flowsharp.Services +namespace Flowsharp { public interface IWorkflowInvoker { diff --git a/src/Flowsharp.Core/Models/ActivityExecutionContext.cs b/src/Flowsharp.Abstractions/Models/ActivityExecutionContext.cs similarity index 100% rename from src/Flowsharp.Core/Models/ActivityExecutionContext.cs rename to src/Flowsharp.Abstractions/Models/ActivityExecutionContext.cs diff --git a/src/Flowsharp.Core/Models/Connection.cs b/src/Flowsharp.Abstractions/Models/Connection.cs similarity index 100% rename from src/Flowsharp.Core/Models/Connection.cs rename to src/Flowsharp.Abstractions/Models/Connection.cs diff --git a/src/Flowsharp.Core/Models/Endpoint.cs b/src/Flowsharp.Abstractions/Models/Endpoint.cs similarity index 100% rename from src/Flowsharp.Core/Models/Endpoint.cs rename to src/Flowsharp.Abstractions/Models/Endpoint.cs diff --git a/src/Flowsharp.Core/Models/SourceEndpoint.cs b/src/Flowsharp.Abstractions/Models/SourceEndpoint.cs similarity index 100% rename from src/Flowsharp.Core/Models/SourceEndpoint.cs rename to src/Flowsharp.Abstractions/Models/SourceEndpoint.cs diff --git a/src/Flowsharp.Core/Models/TargetEndpoint.cs b/src/Flowsharp.Abstractions/Models/TargetEndpoint.cs similarity index 100% rename from src/Flowsharp.Core/Models/TargetEndpoint.cs rename to src/Flowsharp.Abstractions/Models/TargetEndpoint.cs diff --git a/src/Flowsharp.Core/Models/Variables.cs b/src/Flowsharp.Abstractions/Models/Variables.cs similarity index 100% rename from src/Flowsharp.Core/Models/Variables.cs rename to src/Flowsharp.Abstractions/Models/Variables.cs diff --git a/src/Flowsharp.Core/Models/Workflow.cs b/src/Flowsharp.Abstractions/Models/Workflow.cs similarity index 100% rename from src/Flowsharp.Core/Models/Workflow.cs rename to src/Flowsharp.Abstractions/Models/Workflow.cs diff --git a/src/Flowsharp.Core/Models/WorkflowExecutionContext.cs b/src/Flowsharp.Abstractions/Models/WorkflowExecutionContext.cs similarity index 100% rename from src/Flowsharp.Core/Models/WorkflowExecutionContext.cs rename to src/Flowsharp.Abstractions/Models/WorkflowExecutionContext.cs diff --git a/src/Flowsharp.Core/Models/WorkflowExecutionScope.cs b/src/Flowsharp.Abstractions/Models/WorkflowExecutionScope.cs similarity index 100% rename from src/Flowsharp.Core/Models/WorkflowExecutionScope.cs rename to src/Flowsharp.Abstractions/Models/WorkflowExecutionScope.cs diff --git a/src/Flowsharp.Core/Models/WorkflowStatus.cs b/src/Flowsharp.Abstractions/Models/WorkflowStatus.cs similarity index 100% rename from src/Flowsharp.Core/Models/WorkflowStatus.cs rename to src/Flowsharp.Abstractions/Models/WorkflowStatus.cs diff --git a/src/Flowsharp.Core/Results/ActivityExecutionResult.cs b/src/Flowsharp.Abstractions/Results/ActivityExecutionResult.cs similarity index 95% rename from src/Flowsharp.Core/Results/ActivityExecutionResult.cs rename to src/Flowsharp.Abstractions/Results/ActivityExecutionResult.cs index 61d92d9d9..1578393b4 100644 --- a/src/Flowsharp.Core/Results/ActivityExecutionResult.cs +++ b/src/Flowsharp.Abstractions/Results/ActivityExecutionResult.cs @@ -2,7 +2,6 @@ using System.Threading; using System.Threading.Tasks; using Flowsharp.Models; -using Flowsharp.Services; namespace Flowsharp.Results { diff --git a/src/Flowsharp.Core/Results/IActivityExecutionResult.cs b/src/Flowsharp.Abstractions/Results/IActivityExecutionResult.cs similarity index 92% rename from src/Flowsharp.Core/Results/IActivityExecutionResult.cs rename to src/Flowsharp.Abstractions/Results/IActivityExecutionResult.cs index e5aa4e0fb..c33bdfab1 100644 --- a/src/Flowsharp.Core/Results/IActivityExecutionResult.cs +++ b/src/Flowsharp.Abstractions/Results/IActivityExecutionResult.cs @@ -1,7 +1,6 @@ using System.Threading; using System.Threading.Tasks; using Flowsharp.Models; -using Flowsharp.Services; namespace Flowsharp.Results { diff --git a/src/Flowsharp.Core/Serialization/Formatters/ITokenFormatter.cs b/src/Flowsharp.Abstractions/Serialization/Formatters/ITokenFormatter.cs similarity index 100% rename from src/Flowsharp.Core/Serialization/Formatters/ITokenFormatter.cs rename to src/Flowsharp.Abstractions/Serialization/Formatters/ITokenFormatter.cs diff --git a/src/Flowsharp.Core/Serialization/IWorkflowSerializer.cs b/src/Flowsharp.Abstractions/Serialization/IWorkflowSerializer.cs similarity index 100% rename from src/Flowsharp.Core/Serialization/IWorkflowSerializer.cs rename to src/Flowsharp.Abstractions/Serialization/IWorkflowSerializer.cs diff --git a/src/Flowsharp.Core/Serialization/Tokenizers/ITokenizer.cs b/src/Flowsharp.Abstractions/Serialization/Tokenizers/ITokenizer.cs similarity index 100% rename from src/Flowsharp.Core/Serialization/Tokenizers/ITokenizer.cs rename to src/Flowsharp.Abstractions/Serialization/Tokenizers/ITokenizer.cs diff --git a/src/Flowsharp.Core/Serialization/Tokenizers/ITokenizerInvoker.cs b/src/Flowsharp.Abstractions/Serialization/Tokenizers/ITokenizerInvoker.cs similarity index 100% rename from src/Flowsharp.Core/Serialization/Tokenizers/ITokenizerInvoker.cs rename to src/Flowsharp.Abstractions/Serialization/Tokenizers/ITokenizerInvoker.cs diff --git a/src/Flowsharp.Core/Serialization/Tokenizers/IWorkflowTokenizer.cs b/src/Flowsharp.Abstractions/Serialization/Tokenizers/IWorkflowTokenizer.cs similarity index 100% rename from src/Flowsharp.Core/Serialization/Tokenizers/IWorkflowTokenizer.cs rename to src/Flowsharp.Abstractions/Serialization/Tokenizers/IWorkflowTokenizer.cs diff --git a/src/Flowsharp.Core/Serialization/WorkflowTokenizationContext.cs b/src/Flowsharp.Abstractions/Serialization/Tokenizers/WorkflowTokenizationContext.cs similarity index 76% rename from src/Flowsharp.Core/Serialization/WorkflowTokenizationContext.cs rename to src/Flowsharp.Abstractions/Serialization/Tokenizers/WorkflowTokenizationContext.cs index 9815c31d4..747048dec 100644 --- a/src/Flowsharp.Core/Serialization/WorkflowTokenizationContext.cs +++ b/src/Flowsharp.Abstractions/Serialization/Tokenizers/WorkflowTokenizationContext.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; -using Flowsharp.Models; +using Flowsharp.Activities; -namespace Flowsharp.Serialization +namespace Flowsharp.Serialization.Tokenizers { public class WorkflowTokenizationContext { diff --git a/src/Flowsharp.Core/Models/Activity.cs b/src/Flowsharp.Core/Activities/Activity.cs similarity index 62% rename from src/Flowsharp.Core/Models/Activity.cs rename to src/Flowsharp.Core/Activities/Activity.cs index e993ab21d..0253a789e 100644 --- a/src/Flowsharp.Core/Models/Activity.cs +++ b/src/Flowsharp.Core/Activities/Activity.cs @@ -1,4 +1,5 @@ -using Newtonsoft.Json; +using Flowsharp.Activities; +using Newtonsoft.Json; namespace Flowsharp.Models { diff --git a/src/Flowsharp.Core/Services/ActivityInvoker.cs b/src/Flowsharp.Core/ActivityInvoker.cs similarity index 98% rename from src/Flowsharp.Core/Services/ActivityInvoker.cs rename to src/Flowsharp.Core/ActivityInvoker.cs index 0c7b756bc..1dfa7df0f 100644 --- a/src/Flowsharp.Core/Services/ActivityInvoker.cs +++ b/src/Flowsharp.Core/ActivityInvoker.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using Flowsharp.Activities; using Flowsharp.Handlers; using Flowsharp.Models; using Flowsharp.Results; diff --git a/src/Flowsharp.Core/Flowsharp.Core.csproj b/src/Flowsharp.Core/Flowsharp.Core.csproj index c1f163431..a9d3a8930 100644 --- a/src/Flowsharp.Core/Flowsharp.Core.csproj +++ b/src/Flowsharp.Core/Flowsharp.Core.csproj @@ -18,4 +18,8 @@ + + + + diff --git a/src/Flowsharp.Core/Handlers/ActivityHandler.cs b/src/Flowsharp.Core/Handlers/ActivityHandler.cs index ed6755afb..61416b052 100644 --- a/src/Flowsharp.Core/Handlers/ActivityHandler.cs +++ b/src/Flowsharp.Core/Handlers/ActivityHandler.cs @@ -1,6 +1,7 @@ using System; using System.Threading; using System.Threading.Tasks; +using Flowsharp.Activities; using Flowsharp.Models; using Flowsharp.Results; diff --git a/src/Flowsharp.Core/Serialization/Tokenizers/ActivityTokenizer.cs b/src/Flowsharp.Core/Serialization/Tokenizers/ActivityTokenizer.cs index eb2903f94..19459d578 100644 --- a/src/Flowsharp.Core/Serialization/Tokenizers/ActivityTokenizer.cs +++ b/src/Flowsharp.Core/Serialization/Tokenizers/ActivityTokenizer.cs @@ -1,3 +1,4 @@ +using Flowsharp.Activities; using Flowsharp.Models; using Flowsharp.Services; using Newtonsoft.Json.Linq; diff --git a/src/Flowsharp.Core/Serialization/Tokenizers/WorkflowTokenizer.cs b/src/Flowsharp.Core/Serialization/Tokenizers/WorkflowTokenizer.cs index 62c44ee65..08910bfbb 100644 --- a/src/Flowsharp.Core/Serialization/Tokenizers/WorkflowTokenizer.cs +++ b/src/Flowsharp.Core/Serialization/Tokenizers/WorkflowTokenizer.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Threading; +using Flowsharp.Activities; using Flowsharp.Handlers; using Flowsharp.Models; using Flowsharp.Services; diff --git a/src/Flowsharp.Core/Services/WorkflowInvoker.cs b/src/Flowsharp.Core/WorkflowInvoker.cs similarity index 99% rename from src/Flowsharp.Core/Services/WorkflowInvoker.cs rename to src/Flowsharp.Core/WorkflowInvoker.cs index ed4902c55..3a4954cf6 100644 --- a/src/Flowsharp.Core/Services/WorkflowInvoker.cs +++ b/src/Flowsharp.Core/WorkflowInvoker.cs @@ -2,6 +2,7 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; +using Flowsharp.Activities; using Flowsharp.Extensions; using Flowsharp.Models; using Flowsharp.Results; diff --git a/src/Flowsharp.Samples.Console/Program.cs b/src/Flowsharp.Samples.Console/Program.cs index 24541a731..2e2e73adf 100644 --- a/src/Flowsharp.Samples.Console/Program.cs +++ b/src/Flowsharp.Samples.Console/Program.cs @@ -24,7 +24,7 @@ namespace Flowsharp.Samples.Console .AddSingleton() .AddSingleton() .AddSingleton() - //.AddSingleton() + .AddSingleton() .AddSingleton() .AddSingleton() .AddSingleton()