change store id to be metadata id instead of block id

This commit is contained in:
Josip Milovac 2023-01-10 17:30:58 +11:00
parent 9847b2056b
commit 043a95d9ef

View file

@ -144,8 +144,7 @@ function findChainDifference(oldChain, newChain) {
function addBlockMetadata(blockchain, block) { function addBlockMetadata(blockchain, block) {
const metadatas = Block.getMetadatas(block); const metadatas = Block.getMetadatas(block);
for (const key in metadatas) { for (const metadata of metadatas) {
const metadata = metadatas[key];
if (!("SSNmetadata" in metadata)) { if (!("SSNmetadata" in metadata)) {
//assert? //assert?
return; return;
@ -163,7 +162,7 @@ function addBlockMetadata(blockchain, block) {
DataFactory.namedNode(quadN.subject.id), DataFactory.namedNode(quadN.subject.id),
DataFactory.namedNode(quadN.predicate.id), DataFactory.namedNode(quadN.predicate.id),
DataFactory.namedNode(quadN.object.id), DataFactory.namedNode(quadN.object.id),
DataFactory.namedNode(block.hash))); DataFactory.namedNode(metadata.id)));
} }
}); });
} }
@ -257,7 +256,9 @@ class Blockchain {
//fix metadata //fix metadata
for (let i = oldChain.length - 1; i >= chainDifference; i--) { for (let i = oldChain.length - 1; i >= chainDifference; i--) {
this.store.deleteGraph(oldChain[i].hash); for (const metadata of Block.getMetadatas(oldChain[i])) {
this.store.deleteGraph(metadata.id);
}
} }
for (let i = chainDifference; i < newChain.length; ++i) { for (let i = chainDifference; i < newChain.length; ++i) {
addBlockMetadata(this, newChain[i]); addBlockMetadata(this, newChain[i]);