From 03588947ce9192b3726b11da80e2a10498b66766 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Thu, 18 Dec 2025 05:03:27 +0000 Subject: [PATCH 1/2] feat: add usage examples for all drivers Create explicit, self-contained examples for: - MySQL (PDO, Doctrine DBAL) - Redis (Ext-Redis, Predis) - Mongo (MongoDB\Database) Each example demonstrates explicit driver instantiation, adapter wrapping, and retrieval via getDriver(). --- examples/mongo/database.php | 19 +++++++++++++++++++ examples/mysql/dbal.php | 24 ++++++++++++++++++++++++ examples/mysql/pdo.php | 17 +++++++++++++++++ examples/redis/ext-redis.php | 18 ++++++++++++++++++ examples/redis/predis.php | 22 ++++++++++++++++++++++ 5 files changed, 100 insertions(+) create mode 100644 examples/mongo/database.php create mode 100644 examples/mysql/dbal.php create mode 100644 examples/mysql/pdo.php create mode 100644 examples/redis/ext-redis.php create mode 100644 examples/redis/predis.php diff --git a/examples/mongo/database.php b/examples/mongo/database.php new file mode 100644 index 0000000..311af24 --- /dev/null +++ b/examples/mongo/database.php @@ -0,0 +1,19 @@ +selectDatabase('test_db'); + +// Wrap in adapter +$adapter = new MongoDatabaseAdapter($database); + +// Retrieve and use +$driver = $adapter->getDriver(); +$driver->listCollections(); diff --git a/examples/mysql/dbal.php b/examples/mysql/dbal.php new file mode 100644 index 0000000..a0cbef8 --- /dev/null +++ b/examples/mysql/dbal.php @@ -0,0 +1,24 @@ + 'test_db', + 'user' => 'user', + 'password' => 'password', + 'host' => '127.0.0.1', + 'driver' => 'pdo_mysql', +]); + +// Wrap in adapter +$adapter = new MySQLDBALAdapter($connection); + +// Retrieve and use +$driver = $adapter->getDriver(); +$driver->executeQuery('SELECT 1'); diff --git a/examples/mysql/pdo.php b/examples/mysql/pdo.php new file mode 100644 index 0000000..aa44f0d --- /dev/null +++ b/examples/mysql/pdo.php @@ -0,0 +1,17 @@ +getDriver(); +$stmt = $driver->query('SELECT 1'); diff --git a/examples/redis/ext-redis.php b/examples/redis/ext-redis.php new file mode 100644 index 0000000..5d2967e --- /dev/null +++ b/examples/redis/ext-redis.php @@ -0,0 +1,18 @@ +connect('127.0.0.1'); + +// Wrap in adapter +$adapter = new RedisAdapter($redis); + +// Retrieve and use +$driver = $adapter->getDriver(); +$driver->ping(); diff --git a/examples/redis/predis.php b/examples/redis/predis.php new file mode 100644 index 0000000..1cad2e9 --- /dev/null +++ b/examples/redis/predis.php @@ -0,0 +1,22 @@ + 'tcp', + 'host' => '127.0.0.1', + 'port' => 6379, +]); + +// Wrap in adapter +$adapter = new RedisPredisAdapter($client); + +// Retrieve and use +$driver = $adapter->getDriver(); +$driver->ping(); From 77ca7d35ff8fdc98a71dc58b792edc765a9bfcde Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Thu, 18 Dec 2025 05:13:35 +0000 Subject: [PATCH 2/2] feat: add usage examples for all drivers Create explicit, self-contained examples for: - MySQL (PDO, Doctrine DBAL) - Redis (Ext-Redis, Predis) - Mongo (MongoDB\Database) Each example demonstrates explicit driver instantiation, adapter wrapping, and retrieval via getDriver(). Examples are intentionally devoid of autoloaders or bootstrap logic to emphasize their role as snippet references for integration. --- examples/mongo/database.php | 2 -- examples/mysql/dbal.php | 3 +-- examples/mysql/pdo.php | 2 -- examples/redis/ext-redis.php | 3 +-- examples/redis/predis.php | 2 -- 5 files changed, 2 insertions(+), 10 deletions(-) diff --git a/examples/mongo/database.php b/examples/mongo/database.php index 311af24..dd47bd2 100644 --- a/examples/mongo/database.php +++ b/examples/mongo/database.php @@ -2,8 +2,6 @@ declare(strict_types=1); -require __DIR__ . '/../../vendor/autoload.php'; - use Maatify\DataAdapters\Adapters\Mongo\MongoDatabaseAdapter; use MongoDB\Client; diff --git a/examples/mysql/dbal.php b/examples/mysql/dbal.php index a0cbef8..7da87d1 100644 --- a/examples/mysql/dbal.php +++ b/examples/mysql/dbal.php @@ -2,11 +2,10 @@ declare(strict_types=1); -require __DIR__ . '/../../vendor/autoload.php'; - use Doctrine\DBAL\DriverManager; use Maatify\DataAdapters\Adapters\MySQL\MySQLDBALAdapter; +// DBAL connection creation is the application's responsibility // Create DBAL Connection explicitly $connection = DriverManager::getConnection([ 'dbname' => 'test_db', diff --git a/examples/mysql/pdo.php b/examples/mysql/pdo.php index aa44f0d..50b03a8 100644 --- a/examples/mysql/pdo.php +++ b/examples/mysql/pdo.php @@ -2,8 +2,6 @@ declare(strict_types=1); -require __DIR__ . '/../../vendor/autoload.php'; - use Maatify\DataAdapters\Adapters\MySQL\MySQLPDOAdapter; // Create PDO explicitly diff --git a/examples/redis/ext-redis.php b/examples/redis/ext-redis.php index 5d2967e..cc00364 100644 --- a/examples/redis/ext-redis.php +++ b/examples/redis/ext-redis.php @@ -2,9 +2,8 @@ declare(strict_types=1); -require __DIR__ . '/../../vendor/autoload.php'; - use Maatify\DataAdapters\Adapters\Redis\RedisAdapter; +use Redis; // Create Redis explicitly $redis = new Redis(); diff --git a/examples/redis/predis.php b/examples/redis/predis.php index 1cad2e9..f145f2c 100644 --- a/examples/redis/predis.php +++ b/examples/redis/predis.php @@ -2,8 +2,6 @@ declare(strict_types=1); -require __DIR__ . '/../../vendor/autoload.php'; - use Maatify\DataAdapters\Adapters\Redis\RedisPredisAdapter; use Predis\Client;