Skip to content

Commit e887af1

Browse files
committed
no issue - introduce the BridgeFactory
1 parent 5b15d78 commit e887af1

18 files changed

Lines changed: 489 additions & 136 deletions

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
# Changelog
22

3+
## Next
4+
5+
* [feature] ⭐️ Add `MakinaCorpus\QueryBuilder\BridgeFactory` for creating
6+
standalone connections.
7+
* [deprecation] ⚠️ Renamed `MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineQueryBuilder`
8+
to `MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineBridge`.
9+
* [deprecation] ⚠️ Renamed `MakinaCorpus\QueryBuilder\Bridge\Pdo\PdoQueryBuilder`
10+
to `MakinaCorpus\QueryBuilder\Bridge\Pdo\PdoBridge`.
11+
312
## 1.5.5
413

514
* [fix] Handle `mysqli` in `Dsn` class.

docs/content/bridges/error.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ call the `Bridge::disableErrorConverter()` method when initializing the bridge:
3535

3636
```php
3737
use Doctrine\DBAL\DriverManager;
38-
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineQueryBuilder;
38+
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineBridge;
3939

4040
$connection = DriverManager::getConnection(['driver' => 'pdo_pgsql', /* ... */]);
41-
$bridge = new DoctrineQueryBuilder($connection);
41+
$bridge = new DoctrineBridge($connection);
4242

4343
// Here it is:
4444
$bridge->disableErrorConverter();

docs/content/introduction/getting-started.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ Setting it up is easier than standalone setup:
116116

117117
```php
118118
use Doctrine\DBAL\DriverManager;
119-
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineQueryBuilder;
119+
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineBridge;
120120
use MakinaCorpus\QueryBuilder\DatabaseSession;
121121

122122
// Create or fetch your doctrine/dbal connection.
@@ -126,7 +126,7 @@ $connection = DriverManager::getConnection([
126126
]);
127127

128128
// Create the query builder.
129-
$session = new DoctrineQueryBuilder($connection);
129+
$session = new DoctrineBridge($connection);
130130
\assert($session instanceof DatabaseSession);
131131
```
132132

@@ -189,14 +189,14 @@ composer require makinacorpus/query-builder
189189
Setting it up is easier than standalone setup:
190190

191191
```php
192-
use MakinaCorpus\QueryBuilder\Bridge\Pdo\PdoQueryBuilder;
192+
use MakinaCorpus\QueryBuilder\Bridge\Pdo\PdoBridge;
193193
use MakinaCorpus\QueryBuilder\DatabaseSession;
194194

195195
// Create or fetch your PDO connection.
196196
$connection = new \PDO('pgsql:...');
197197

198198
// User facade for you to build SQL queries.
199-
$session = new PdoQueryBuilder($connection);
199+
$session = new PdoBridge($connection);
200200
\assert($session instanceof DatabaseSession);
201201
```
202202

docs/content/query/result.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ you can call `Query::executeQuery()` over your queries, for example:
2222

2323
```php
2424
use Doctrine\DBAL\DriverManager;
25-
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineQueryBuilder;
25+
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineBridge;
2626

27-
$session = new DoctrineQueryBuilder(
27+
$session = new DoctrineBridge(
2828
DriverManager::getConnection([
2929
'driver' => 'pdo_pgsql',
3030
// ... driver options.
@@ -46,9 +46,9 @@ You may also directly execute raw SQL code as such:
4646

4747
```php
4848
use Doctrine\DBAL\DriverManager;
49-
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineQueryBuilder;
49+
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineBridge;
5050

51-
$session = new DoctrineQueryBuilder(
51+
$session = new DoctrineBridge(
5252
DriverManager::getConnection([
5353
'driver' => 'pdo_pgsql',
5454
// ... driver options.
@@ -79,10 +79,10 @@ instances:
7979

8080
```php
8181
use Doctrine\DBAL\DriverManager;
82-
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineQueryBuilder;
82+
use MakinaCorpus\QueryBuilder\Bridge\Doctrine\DoctrineBridge;
8383
use MakinaCorpus\QueryBuilder\Result\ResultRow;
8484

85-
$session = new DoctrineQueryBuilder(
85+
$session = new DoctrineBridge(
8686
DriverManager::getConnection([
8787
'driver' => 'pdo_pgsql',
8888
// ... driver options.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace MakinaCorpus\QueryBuilder\Bridge\Doctrine;
6+
7+
class DoctrineBridge extends DoctrineQueryBuilder
8+
{
9+
}

src/Bridge/Doctrine/DoctrineQueryBuilder.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,10 @@
1717
use MakinaCorpus\QueryBuilder\Vendor;
1818
use MakinaCorpus\QueryBuilder\Writer\Writer;
1919

20+
/**
21+
* @deprecated This will be removed in 2.0, use DoctrineBridge instead.
22+
* @see DoctrineBridge
23+
*/
2024
class DoctrineQueryBuilder extends AbstractBridge
2125
{
2226
private Connection $connection;
@@ -28,6 +32,10 @@ public function __construct(
2832
parent::__construct();
2933

3034
$this->connection = $connection;
35+
36+
if (static::class === self::class) {
37+
@\trigger_error(\sprintf("Class '%s' is deprecated and will be removed in 2.0, use '%s' instead.", DoctrineQueryBuilder::class, DoctrineBridge::class));
38+
}
3139
}
3240

3341
/**

src/Bridge/Pdo/PdoBridge.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace MakinaCorpus\QueryBuilder\Bridge\Pdo;
6+
7+
class PdoBridge extends PdoQueryBuilder
8+
{
9+
}

src/Bridge/Pdo/PdoQueryBuilder.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@
2020
use MakinaCorpus\QueryBuilder\Result\Result;
2121
use MakinaCorpus\QueryBuilder\Vendor;
2222

23+
/**
24+
* @deprecated This will be removed in 2.0, use PdoBridge instead.
25+
* @see PdoBridge
26+
*/
2327
class PdoQueryBuilder extends AbstractBridge
2428
{
2529
private ?\PDO $connection = null;
@@ -30,6 +34,10 @@ public function __construct(
3034
parent::__construct();
3135

3236
$this->connection = $connection;
37+
38+
if (static::class === self::class) {
39+
@\trigger_error(\sprintf("Class '%s' is deprecated and will be removed in 2.0, use '%s' instead.", PdoQueryBuilder::class, PdoBridge::class));
40+
}
3341
}
3442

3543
/**

0 commit comments

Comments
 (0)