/// <summary> /// Démarre et initialise les SelectorConfig associés au WorkflowConfig original. /// </summary> /// <param name="wfInstance">WorkflowInstance nouvellement démarré</param> /// <returns>Message en cas de warning</returns> public async Task <HttpResponseMessageResult> StartSelectorsIntances(WorkflowInstance wfInstance) { if ((wfInstance == null) || (wfInstance.WorkflowConfig == null)) { throw new InitialiseWorkflowException("Process: can't find an instance of WorkflowInstance or WorkflowConfig!"); } if (wfInstance.DataSetId == 0) { throw new InitialiseWorkflowException("Process: no DataSet in Workflow!"); } if (wfInstance.UserSetId == 0) { throw new InitialiseWorkflowException("Process: no UserSet in Workflow!"); } ICollection <SelectorConfig> lstSelectConf = wfInstance.WorkflowConfig.SelectorConfig; HttpResponseMessageResult res = new HttpResponseMessageResult() { IsSuccess = true }; foreach (SelectorConfig selector in lstSelectConf) { HttpResponseMessageResult resLocal = await SelectorEngine.GenerateSelectorsInstances(selector, wfInstance); res.Append(resLocal); } return(res); }
/// <summary> /// Modifie les données d'un SelectorInstance. Les données sont d'abord sauvées, puis le SelectorInstance passe en Act et en Constraints. /// </summary> /// <param name="selectorInstanceId">Id du SelectorInstance</param> /// <param name="values">Valeurs à modifier</param> /// <remarks>Les valeurs à modifier sont au format suivant : {id de la cellule}:{nouvelle valeur}</remarks> /// <returns>Message à modifier</returns> public async Task <HttpResponseMessageResult> SaveData(long selectorInstanceId, IEnumerable <KeyValuePair <long, double> > values) { return(await SelectorEngine.SaveData(selectorInstanceId, values)); }