1
0
Fork 0
mirror of https://github.com/wallabag/wallabag.git synced 2025-07-22 17:18:37 +00:00
wallabag/src/Doctrine/MigrationFactoryDecorator.php

34 lines
1.1 KiB
PHP
Raw Normal View History

<?php
namespace Wallabag\Doctrine;
use Doctrine\Migrations\AbstractMigration;
use Doctrine\Migrations\Version\MigrationFactory;
/**
* Decorates the migration factory to pass some additional information to the migration instances.
*/
class MigrationFactoryDecorator implements MigrationFactory
{
public function __construct(
2025-04-05 13:59:36 +02:00
private readonly MigrationFactory $migrationFactory,
private readonly string $tablePrefix,
private readonly array $defaultIgnoreOriginInstanceRules,
private readonly string $fetchingErrorMessage,
) {
}
public function createVersion(string $migrationClassName): AbstractMigration
{
$instance = $this->migrationFactory->createVersion($migrationClassName);
if ($instance instanceof WallabagMigration) {
$instance->setTablePrefix($this->tablePrefix);
$instance->setDefaultIgnoreOriginInstanceRules($this->defaultIgnoreOriginInstanceRules);
$instance->setFetchingErrorMessage($this->fetchingErrorMessage);
}
return $instance;
}
}