From a1e0fc3b88ed4305f942fadbea66b29a3934721c Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Fri, 16 Aug 2019 15:03:52 +0200 Subject: crypto worker refactoring --- src/crypto/cryptoApi.ts | 44 ++------------------------------------------ 1 file changed, 2 insertions(+), 42 deletions(-) (limited to 'src/crypto/cryptoApi.ts') diff --git a/src/crypto/cryptoApi.ts b/src/crypto/cryptoApi.ts index c68b10700..a4e12c00f 100644 --- a/src/crypto/cryptoApi.ts +++ b/src/crypto/cryptoApi.ts @@ -34,6 +34,8 @@ import { WireFee, } from "../dbTypes"; +import { CryptoWorker } from "./cryptoWorker"; + import { ContractTerms, PaybackRequest } from "../talerTypes"; import { BenchmarkResult, CoinWithDenom, PayCoinInfo } from "../walletTypes"; @@ -83,15 +85,6 @@ interface WorkItem { */ const NUM_PRIO = 5; -interface CryptoWorker { - postMessage(message: any): void; - - terminate(): void; - - onmessage: (m: any) => void; - onerror: (m: any) => void; -} - export interface CryptoWorkerFactory { /** * Start a new worker. @@ -105,21 +98,6 @@ export interface CryptoWorkerFactory { getConcurrency(): number; } -export class NodeCryptoWorkerFactory implements CryptoWorkerFactory { - startWorker(): CryptoWorker { - if (typeof require === "undefined") { - throw Error("cannot make worker, require(...) not defined"); - } - const workerCtor = require("./nodeProcessWorker").Worker; - const workerPath = __dirname + "/cryptoWorker.js"; - return new workerCtor(workerPath); - } - - getConcurrency(): number { - return 2; - } -} - export class BrowserCryptoWorkerFactory implements CryptoWorkerFactory { startWorker(): CryptoWorker { const workerCtor = Worker; @@ -141,24 +119,6 @@ export class BrowserCryptoWorkerFactory implements CryptoWorkerFactory { } } -/** - * The synchronous crypto worker produced by this factory doesn't run in the - * background, but actually blocks the caller until the operation is done. - */ -export class SynchronousCryptoWorkerFactory implements CryptoWorkerFactory { - startWorker(): CryptoWorker { - if (typeof require === "undefined") { - throw Error("cannot make worker, require(...) not defined"); - } - const workerCtor = require("./synchronousWorker").SynchronousCryptoWorker; - return new workerCtor(); - } - - getConcurrency(): number { - return 1; - } -} - /** * Crypto API that interfaces manages a background crypto thread * for the execution of expensive operations. -- cgit v1.2.3