function drush_migrate_messages in Migrate 7.2
Same name and namespace in other branches
- 6.2 migrate.drush.inc \drush_migrate_messages()
Display messages for a migration.
File
- ./
migrate.drush.inc, line 616 - Drush support for the migrate module
Code
function drush_migrate_messages($migration_name) {
if (!trim($migration_name)) {
drush_log(dt('You must specify a migration name'), 'status');
return;
}
try {
$migration = MigrationBase::getInstance($migration_name);
if (is_a($migration, 'Migration')) {
$map = $migration
->getMap();
$message_table = $map
->getMessageTable();
$result = db_select($message_table, 'msg', array(
'fetch' => PDO::FETCH_ASSOC,
))
->fields('msg')
->execute();
$first = TRUE;
$table = array();
foreach ($result as $row) {
unset($row['msgid']);
unset($row['level']);
if ($first) {
$table[] = array_keys($row);
$first = FALSE;
}
$table[] = $row;
}
}
if (empty($table)) {
drush_log(dt('No messages for this migration'), 'status');
}
else {
if (drush_get_option('csv')) {
foreach ($table as $row) {
fputcsv(STDOUT, $row);
}
}
else {
$widths = array();
foreach ($table[0] as $header) {
$widths[] = strlen($header) + 1;
}
drush_print_table($table, TRUE, $widths);
}
}
} catch (MigrateException $e) {
drush_print($e
->getMessage());
exit;
}
}