46 lines
1.5 KiB
JavaScript
46 lines
1.5 KiB
JavaScript
import {getMap} from './entities';
|
|
/*
|
|
* create Relations array of Entity arrays
|
|
*/
|
|
export function createRelationsOfEntities(entities,relations){
|
|
const rltnsRry = new Array();
|
|
if(entities.length === 0){
|
|
console.error('relations:createRelationsOfEntities() ntts NOT available');
|
|
return rltnsRry;
|
|
}
|
|
//console.log('relations:createRelationsOfEntities() # ntts: ' + entities.length);
|
|
|
|
if(relations.length === 0){
|
|
console.error('relations:createRelationsOfEntities() rltns NOT available');
|
|
return rltnsRry;
|
|
}
|
|
//console.log('relations:createRelationsOfEntities() # rltns: ' + relations.length);
|
|
|
|
const entitiesMap = getMap(entities);
|
|
for(let i=0; i<relations.length; i++){
|
|
const relation = relations[i];
|
|
//get From Entity
|
|
let fromEntity = null;
|
|
if(!entitiesMap.has(relation[1])){
|
|
console.error('relations:createRelationsOfEntities() From Entity NOT known');
|
|
return rltnsRry;
|
|
}else{
|
|
fromEntity = entitiesMap.get(relation[1]);
|
|
}
|
|
|
|
//get To Entity
|
|
let toEntity = null;
|
|
if(!entitiesMap.has(relation[2])){
|
|
console.error('relations:createRelationsOfEntities() To Entity NOT known');
|
|
return rltnsRry;
|
|
}else{
|
|
toEntity = entitiesMap.get(relation[2]);
|
|
}
|
|
const rry = [fromEntity, toEntity];
|
|
rltnsRry.push(rry);
|
|
//console.log('relations:createRelationsOfEntities() # rltnsRry: ' + rltnsRry.length);
|
|
}
|
|
//console.log('relations:createRelationsOfEntities() # rltnsRry: ' + rltnsRry.length);
|
|
return rltnsRry;
|
|
}
|