populateFromSource method

FutureOr<Map<String, List<Object>>> populateFromSource(
  1. Object? source, {
  2. String? workingPath,
  3. EntityResolutionRules? resolutionRules,
  4. Object? variables,
})

Implementation

FutureOr<Map<String, List<Object>>> populateFromSource(
  Object? source, {
  String? workingPath,
  EntityResolutionRules? resolutionRules,
  Object? variables,
}) {
  var sourceMap = resolveEntitiesSource(source);
  var variablesMap = resolveSource(variables);

  return sourceMap.resolveOther(variablesMap, (sourceMap, variablesMap) {
    sourceMap = resolveEntitiesSourceVariables(sourceMap, variablesMap);

    _log.info(
      'Populating adapter ($this) [entries: ${sourceMap.length}; variables: ${variablesMap.length}]...$_logSectionOpen',
    );

    return storeAllFromJson(
      sourceMap,
      resolutionRules: resolutionRules,
      variables: variablesMap,
    ).resolveMapped((res) {
      _log.info('Populate source finished. $_logSectionClose');
      return res;
    });
  });
}