getRisk function

Future getRisk()

Implementation

Future getRisk() async {
  Node? profilesNode;
  try {
     profilesNode = await Storage.controller
  !.get(':Global:profiles');
  }on StorageException {

      print("':Global:profiles' doesn't exist in storage'===========");
//      print("Waiting ':Global:profiles'===========");
//      registerListener(Listener.profilesGlobal,':Global:profiles');
//
//      try{
//        List<Event> e = await Listener.profilesGlobal.getNumEvents(1);
//        print("Length of the Event ${e.length}");
//        if (e.isNotEmpty) {
//          getRecommendation();
//        }
//      } catch(e){
//      print(e);
//      }

  }

  try{
    var getChildren = await profilesNode!.getChildren();

    var profileNodeIterator = getChildren.entries.iterator;

    while (profileNodeIterator.moveNext()) {
      //print(profileNodeIterator.current.value);
      var nameNode = await profileNodeIterator.current.value.getValue('name');

      var profileName = nameNode!.getValue('en')!.toLowerCase();
      //log(profileName);

      for (String threatUUID in CoreValues.uuidThreats) {
        var threatUUIDNode =
            await profileNodeIterator.current.value.getValue(threatUUID);

        switch (profileName) {
          case Types.digitallyBased:
            CoreValues.based[threatUUID] = threatUUIDNode!.getValue('en')!;
            break;

          case Types.digitalEnabler:
            CoreValues.enabler[threatUUID] = threatUUIDNode!.getValue('en')!;
            break;

          case Types.digitallyDependent:
            CoreValues.dependent[threatUUID] = threatUUIDNode!.getValue('en')!;
            break;
        }
      }
    }
  } catch (e) {
    print('211.api+$e');

    return;
  }
}