aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-core/src/operations/backup/index.ts
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2023-06-30 16:14:58 +0200
committerFlorian Dold <florian@dold.me>2023-06-30 16:14:58 +0200
commitd4ee96138774e8bc469f172bbb6276af89d6f240 (patch)
treeeda5bc6833306727f711cc5aedd5f307fa8b1f67 /packages/taler-wallet-core/src/operations/backup/index.ts
parent7523ffa9105f71a6a4c201d3ee46dbfccc929cea (diff)
downloadwallet-core-d4ee96138774e8bc469f172bbb6276af89d6f240.tar.xz
wallet-core: rename OperationAttempt->TaskRun, do not allow task result values anymore
Diffstat (limited to 'packages/taler-wallet-core/src/operations/backup/index.ts')
-rw-r--r--packages/taler-wallet-core/src/operations/backup/index.ts44
1 files changed, 16 insertions, 28 deletions
diff --git a/packages/taler-wallet-core/src/operations/backup/index.ts b/packages/taler-wallet-core/src/operations/backup/index.ts
index 364e876ec..236ef1e0f 100644
--- a/packages/taler-wallet-core/src/operations/backup/index.ts
+++ b/packages/taler-wallet-core/src/operations/backup/index.ts
@@ -94,8 +94,8 @@ import {
} from "../../util/invariants.js";
import { addAttentionRequest, removeAttentionRequest } from "../attention.js";
import {
- OperationAttemptResult,
- OperationAttemptResultType,
+ TaskRunResult,
+ TaskRunResultType,
TaskIdentifiers,
} from "../common.js";
import { checkPaymentByProposalId, preparePayForUri } from "../pay-merchant.js";
@@ -250,7 +250,7 @@ function getNextBackupTimestamp(): TalerPreciseTimestamp {
async function runBackupCycleForProvider(
ws: InternalWalletState,
args: BackupForProviderArgs,
-): Promise<OperationAttemptResult<unknown, { talerUri?: string }>> {
+): Promise<TaskRunResult> {
const provider = await ws.db
.mktx((x) => [x.backupProviders])
.runReadOnly(async (tx) => {
@@ -259,10 +259,7 @@ async function runBackupCycleForProvider(
if (!provider) {
logger.warn("provider disappeared");
- return {
- type: OperationAttemptResultType.Finished,
- result: undefined,
- };
+ return TaskRunResult.finished();
}
const backupJson = await exportBackup(ws);
@@ -333,10 +330,7 @@ async function runBackupCycleForProvider(
type: AttentionType.BackupUnpaid,
});
- return {
- type: OperationAttemptResultType.Finished,
- result: undefined,
- };
+ return TaskRunResult.finished();
}
if (resp.status === HttpStatusCode.PaymentRequired) {
@@ -378,10 +372,7 @@ async function runBackupCycleForProvider(
});
return {
- type: OperationAttemptResultType.Pending,
- result: {
- talerUri,
- },
+ type: TaskRunResultType.Pending,
};
}
const result = res;
@@ -415,10 +406,7 @@ async function runBackupCycleForProvider(
);
return {
- type: OperationAttemptResultType.Pending,
- result: {
- talerUri,
- },
+ type: TaskRunResultType.Pending,
};
}
@@ -445,8 +433,7 @@ async function runBackupCycleForProvider(
});
return {
- type: OperationAttemptResultType.Finished,
- result: undefined,
+ type: TaskRunResultType.Finished,
};
}
@@ -487,7 +474,7 @@ async function runBackupCycleForProvider(
const err = await readTalerErrorResponse(resp);
logger.error(`got error response from backup provider: ${j2s(err)}`);
return {
- type: OperationAttemptResultType.Error,
+ type: TaskRunResultType.Error,
errorDetail: err,
};
}
@@ -495,7 +482,7 @@ async function runBackupCycleForProvider(
export async function processBackupForProvider(
ws: InternalWalletState,
backupProviderBaseUrl: string,
-): Promise<OperationAttemptResult> {
+): Promise<TaskRunResult> {
const provider = await ws.db
.mktx((x) => [x.backupProviders])
.runReadOnly(async (tx) => {
@@ -720,23 +707,24 @@ async function runFirstBackupCycleForProvider(
): Promise<AddBackupProviderResponse> {
const resp = await runBackupCycleForProvider(ws, args);
switch (resp.type) {
- case OperationAttemptResultType.Error:
+ case TaskRunResultType.Error:
throw TalerError.fromDetail(
TalerErrorCode.WALLET_UNEXPECTED_EXCEPTION,
resp.errorDetail as any, //FIXME create an error for backup problems
);
- case OperationAttemptResultType.Finished:
+ case TaskRunResultType.Finished:
return {
status: "ok",
};
- case OperationAttemptResultType.Longpoll:
+ case TaskRunResultType.Longpoll:
throw Error(
"unexpected runFirstBackupCycleForProvider result (longpoll)",
);
- case OperationAttemptResultType.Pending:
+ case TaskRunResultType.Pending:
return {
status: "payment-required",
- talerUri: resp.result.talerUri,
+ talerUri: "FIXME",
+ //talerUri: resp.result.talerUri,
};
default:
assertUnreachable(resp);