public Operation Clone(bool includeLocalProperties)
 {
     var c = new Operation
             {
                 update = update,
             };
     CopyExtraPropertiesToClone(c, includeLocalProperties);
     return c;
 }
partial         void CopyExtraPropertiesToClone(Operation clone, bool includeLocalProperties);
 /// <summary>
 /// Sends a PATCH to '/api/incident/{id}'
 /// </summary>
 /// <param name="id">a path parameter (no description)</param>
 /// <param name="operationModel">a body parameter (no description)</param>
 /// <returns></returns>
 public static RestOperation UpdateIncidentFields(string id, Operation operationModel)
 {
     return new RestOperation("PATCH", "api/incident/" + id + "")
         {
             Content = operationModel
         };
 }
 /// <summary>
 /// Sends a PATCH to '/api/scriptrun/{id}'
 /// </summary>
 /// <param name="id">a path parameter (no description)</param>
 /// <param name="operationModel">a body parameter (no description)</param>
 /// <returns></returns>
 public static RestOperation UpdateScriptRunFields(string id, Operation operationModel)
 {
     return new RestOperation("PATCH", "api/scriptrun/" + id + "")
         {
             Content = operationModel
         };
 }
 /// <summary>
 /// Sends a PATCH to '/api/requirement/{id}'
 /// </summary>
 /// <param name="id">a path parameter (no description)</param>
 /// <param name="operationModel">a body parameter (no description)</param>
 /// <returns></returns>
 public static RestOperation UpdateExistingRequirementFields(string id, Operation operationModel)
 {
     return new RestOperation("PATCH", "api/requirement/" + id + "")
         {
             Content = operationModel
         };
 }
 /// <summary>
 /// Sends a PATCH to '/api/customfield/{name}'
 /// </summary>
 /// <param name="name">a path parameter (no description)</param>
 /// <param name="operationModel">a body parameter (no description)</param>
 /// <returns></returns>
 public static RestOperation UpdateCustomField(string name, Operation operationModel)
 {
     return new RestOperation("PATCH", "api/customfield/" + name + "")
         {
             Content = operationModel
         };
 }
		/// <summary>
        /// Sends a PATCH to '/api/scriptrun/{id}'  (asynchronous)
        /// </summary>
        /// <param name="id">a path parameter (no description)</param>
        /// <param name="operationModel">a body parameter (no description)</param>
        /// <returns></returns>
        public virtual async Task<HttpResponseMessage> UpdateScriptRunFieldsAsync(string id, Operation operationModel)
        {
            var operation = Operations.UpdateScriptRunFields(id, operationModel);
			var response = await _client.SendAsync(operation.BuildRequest(_client));
			EnsureSuccess(response);
			return response;
						
		}
        /// <summary>
        /// Sends a PATCH to '/api/scriptrun/{id}'
        /// </summary>
        /// <param name="id">a path parameter (no description)</param>
        /// <param name="operationModel">a body parameter (no description)</param>
        /// <returns></returns>
        public virtual HttpResponseMessage UpdateScriptRunFields(string id, Operation operationModel)
        {
            var operation = Operations.UpdateScriptRunFields(id, operationModel);
			var response = _client.SendAsync(operation.BuildRequest(_client)).Result;
			EnsureSuccess(response);
			return response;
		}
		/// <summary>
        /// Sends a PATCH to '/api/customfield/{name}'  (asynchronous)
        /// </summary>
        /// <param name="name">a path parameter (no description)</param>
        /// <param name="operationModel">a body parameter (no description)</param>
        /// <returns></returns>
        public virtual async Task<HttpResponseMessage> UpdateCustomFieldAsync(string name, Operation operationModel)
        {
            var operation = Operations.UpdateCustomField(name, operationModel);
			var response = await _client.SendAsync(operation.BuildRequest(_client));
			EnsureSuccess(response);
			return response;
						
		}