/// <summary> /// Updates special task getting by task UID Updates special task getting by task UID /// </summary> /// <param name="name"></param> /// <param name="taskUid"></param> /// <param name="mode"></param> /// <param name="recalculate"></param> /// <param name="storage"></param> /// <param name="folder"></param> /// <param name="fileName"></param> /// <param name="body"></param> /// <returns></returns> public TaskResponse PutProjectTask (string name, int? taskUid, string mode, bool? recalculate, string storage, string folder, string fileName, Task body) { // create path and map variables var ResourcePath = "/tasks/{name}/tasks/{taskUid}/?appSid={appSid}&mode={mode}&recalculate={recalculate}&storage={storage}&folder={folder}&fileName={fileName}".Replace("{format}","json"); ResourcePath = Regex.Replace(ResourcePath, "\\*", "").Replace("&", "&").Replace("/?", "?").Replace("toFormat={toFormat}", "format={format}"); // query params var queryParams = new Dictionary<String, String>(); var headerParams = new Dictionary<String, String>(); var formParams = new Dictionary<String, object>(); // verify required params are set if (name == null || taskUid == null || body == null ) { throw new ApiException(400, "missing required params"); } if (name == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])name=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "name" + "}", apiInvoker.ToPathValue(name)); } if (taskUid == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])taskUid=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "taskUid" + "}", apiInvoker.ToPathValue(taskUid)); } if (mode == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])mode=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "mode" + "}", apiInvoker.ToPathValue(mode)); } if (recalculate == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])recalculate=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "recalculate" + "}", apiInvoker.ToPathValue(recalculate)); } if (storage == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])storage=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "storage" + "}", apiInvoker.ToPathValue(storage)); } if (folder == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])folder=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "folder" + "}", apiInvoker.ToPathValue(folder)); } if (fileName == null){ ResourcePath = Regex.Replace(ResourcePath, @"([&?])fileName=", ""); }else{ ResourcePath = ResourcePath.Replace("{" + "fileName" + "}", apiInvoker.ToPathValue(fileName)); } try { if (typeof(TaskResponse) == typeof(ResponseMessage)) { var response = apiInvoker.invokeBinaryAPI(basePath, ResourcePath, "PUT", queryParams, null, headerParams, formParams); return (TaskResponse) ApiInvoker.deserialize(response, typeof(TaskResponse)); } else { var response = apiInvoker.invokeAPI(basePath, ResourcePath, "PUT", queryParams, body, headerParams, formParams); if(response != null){ return (TaskResponse) ApiInvoker.deserialize(response, typeof(TaskResponse)); } else { return null; } } } catch (ApiException ex) { if(ex.ErrorCode == 404) { return null; } else { throw ex; } } }
public void TestPutProjectTask() { TasksApi target = new TasksApi(APIKEY, APPSID, BASEPATH); StorageApi storageApi = new StorageApi(APIKEY, APPSID, BASEPATH); string name = "sample-project-2.mpp"; int? taskUid = 0; string mode = null; bool? recalculate = null; string storage = null; string folder = null; string fileName = null; Task body = new Task(); body.Uid = 0; body.Id = 1; body.Name = "Tasks"; storageApi.PutCreate(name, null, null, System.IO.File.ReadAllBytes("\\temp\\tasks\\resources\\" + name)); TaskResponse actual; actual = target.PutProjectTask(name, taskUid, mode, recalculate, storage, folder, fileName, body); Assert.AreEqual("200", actual.Code); Assert.IsInstanceOfType(new TaskResponse(), actual.GetType()); }