createScoreNode function

Future createScoreNode(
  1. dynamic type,
  2. dynamic path
)

Implementation

Future createScoreNode(var type, var path) async {
  var uuid = '';
  type == Types.users ? uuid = Storage.userUUID : uuid = Storage.deviceUUID;

  Node geigerIndicatorUserScoreNode = NodeImpl(
      path, '', ':$type:' + uuid + ':' + Storage.geigerIndicatorUUID + ':data');

  //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);

  NodeValue geigerJsonObject = NodeValueImpl('geigerJsonObj', '');
  await geigerIndicatorUserScoreNode.addValue(geigerJsonObject);

  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!
          .add(NodeImpl(Storage.geigerIndicatorUUID, '', ':$type:' + uuid));
      await Storage.controller!.add(NodeImpl(
          'data', '', ':$type:' + uuid + ':' + Storage.geigerIndicatorUUID));
      await Storage.controller!.add(geigerIndicatorUserScoreNode);
    } catch (e) {
      //print(await storage.controller!.get(':$type:' + uuid + ':' + storage.GEIGERindicatorUUID + ':data:$path'));
    }
  } else {
    try {
      await Storage.controller!.add(geigerIndicatorUserScoreNode);
    } catch (e) {
      //print(e);
    }
  }
}