github.com/muhammedhassanm/blockchain@v0.0.0-20200120143007-697261defd4d/blockapps-ba-master/server/lib/bid/bid.js (about) 1 const ba = require('blockapps-rest'); 2 const rest = ba.rest; 3 const util = ba.common.util; 4 const config = ba.common.config; 5 6 const contractName = 'Bid'; 7 const contractFilename = `${config.libPath}/bid/contracts/Bid.sol`; 8 9 const ErrorCodes = rest.getEnums(`${config.libPath}/common/ErrorCodes.sol`).ErrorCodes; 10 11 function* uploadContract(admin, args) { 12 const contract = yield rest.uploadContract(admin, contractName, contractFilename, args); 13 yield compileSearch(contract); 14 contract.src = 'removed'; 15 return setContract(admin, contract); 16 } 17 18 function setContract(admin, contract) { 19 contract.getState = function* () { 20 return yield rest.getState(contract); 21 } 22 return contract; 23 } 24 25 function* compileSearch(contract) { 26 rest.verbose('compileSearch', contract.codeHash); 27 if (yield rest.isSearchable(contract.codeHash)) { 28 return; 29 } 30 const searchable = [contractName]; 31 yield rest.compileSearch(searchable, contractName, contractFilename); 32 } 33 34 module.exports = { 35 compileSearch: compileSearch, 36 uploadContract: uploadContract, 37 // constants 38 contractName: contractName, 39 };