*/ private $schemaManager; /** * @param AbstractSchemaManager $schemaManager- */ public function __construct(AbstractSchemaManager $schemaManager, AbstractPlatform $platform) { $this->schemaManager = $schemaManager; $this->platform = $platform; } public function createFromSchema(): Schema { return $this->schemaManager->createSchema(); } public function createToSchema(Schema $fromSchema): Schema { return clone $fromSchema; } /** @return string[] */ public function getSqlDiffToMigrate(Schema $fromSchema, Schema $toSchema): array { if (! method_exists($this->schemaManager, 'createComparator')) { return $fromSchema->getMigrateToSql($toSchema, $this->platform); } return $this->schemaManager->createComparator()->compareSchemas( $fromSchema, $toSchema )->toSql($this->platform); } }