feat: init; from commit c3adcb2e6bc94b46f4f34c03bc62abcce6c7e1a0 of BDContract
This commit is contained in:
349
js/blockindexer/BlockIndexer.js
Normal file
349
js/blockindexer/BlockIndexer.js
Normal file
@@ -0,0 +1,349 @@
|
||||
var applyRole = function(role) {
|
||||
global.wssocket.send("{\"action\":\"applyNodeRole\",\"role\":\"" + role
|
||||
+ "\",\"pubKey\":\"" + global.sm2Key.publicKey + "\"}");
|
||||
};
|
||||
var WSHandler = function(event) {
|
||||
data = event.data;
|
||||
try {
|
||||
var obj = JSON.parse(data);
|
||||
switch (obj.action) {
|
||||
case 'onTransferTo':
|
||||
onTransferTo(obj);
|
||||
break;
|
||||
case 'onListMemoryFiles':
|
||||
onListMemoryFiles(obj);
|
||||
break;
|
||||
case 'onDumpContract':
|
||||
onDumpContract(obj);
|
||||
break;
|
||||
case 'onChangeDumpPeriod':
|
||||
onChangeDumpPeriod(obj);
|
||||
break;
|
||||
case 'onGetDumpPeriod':
|
||||
onGetDumpPeriod(obj);
|
||||
break;
|
||||
case 'onStaticVerifyResult':
|
||||
onStaticVerifyResult(obj);
|
||||
break;
|
||||
case "onListContractProcess":
|
||||
onListContractProcess(obj);
|
||||
break;
|
||||
case "onDeleteFile":
|
||||
onDeleteFile(obj);
|
||||
break;
|
||||
case "onCancelAuth":
|
||||
onCancelAuth(obj);
|
||||
break;
|
||||
case "onDownloadContract":
|
||||
onDownloadFile(obj);
|
||||
break;
|
||||
case "onChangePublic":
|
||||
onChangePublic(obj);
|
||||
break;
|
||||
case "onListProjects":
|
||||
onListProjects(obj);
|
||||
break;
|
||||
case "onListProject":
|
||||
onListProject(obj);
|
||||
break;
|
||||
case "onListLocalNodeLog":
|
||||
onListLocalNodeLog(obj);
|
||||
break;
|
||||
case "onListLocalNodeLogPie":
|
||||
onListLocalNodeLogPie(obj);
|
||||
break;
|
||||
case "onListLocalNodeLogLine":
|
||||
onListLocalNodeLogLine(obj);
|
||||
break;
|
||||
case "onListLocalContractLog":
|
||||
onListLocalContractLog(obj);
|
||||
break;
|
||||
case "onListLocalContractLogPie":
|
||||
onListLocalContractLogPie(obj);
|
||||
break;
|
||||
case "onListLocalContractLogLine":
|
||||
onListLocalContractLogLine(obj);
|
||||
break;
|
||||
case "onGetNodeSessionID":
|
||||
onGetNodeSessionID(obj);
|
||||
break;
|
||||
case "onLogin":
|
||||
onNodeLogin(obj);
|
||||
break;
|
||||
case "onGetNodeRole":
|
||||
onGetNodeRole(obj);
|
||||
break;
|
||||
case "onApplyRole":
|
||||
onApplyRole(obj);
|
||||
break;
|
||||
case "onListAllAuthRole":
|
||||
onListAllAuthRole(obj);
|
||||
break;
|
||||
case "onListUnAuthRole":
|
||||
onListUnAuthRole(obj);
|
||||
break;
|
||||
case "onDeleteRole":
|
||||
onDeleteRole(obj);
|
||||
break;
|
||||
case "onCountRole":
|
||||
onCountRole(obj);
|
||||
break;
|
||||
case "onAuthNodeRole":
|
||||
onAuthNodeRole(obj);
|
||||
break;
|
||||
case "onApplyNet":
|
||||
onApplyNet(obj);
|
||||
break;
|
||||
case "onLoadNodeConfig":
|
||||
onLoadNodeConfig(obj);
|
||||
break;
|
||||
case "onChangeNodeName":
|
||||
onChangeNodeName(obj);
|
||||
break;
|
||||
case "onChangeYJSPath":
|
||||
onChangeYJSPath(obj);
|
||||
break;
|
||||
case "onGetLicenceExpiredDate":
|
||||
$("#expiredDate").html(convertDate(data.data));
|
||||
break;
|
||||
case "onGetPeerID":
|
||||
global.peerID = obj.data;
|
||||
// getNodeTrustUnits();//still connecting to centerportalws
|
||||
break;
|
||||
case "onViewContractInstance":
|
||||
onViewContractInstance(obj);
|
||||
break;
|
||||
case 'onExecuteResult':
|
||||
onExecuteResult(obj);
|
||||
break;
|
||||
case 'onUploadFile':
|
||||
onUploadFile(obj);
|
||||
break;
|
||||
case 'onStartContract':
|
||||
onStartContract(obj);
|
||||
break;
|
||||
case 'onKillContractProcess':
|
||||
onStopContract(obj);
|
||||
break;
|
||||
case 'onKillAllContract':
|
||||
onKillAllContract(obj);
|
||||
break;
|
||||
case 'onSetPermission':
|
||||
onSetPermission(obj);
|
||||
break;
|
||||
case 'onOutputStream':
|
||||
displayOutput(obj);
|
||||
break;
|
||||
case 'onOutputStream':
|
||||
displayOutput(obj);
|
||||
break;
|
||||
case 'onChangeNodeCenter':
|
||||
onChangeNodeCenter(obj);
|
||||
break;
|
||||
case 'onHashResult':
|
||||
onHashResult(obj);
|
||||
break;
|
||||
default:
|
||||
displayOutput(obj);
|
||||
break;
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err);
|
||||
}
|
||||
};
|
||||
|
||||
var displayOutput = function(obj) {
|
||||
console.log(obj);
|
||||
};
|
||||
|
||||
var getControlWsUrl = function(host) {
|
||||
var prefix = "ws://";
|
||||
if (document.location.href.startsWith("https"))
|
||||
prefix = "wss://";
|
||||
var path = document.location.pathname.lastIndexOf("/");
|
||||
path = document.location.pathname.substr(0, path + 1);
|
||||
if (path.indexOf("SCIDE") < 0)
|
||||
path += "SCIDE/";
|
||||
path += "SCExecutor";
|
||||
return prefix + host + path;
|
||||
};
|
||||
var initWSocket = function() {
|
||||
var host = document.location.host;
|
||||
var url = getControlWsUrl(host);
|
||||
console.log("connect ws:" + url);
|
||||
global.wssocket = createWssocket(url, function() {
|
||||
getSession();
|
||||
loadNodeConfig();// get center portal & create centerportalsocket in
|
||||
// onLoadNodeConfig
|
||||
}, WSHandler);
|
||||
|
||||
};
|
||||
|
||||
var centerportalWSHandler = function(event) {
|
||||
data = event.data;
|
||||
try {
|
||||
var obj = JSON.parse(data);
|
||||
switch (obj.action) {
|
||||
case "onGetNodeTrustUnits":
|
||||
onGetNodeTrustUnits(obj);
|
||||
break;
|
||||
case 'onSessionID':
|
||||
onSessionID(obj);
|
||||
break;
|
||||
case 'onStartContract':
|
||||
onStartContract(obj);
|
||||
break;
|
||||
case 'onStartTrustfulContract':
|
||||
onStartTrustfulContract(obj);
|
||||
break;
|
||||
case 'onDistributeContract':
|
||||
onDistributeContract(obj);
|
||||
break;
|
||||
case 'onDistributeFinish':
|
||||
onDistributeFinish(obj);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
} catch (err) {
|
||||
console.log(err);
|
||||
}
|
||||
};
|
||||
|
||||
var getSession = function() {
|
||||
global.wssocket.send("{\"action\":\"getNodeSessionID\"}");
|
||||
};
|
||||
var exportSMKeyPair = function() {
|
||||
$("#dialog").html("Save Your key:<br/>" + JSON.stringify(global.sm2Key))
|
||||
$("#dialog").dialog("open");
|
||||
};
|
||||
// ====== wsHandler
|
||||
var onGetNodeSessionID = function(data) {
|
||||
console.log("onGetNodeSessionID");
|
||||
global.session = data.session;
|
||||
var loginParam = {};
|
||||
loginParam.pubKey = global.sm2Key.publicKey;
|
||||
loginParam.signature = sm2.doSignature(global.session,
|
||||
global.sm2Key.privateKey);
|
||||
loginParam.action = "login";
|
||||
global.wssocket.send(JSON.stringify(loginParam));
|
||||
};
|
||||
var onNodeLogin = function(data) {
|
||||
console.log("onNodeLogin");
|
||||
var param = {};
|
||||
param.action = "getNodeRole";
|
||||
global.wssocket.send(JSON.stringify(param));
|
||||
};
|
||||
var onGetNodeRole = function(data) {
|
||||
console.log("onGetNodeRole");
|
||||
pubkeyDialogVue.myRole = data.data;
|
||||
global.myRole = data.data;
|
||||
loadUserMan();
|
||||
|
||||
};
|
||||
var onListLocalNodeLog = function(data) {
|
||||
var userManTab = $("#v-pills-userManager-tab")[0];
|
||||
var isActive = (userManTab.getAttribute("aria-selected") == "true");
|
||||
if (isActive) {
|
||||
drawUserActivityGraph(data);
|
||||
} else {
|
||||
drawLocalLogGraphs(data);
|
||||
}
|
||||
};
|
||||
var onListAllAuthRole = function(data) {
|
||||
console.log("onListAllAuthRole");
|
||||
fillAuthRoleData(data.data);
|
||||
};
|
||||
|
||||
var onListUnAuthRole = function(data) {
|
||||
console.log("onListUnAuthRole");
|
||||
fillUnAuthRoleData(data.data);
|
||||
};
|
||||
|
||||
var onApplyNet = function(data) {
|
||||
console.log("onApplyNet");
|
||||
};
|
||||
var onCountRole = function(data) {
|
||||
console.log("onCountRole");
|
||||
setUserTypeDistribution(data.data);
|
||||
}
|
||||
|
||||
var onAuthNodeRole = function(data) {
|
||||
myToast("授权/忽略操作", data.data);
|
||||
if (data.data == "success") {
|
||||
var arg = {};
|
||||
arg.action = "listAllAuthRole";
|
||||
global.wssocket.send(JSON.stringify(arg));
|
||||
var arg = {};
|
||||
arg.action = "listUnAuthRole";
|
||||
global.wssocket.send(JSON.stringify(arg));
|
||||
}
|
||||
};
|
||||
|
||||
var onApplyRole = function(data) {
|
||||
myToast("申请操作", data.data);
|
||||
};
|
||||
var onDeleteRole = function(data) {
|
||||
myToast("删除操作", data.data);
|
||||
var loginAllUser = {};
|
||||
loginAllUser.action = "listAllAuthRole";
|
||||
global.wssocket.send(JSON.stringify(loginAllUser));
|
||||
};
|
||||
|
||||
// ====== wsHandler done!
|
||||
var myToast = function(title, msg) {
|
||||
toastVue.toastTitle = title;
|
||||
toastVue.toastMessage = msg;
|
||||
$("#alertDiv").toast("show");
|
||||
|
||||
}
|
||||
|
||||
var countChar = function(str, c) {
|
||||
var ret = 0;
|
||||
for (var i = 0; i < str.length; i++) {
|
||||
if (str.charAt(i) == c)
|
||||
ret++;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
var generate = function() {
|
||||
var key = sm2.generateKeyPairHex();
|
||||
global.sm2Key = key;
|
||||
localStorage.setItem("PrivKey", JSON.stringify(key));
|
||||
}
|
||||
|
||||
var killAllContract = function() {
|
||||
var request = {};
|
||||
request.action = "killAllContract";
|
||||
global.wssocket.send(JSON.stringify(request));
|
||||
};
|
||||
|
||||
var init = function() {
|
||||
initVue();
|
||||
initGlobal();
|
||||
initWSocket();
|
||||
};
|
||||
var getRequestParameters = function() {
|
||||
var arr = (location.search || "").replace(/^\?/, '').split("&");
|
||||
var params = {};
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
var data = arr[i].split("=");
|
||||
if (data.length == 2) {
|
||||
params[data[0]] = data[1];
|
||||
}
|
||||
}
|
||||
return params;
|
||||
};
|
||||
var prefix = "./SCIDE/SCManager?";
|
||||
if (document.location.href.indexOf("SCIDE") != -1) {
|
||||
prefix = "./SCManager?";
|
||||
}
|
||||
$.ajax({
|
||||
url : prefix + "action=listAdapters",
|
||||
dataType : "json"
|
||||
}).done(function(result) {
|
||||
console.log("receive result");
|
||||
}).error(function(result) {
|
||||
console.log("receive result err");
|
||||
console.log(result);
|
||||
});
|
||||
Reference in New Issue
Block a user