Beispiel #1
0
        // ReSharper restore FunctionNeverReturns

        /// <returns>Is additional sync required (if there are still a lot of log/transaction records).</returns>
        private async Task <bool> SyncAsync()
        {
            var request = new KioskSyncPostRequest
            {
                KioskState = ComponentManager.Current.GetKioskMonitorableState(),
            };

            var logRecords = await GetSyncJsonFromFolderAsync(_logFolder);

            var transactions = await GetSyncJsonFromFolderAsync(_transactionFolder);

            request.LogRecordsJson            = logRecords.Json;
            request.TransactionContainersJson = transactions.Json;

            var response = await ServerApiProxy.Current.SyncAsync(request);

            await DeleteProcessedFilesAsync(
                logRecords.IncludedFiles,
                transactions.IncludedFiles);

            var isAdditionalSyncRequired = logRecords.IsAdditionalSyncRequired ||
                                           transactions.IsAdditionalSyncRequired;

            return(isAdditionalSyncRequired);
        }
Beispiel #2
0
        public async Task <KioskSyncPostResponse> SyncAsync(KioskSyncPostRequest request)
        {
            await EnsureAuthSessionAsync();

            return(await PostInternalAsync <KioskSyncPostResponse>("/kiosk-sync", request, CancellationToken.None));
        }