public async Task <bool> DlFileStatusUpdate(DlFileStatusUpdate dlFileStatusUpdate, CancellationToken token = default(CancellationToken)) { bool updateResult = false; try { var requestResult = await ServiceAgent.RestFullServiceJsonRequest(base.GetTargetUri(), ServiceConfig.DL_FILE_STATUS_UPDATE, dlFileStatusUpdate, token); if (requestResult.IsSuccess) { var item = JsonConvert.DeserializeObject <DlUpdateStatus>(requestResult.Content); updateResult = item.Status; } } catch (Exception) { } return(updateResult); }
private async Task <bool> RemoveDlFromServer(DlBook localDlBook, UserCredential userCredential) { // in consideration of deleting dlbook in offline mode int deleteVersion = localDlBook.LastDownloadedVersion == 0 ? localDlBook.CurrentVersion : localDlBook.LastDownloadedVersion; // Used to validate the Status Code given by eReader. // Status Code : 1 => DL file Successfully downloaded by eReader. // Status Code : 2 => DL file deleted by the user. // Status Code : 3 => DL file deleted by eReader(backend). string dlDeletedStatus = "2"; DlFileStatusUpdate dlFileStatusUpdate = new DlFileStatusUpdate { DeviceId = GlobalAccess.DeviceId, Email = userCredential.Email, DLId = localDlBook.BookId, Ver = deleteVersion.ToString(), StatusCode = dlDeletedStatus }; var updateResult = await deliveryService.DlFileStatusUpdate(dlFileStatusUpdate); return(updateResult); }
public async Task DownLoadDlBook(DlBook serverDlBook, CancellationToken cancelToken, DownloadProgressEventHandler downloadHandler) { var downLoadSuccess = await deliveryService.DlFileDownload(serverDlBook, cancelToken, downloadHandler); if (!downLoadSuccess) { throw new Exception("DlFileDownload failure"); } DlFileStatusUpdate dlFileStatusUpdate = new DlFileStatusUpdate { DeviceId = GlobalAccess.DeviceId, Email = GlobalAccess.Instance.CurrentUserInfo.Email, //DLId = serverDlBook.BookId, Ver = serverDlBook.CurrentVersion.ToString(), StatusCode = ((int)DlStatusEnum.Downloaded).ToString() }; var updateSuccess = await deliveryService.DlFileStatusUpdate(dlFileStatusUpdate, cancelToken); if (!updateSuccess) { throw new Exception("DlFileStatusUpdate failure"); } }