UNPKG

deth

Version:

Ethereum node focused on Developer Experience

70 lines (69 loc) 3.53 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const util_1 = require("util"); const Address_1 = require("../../primitives/Address"); const primitives_1 = require("../../primitives"); const adapter_utils_1 = require("./adapter-utils"); class StateManagerAdapter { constructor(dethStateManager) { this.dethStateManager = dethStateManager; this.getAccount = util_1.callbackify(async (address) => { return this.dethStateManager.getAccount(Address_1.bufferToAddress(address)); }); this.putAccount = util_1.callbackify(async (address, account) => { return this.dethStateManager.putAccount(Address_1.bufferToAddress(address), account); }); this.putContractCode = util_1.callbackify(async (address, code) => { return this.dethStateManager.putContractCode(Address_1.bufferToAddress(address), code); }); this.getContractCode = util_1.callbackify(async (address) => { return this.dethStateManager.getContractCode(Address_1.bufferToAddress(address)); }); this.getContractStorage = util_1.callbackify(async (address, key) => { return this.dethStateManager.getContractStorage(Address_1.bufferToAddress(address), primitives_1.bufferToQuantity(key)); }); this.putContractStorage = util_1.callbackify(async (address, key, value) => { return this.dethStateManager.putContractStorage(Address_1.bufferToAddress(address), primitives_1.bufferToQuantity(key), value); }); this.clearContractStorage = util_1.callbackify(async (address) => { return this.dethStateManager.clearContractStorage(Address_1.bufferToAddress(address)); }); this.checkpoint = adapter_utils_1.callbackifySync(this.dethStateManager.checkpoint.bind(this.dethStateManager)); this.commit = adapter_utils_1.callbackifySync(this.dethStateManager.commit.bind(this.dethStateManager)); this.revert = adapter_utils_1.callbackifySync(this.dethStateManager.revert.bind(this.dethStateManager)); this.getStateRoot = util_1.callbackify(async () => { return primitives_1.hashToBuffer(this.dethStateManager.getStateRoot()); }); this.accountIsEmpty = util_1.callbackify(async (address) => { return this.dethStateManager.isAccountEmpty(Address_1.bufferToAddress(address)); }); this.setStateRoot = util_1.callbackify(async (root) => { return this.dethStateManager.setStateRoot(primitives_1.bufferToHash(root)); }); this.getOriginalContractStorage = () => { console.trace(); throw new Error('Not implemented yet!'); }; this.dumpStorage = () => { console.trace(); throw new Error('Not implemented yet!'); }; this.hasGenesisState = () => { console.trace(); throw new Error('Not implemented yet!'); }; this.generateCanonicalGenesis = () => { console.trace(); throw new Error('Not implemented yet!'); }; this.generateGenesis = () => { console.trace(); throw new Error('Not implemented yet!'); }; // eslint-disable-next-line this.cleanupTouchedAccounts = util_1.callbackify(async () => { }); // eslint-disable-next-line this._clearOriginalStorageCache = () => { }; } } exports.StateManagerAdapter = StateManagerAdapter;