public async Task <IHttpActionResult> GetExecutionThreadAsync(int id)
        {
            GOLD.AppExecution.DataAccess.ExecutionThread executionThreadDB = await _dbContext.ExecutionThreads.FindAsync(id);

            if (executionThreadDB == null)
            {
                return(NotFound());
            }
            return(Ok(Map(executionThreadDB)));
        }
 private ExecutionThread Map(GOLD.AppExecution.DataAccess.ExecutionThread executionThreadDB)
 {
     return(new ExecutionThread()
     {
         ID = executionThreadDB.ID,
         ComponentExecutingID = executionThreadDB.ComponentExecutingID,
         ExecutingComponents = JsonConvert.DeserializeObject <List <ExecutingComponent> >(executionThreadDB.ExecutingComponentsJson),
         ExecutingComponentTitle = executionThreadDB.ExecutingComponentTitle,
         ExecutionStatus = executionThreadDB.ExecutionStatus,
         LaunchCommandLine = executionThreadDB.LaunchCommandLineJson,
         LaunchInputs = JsonConvert.DeserializeObject <Dictionary <string, string> >(executionThreadDB.LaunchInputsJson),
         LockDateTime = executionThreadDB.LockDateTime,
         LockUserID = executionThreadDB.LockUserID,
         LockUserName = executionThreadDB.LockUserName,
         PendingOutcomeJson = executionThreadDB.PendingOutcomeJson,
         RootComponentTitle = executionThreadDB.RootComponentTitle
     });
 }