コード例 #1
0
 /**
  * Mark/unmark a migration as migrated
  *
  * If <u>all</u> is given as version, all available migrations are marked
  * as requested.
  *
  * @param string $version The migration to execute
  * @param boolean $add The migration to mark as migrated
  * @param boolean $delete The migration to mark as not migrated
  * @return void
  * @throws \InvalidArgumentException
  * @see typo3.flow3:doctrine:migrate
  * @see typo3.flow3:doctrine:migrationstatus
  * @see typo3.flow3:doctrine:migrationexecute
  * @see typo3.flow3:doctrine:migrationgenerate
  */
 public function migrationVersionCommand($version, $add = FALSE, $delete = FALSE)
 {
     // "driver" is used only for Doctrine, thus we (mis-)use it here
     // additionally, when no path is set, skip this step, assuming no DB is needed
     if ($this->settings['backendOptions']['driver'] !== NULL && $this->settings['backendOptions']['host'] !== NULL) {
         if ($add === FALSE && $delete === FALSE) {
             throw new \InvalidArgumentException('You must specify whether you want to --add or --delete the specified version.');
         }
         $this->doctrineService->markAsMigrated($version, $add ?: FALSE);
     } else {
         $this->outputLine('Doctrine migration not possible, the driver and host backend options are not set in /Configuration/Settings.yaml.');
         $this->quit(1);
     }
 }