aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs')
-rw-r--r--Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs65
1 files changed, 0 insertions, 65 deletions
diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs
deleted file mode 100644
index 6bd3d44b9..000000000
--- a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs
+++ /dev/null
@@ -1,65 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Tango.Scripting.Basic
-{
- public class ProjectSession<T> where T : IContext
- {
- private Action _abortAction;
- private TaskCompletionSource<object> _completion;
-
- public event EventHandler<ProjectSessionStateChangedEventArgs> StateChanged;
-
- public ProjectSessionState State { get; set; }
-
- public Project<T> Project { get; set; }
-
- public ProjectSession(Project<T> project, Action abortAction)
- {
- _completion = new TaskCompletionSource<object>();
- Project = project;
- _abortAction = abortAction;
- }
-
- public void Abort()
- {
- _abortAction();
- State = ProjectSessionState.Aborted;
- _completion.SetException(new OperationCanceledException("Project execution aborted."));
- RaiseStateChanged();
- }
-
- internal void Failed(Exception ex)
- {
- State = ProjectSessionState.Failed;
- _completion.SetException(ex);
- RaiseStateChanged(null, ex);
- }
-
- internal void Completed(object returnValue)
- {
- State = ProjectSessionState.Completed;
- _completion.SetResult(returnValue);
- RaiseStateChanged(returnValue, null);
- }
-
- private void RaiseStateChanged(object returnValue = null, Exception ex = null)
- {
- StateChanged?.Invoke(this,
- new ProjectSessionStateChangedEventArgs()
- {
- ReturnValue = returnValue,
- State = State,
- Exception = ex
- });
- }
-
- public Task<Object> WaitForCompletion()
- {
- return _completion.Task;
- }
- }
-}