welcome back to dyb-tech
This commit is contained in:
+37
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Migrations\Event\Listeners;
|
||||
|
||||
use Doctrine\Common\EventSubscriber;
|
||||
use Doctrine\Migrations\Event\MigrationsEventArgs;
|
||||
use Doctrine\Migrations\Events;
|
||||
use Doctrine\Migrations\Tools\TransactionHelper;
|
||||
|
||||
/**
|
||||
* Listens for `onMigrationsMigrated` and, if the connection has autocommit
|
||||
* makes sure to do the final commit to ensure changes stick around.
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
final class AutoCommitListener implements EventSubscriber
|
||||
{
|
||||
public function onMigrationsMigrated(MigrationsEventArgs $args): void
|
||||
{
|
||||
$conn = $args->getConnection();
|
||||
$conf = $args->getMigratorConfiguration();
|
||||
|
||||
if ($conf->isDryRun() || $conn->isAutoCommit()) {
|
||||
return;
|
||||
}
|
||||
|
||||
TransactionHelper::commitIfInTransaction($conn);
|
||||
}
|
||||
|
||||
/** {@inheritDoc} */
|
||||
public function getSubscribedEvents()
|
||||
{
|
||||
return [Events::onMigrationsMigrated];
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Migrations\Event;
|
||||
|
||||
use Doctrine\Common\EventArgs;
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Doctrine\Migrations\Metadata\MigrationPlanList;
|
||||
use Doctrine\Migrations\MigratorConfiguration;
|
||||
|
||||
/**
|
||||
* The MigrationEventsArgs class is passed to events not related to a single migration version.
|
||||
*/
|
||||
final class MigrationsEventArgs extends EventArgs
|
||||
{
|
||||
public function __construct(
|
||||
private readonly Connection $connection,
|
||||
private readonly MigrationPlanList $plan,
|
||||
private readonly MigratorConfiguration $migratorConfiguration,
|
||||
) {
|
||||
}
|
||||
|
||||
public function getConnection(): Connection
|
||||
{
|
||||
return $this->connection;
|
||||
}
|
||||
|
||||
public function getPlan(): MigrationPlanList
|
||||
{
|
||||
return $this->plan;
|
||||
}
|
||||
|
||||
public function getMigratorConfiguration(): MigratorConfiguration
|
||||
{
|
||||
return $this->migratorConfiguration;
|
||||
}
|
||||
}
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Migrations\Event;
|
||||
|
||||
use Doctrine\Common\EventArgs;
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Doctrine\Migrations\Metadata\MigrationPlan;
|
||||
use Doctrine\Migrations\MigratorConfiguration;
|
||||
|
||||
/**
|
||||
* The MigrationsVersionEventArgs class is passed to events related to a single migration version.
|
||||
*/
|
||||
final class MigrationsVersionEventArgs extends EventArgs
|
||||
{
|
||||
public function __construct(
|
||||
private readonly Connection $connection,
|
||||
private readonly MigrationPlan $plan,
|
||||
private readonly MigratorConfiguration $migratorConfiguration,
|
||||
) {
|
||||
}
|
||||
|
||||
public function getConnection(): Connection
|
||||
{
|
||||
return $this->connection;
|
||||
}
|
||||
|
||||
public function getPlan(): MigrationPlan
|
||||
{
|
||||
return $this->plan;
|
||||
}
|
||||
|
||||
public function getMigratorConfiguration(): MigratorConfiguration
|
||||
{
|
||||
return $this->migratorConfiguration;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user