createScoreNode function
Future
createScoreNode(
- dynamic type,
- dynamic path
)
Implementation
Future createScoreNode(var type, var path) async {
var uuid = '';
type == Types.users ? uuid = Storage.userUUID : uuid = Storage.deviceUUID;
//print(':'+type+ ':'+ uuid + ':' + Storage.geigerIndicatorUUID + ':data'+path);
Node geigerIndicatorUserScoreNode = NodeImpl(path,'',':'+type+ ':'+ uuid + ':' + Storage.geigerIndicatorUUID + ':data');
//Node geigerIndicatorUserScoreNode = NodeImpl.createSkeleton(':'+type+ ':'+ uuid + ':' + Storage.geigerIndicatorUUID + ':data:'+path.toString().trim(),'',Storage.controller);
//print(geigerIndicatorUserScoreNode.path);
//create node keys: UserScore, ImplementRecommendations
NodeValue geigerScore =
NodeValueImpl('GEIGER_score', '0'); //add node name (name of threat)
await geigerIndicatorUserScoreNode.addValue(geigerScore);
NodeValue geigerThreatscores = NodeValueImpl('threats_score', '');
await geigerIndicatorUserScoreNode.addValue(geigerThreatscores);
NodeValue gegiernumMetrics = NodeValueImpl('number_metrics', '0');
await geigerIndicatorUserScoreNode.addValue(gegiernumMetrics);
geigerScore.setDescription('GEIGER user score');
geigerThreatscores.setDescription('GEIGER threat-specific user score');
gegiernumMetrics
.setDescription('Number of metrics used in calculation of user score');
if (path != Types.geigerScoreAggregate) {
NodeValue implementedRecommendations = NodeValueImpl(
'implementedRecommendations', ''); //add node name (name of threat)
await geigerIndicatorUserScoreNode.addValue(implementedRecommendations);
try {
await Storage.controller!
.addOrUpdate(NodeImpl(Storage.geigerIndicatorUUID, '', ':$type:' + uuid));
await Storage.controller!.addOrUpdate(NodeImpl(
'data', '', ':$type:' + uuid + ':' + Storage.geigerIndicatorUUID));
await Storage.controller!.addOrUpdate(geigerIndicatorUserScoreNode);
} catch (e) {
//print(await storage.controller!.get(':$type:' + uuid + ':' + storage.GEIGERindicatorUUID + ':data:$path'));
}
} else {
try {
await Storage.controller!.addOrUpdate(geigerIndicatorUserScoreNode);
} catch (e) {
//print(e);
}
}
}