public function restoreState($stateFileName)
 {
     $state = new MagentoState($stateFileName);
     $tempDir = $this->createTempDir();
     // restore dump
     $dumpFile = $tempDir . DIRECTORY_SEPARATOR . 'dump';
     $state->extractDump($tempDir);
     $this->getDb()->restoreDump($tempDir . DIRECTORY_SEPARATOR . 'dump');
     // restore var and media
     $params = $this->getParams();
     file_exists($params['options']['var_dir']) && $this->delete($params['options']['var_dir']);
     file_exists($params['options']['media_dir']) && $this->delete($params['options']['media_dir']);
     $state->extractVar($tempDir);
     $state->extractMedia($tempDir);
     Fso::move($tempDir . DIRECTORY_SEPARATOR . 'var', $params['options']['var_dir']);
     Fso::move($tempDir . DIRECTORY_SEPARATOR . 'media', $params['options']['media_dir']);
     $this->delete($tempDir);
 }