prepareDataRoot method

Future<bool> prepareDataRoot()

Prepare some basic data root path

  • Device data metrics
  • User data metrics
  • Recommendation
  • Recommendation status

Implementation

Future<bool> prepareDataRoot() async {
  // prepare user metrics root
  log('Preparing the device data root path');
  bool ret = await prepareRoot([
    'Devices',
    currentDeviceId!,
    pluginId,
    'data',
    'metrics',
  ]);
  if (ret == false) {
    log('Failed to prepare device data root path');
    return false;
  }

  log('Preparing the user data root path');
  ret = await prepareRoot([
    'Users',
    currentUserId!,
    pluginId,
    'data',
    'metrics',
  ]);
  if (ret == false) {
    log('Failed to prepare user data root path');
    return false;
  }

  log('Preparing the recommendation root path');
  ret = await prepareRoot([
    'Devices',
    currentDeviceId!,
    pluginId,
    'data',
    'recommendations',
  ]);
  if (ret == false) {
    log('Failed to prepare user data root path');
    return false;
  }

  log('Preparing the recommendation status root path');
  ret = await prepareRoot([
    'Devices',
    currentDeviceId!,
    pluginId,
    'data',
    'recommendationStatus'
  ]);
  if (ret == false) {
    log('Failed to prepare user data root path');
    return false;
  }

  return true;
}