diff --git a/index.html b/index.html
index 54b2d27..9a62c2d 100644
--- a/index.html
+++ b/index.html
@@ -33,6 +33,8 @@
supernodes: {}, //each supnernode must be stored as floID : {uri:,pubKey:}
diskList : ["General"],
defaultDisk : "General",
+ applicationList:{},
+ appSubAdmins:{},
serveList : [],
storedList : [],
supernodeConfig : {},
@@ -6038,30 +6040,27 @@
initIndexedDBforSupernodeConfig().then(result => {
console.log(result)
- readSupernodeListFromAPI().then(result => {
+ refreshBlockchainData().then(result => {
console.log(result)
- floSupernode.kBucket.launch().then(result => {
- console.log(result)
- if (myFloID in floGlobals.supernodes) {
- initIndexedDBforSupernodeDataStorage(myFloID).then(result => {
+ if (myFloID in floGlobals.supernodes) {
+ initIndexedDBforSupernodeDataStorage(myFloID).then(result => {
+ console.log(result)
+ serverPwd = prompt("Enter Server Pass!")
+ setInterval(autoRefreshBlockchainData, 3600000);
+ floSupernode.initSupernode(serverPwd, myFloID).then(async result => {
console.log(result)
- serverPwd = prompt("Enter Server Pass!")
- setInterval(refreshBlockchainData, 3600000);
- floSupernode.initSupernode(serverPwd, myFloID).then(async result => {
+ floGlobals.serveList.push(myFloID)
+ floGlobals.storedList.push(myFloID)
+ await sleep(5000)
+ connectToAllBackupSupernode().then(async result => {
console.log(result)
- floGlobals.serveList.push(myFloID)
- floGlobals.storedList.push(myFloID)
- await sleep(5000)
- connectToAllBackupSupernode().then(async result => {
- console.log(result)
- await sleep(2000)
- reactor.dispatchEvent("indicate_supernode_up",myFloID)
- })
- })
- })
- }
- })
- })
+ await sleep(2000)
+ reactor.dispatchEvent("indicate_supernode_up",myFloID)
+ }).catch(error => console.log(error))
+ }).catch(error => console.log(error))
+ }).catch(error => console.log(error))
+ }
+ }).catch(error => console.log(error))
}).catch(error => console.log(error))
}
@@ -6073,6 +6072,10 @@
config:{},
supernodes:{
indexes:{ uri:null, pubKey:null }
+ },
+ applications:{},
+ appSubAdmins:{
+ indexes:{ app:null, subAdminID:null }
}
}
compactIDB.setDefaultDB("SupernodeConfig")
@@ -6100,16 +6103,25 @@
})
}
- function refreshBlockchainData(){
- readSupernodeListFromAPI().then(result => {
- console.log(result)
- floSupernode.kBucket.launch().then(result => {
- console.log(result)
- })
- }).catch(error => console.log(error))
+ function autoRefreshBlockchainData(){
+ refreshBlockchainData()
+ .then(result => console.log(result))
+ .catch(error => console.log(error))
}
- function readSupernodeListFromAPI(){
+ function refreshBlockchainData(){
+ return new Promise((resolve,reject) => {
+ readSupernodeDataFromAPI().then(result => {
+ console.log(result)
+ floSupernode.kBucket.launch().then(result => {
+ console.log(result)
+ resolve("Refreshed Data from blockchain")
+ }).catch(error => reject(error))
+ }).catch(error => reject(error))
+ })
+ }
+
+ function readSupernodeDataFromAPI(){
return new Promise((resolve,reject) => {
compactIDB.readData("lastTx",floGlobals.adminID).then(lastTx => {
floBlockchainAPI.readData(floGlobals.adminID,{ignoreOld:lastTx,sendOnly:true,pattern:"SuperNodeStorage"}).then(result => {
@@ -6121,16 +6133,21 @@
compactIDB.writeData("supernodes",content.addNodes[sn],sn);
for(c in content.config)
compactIDB.writeData("config",content.config[c],c)
+ for(app in content.application)
+ compactIDB.writeData("applications",content.application[app],app)
}
compactIDB.writeData("lastTx",result.totalTxs,floGlobals.adminID);
- compactIDB.readAllData("supernodes").then(result => {
- floGlobals.supernodes = result
- compactIDB.readAllData("config").then(result => {
- floGlobals.supernodeConfig = result
- resolve("Read supernode from blockchain");
- })
- })
- })
+ compactIDB.readAllData("supernodes").then(supernodes => {
+ floGlobals.supernodes = supernodes
+ compactIDB.readAllData("config").then(config => {
+ floGlobals.supernodeConfig = config
+ compactIDB.readAllData("applications").then(applications => {
+ floGlobals.applicationList = applications
+ resolve("Read supernode from blockchain");
+ }).catch(error => reject(error))
+ }).catch(error => reject(error))
+ }).catch(error => reject(error))
+ }).catch(error => reject(error))
}).catch(error => reject(error))
})
}