1 backup.database.inc public BackupDatabase::restore(BackupFile $file)

Restore a backup from a file.

Parameters

BackupFile $file: A BackupFile instance, used to read from the file handle.

Return value

boolean: TRUE if the restore was successful, FALSE on failure.

Overrides Backup::restore

File

core/includes/backup/backup.database.inc, line 275
Functions to handle the direct to/from database backup source.

Class

BackupDatabase
A destination type for saving to a database server.

Code

public function restore(BackupFile $file) {
  $lines_executed = 0;
  // Open the file using the file wrapper.
  if ($file->extension() !== $this->getFileTypeId()) {
    $this->log('Unable to restore from file %file because a %type file can\'t be restored to this database.', 
    array(
      '%file' => $file->filepath(),
      '%type' => $file->extension(),
    ), 
    Backup::LOG_ERROR
    );
  }
  else {
    // Restore the database.
    $lines_executed = $this->restoreDatabaseFromFile($file);

    if ($this->settings['verbose']) {
      $this->log('@count SQL commands executed.', array('@count' => $lines_executed), self::LOG_INFO);
    }
  }

  // Pull any logged messages out of the file and up to this class.
  $file_log = $file->getLog();
  foreach ($file_log as $log) {
    call_user_func_array($this->log, $log);
  }
  $file->clearLog();

  return $lines_executed;
}