You are here

function migrate_visit_dependent in Migrate 7.2

Depth-first search for independent migrations.

1 call to migrate_visit_dependent()
migrate_order_dependencies in ./migrate.module
Do a topological sort on our dependencies graph.

File

./migrate.module, line 424
API and drush commands to support migration of data from external sources into a Drupal installation.

Code

function migrate_visit_dependent($dependencies, $name, &$list, &$visited) {
  if ($visited[$name]) {
    if ($list[$name]) {
      return;
    }
    else {
      throw new MigrateException(t('Failure to sort migration list due to circular dependencies involving %name.', array(
        '%name' => $name,
      )));
    }
  }
  $visited[$name] = TRUE;
  if (isset($dependencies[$name])) {
    foreach ($dependencies[$name] as $dependent) {
      migrate_visit_dependent($dependencies, $dependent, $list, $visited);
    }
  }
  $list[$name] = $name;
}