protected async override Task <object> OnPerform() { var deleteContract = JsonConvert.SerializeObject(_contract); var content = new StringContent(deleteContract, Encoding.UTF8, ApplicationJSON); var response = await _fuelPumpRestClient.SaveBasePrices(content); var data = await response.Content.ReadAsStringAsync(); switch (response.StatusCode) { case HttpStatusCode.OK: var contract = new DeSerializer().MapErrorWithCaption(data); return(new Mapper().MapErrorWithCaption(contract)); case HttpStatusCode.Conflict: throw PumpsOfflineException(data); default: return(await HandleExceptions(response)); } }