UNPKG

@activeledger/activeprotocol

Version:

Underlying protocol which handles consensus and the smart contract virtual machine of Activeledger

105 lines 3.56 kB
class ContractControl { constructor() { this.smartContracts = {}; } initialiseContract(payload, event, emitter) { var _a; const contractData = ((_a = payload.contractData) === null || _a === void 0 ? void 0 : _a.data) ? payload.contractData : {}; this.smartContracts[payload.umid] = new (require(payload.contractLocation).default)(payload.date, payload.remoteAddress, payload.umid, payload.transaction, payload.inputs, payload.outputs, payload.readonly, contractData, payload.signatures, payload.key, emitter, global.self); if ("setEvent" in this.smartContracts[payload.umid]) { this.smartContracts[payload.umid].setEvent(event); } } getActivityStreams(umid) { return this.smartContracts[umid].getActivityStreams(); } getContractData(umid) { if (this.smartContracts[umid].updatedContractData) { return this.smartContracts[umid].exportContractData(); } } setInternodeComms(umid, comms, key) { this.smartContracts[umid].setInterNodeComms(key, comms); } getInternodeComms(umid) { return this.smartContracts[umid].getThisInterNodeComms(); } clearInternodeComms(umid) { return this.smartContracts[umid].getClearInterNodeComms(); } returnContractData(umid) { return this.smartContracts[umid].getReturnToRemote(); } throwFrom(umid) { return this.smartContracts[umid].throwTo; } async runRead(umid, readMethod) { var _a, _b; const read = (_b = (_a = this.smartContracts[umid])[readMethod]) === null || _b === void 0 ? void 0 : _b.call(_a); return read ? read : false; } async runVerify(umid, sigless) { var _a, _b; const verify = (_b = (_a = this.smartContracts[umid]).verify) === null || _b === void 0 ? void 0 : _b.call(_a, sigless); return verify ? verify : true; } runVote(umid) { try { return this.smartContracts[umid].vote(); } catch (_a) { return Promise.resolve(false); } } runCommit(umid, possibleTerritoriality) { try { return this.smartContracts[umid].commit(possibleTerritoriality); } catch (e) { return Promise.reject("Commit Try/Catch Failed"); } } postProcess(umid, territoriality, who) { if ("postProcess" in this.smartContracts[umid]) { return this.smartContracts[umid].postProcess(territoriality, who); } else { return Promise.resolve(); } } reconcile(umid) { if ("reconcile" in this.smartContracts[umid]) { return this.smartContracts[umid].reconcile(); } else { return Promise.resolve(); } } destroy(umid) { delete this.smartContracts[umid]; } getTimeout(umid) { return this.smartContracts[umid] ? this.smartContracts[umid].getTimeout() : null; } setSysConfig(umid, sysConfig) { if ("sysConfig" in this.smartContracts[umid]) { this.smartContracts[umid].sysConfig(sysConfig); } } reloadSysConfig(umid) { if ("sysConfig" in this.smartContracts[umid]) { return this.smartContracts[umid].configReload(); } else { return false; } } } module.exports = (function () { return new ContractControl(); })(); export {}; //# sourceMappingURL=vmscript.js.map