Skip to content

Commit 6d1cacd

Browse files
committed
Use LazyGhostObject for proxy objects
1 parent 783d281 commit 6d1cacd

File tree

3 files changed

+5
-8
lines changed

3 files changed

+5
-8
lines changed

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
"php": "^8.1",
2828
"ext-mongodb": "^1.16",
2929
"composer-runtime-api": "^2.0",
30-
"doctrine/mongodb-odm": "^2.6",
30+
"doctrine/mongodb-odm": "^2.10@dev",
3131
"doctrine/persistence": "^3.0",
3232
"psr/log": "^1.0 || ^2.0 || ^3.0",
3333
"symfony/config": "^6.4 || ^7.0",

config/mongodb.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
use Doctrine\Bundle\MongoDBBundle\Repository\ContainerRepositoryFactory;
99
use Doctrine\ODM\MongoDB\DocumentManager;
1010
use Doctrine\ODM\MongoDB\Tools\ResolveTargetDocumentListener;
11-
use ProxyManager\Proxy\GhostObjectInterface;
11+
use Doctrine\Persistence\Proxy;
1212
use Symfony\Bridge\Doctrine\ContainerAwareEventManager;
1313
use Symfony\Bridge\Doctrine\Security\User\EntityUserProvider;
1414
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
@@ -54,7 +54,7 @@
5454
'%doctrine_mongodb.odm.document_managers%',
5555
'%doctrine_mongodb.odm.default_connection%',
5656
'%doctrine_mongodb.odm.default_document_manager%',
57-
GhostObjectInterface::class,
57+
Proxy::class,
5858
service('service_container'),
5959
])
6060

src/DependencyInjection/DoctrineMongoDBExtension.php

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@
4646
use function in_array;
4747
use function interface_exists;
4848
use function is_dir;
49-
use function method_exists;
5049
use function sprintf;
5150

5251
/**
@@ -255,12 +254,10 @@ protected function loadDocumentManager(array $documentManager, string|null $defa
255254
'setPersistentCollectionDir' => '%doctrine_mongodb.odm.persistent_collection_dir%',
256255
'setPersistentCollectionNamespace' => '%doctrine_mongodb.odm.persistent_collection_namespace%',
257256
'setAutoGeneratePersistentCollectionClasses' => '%doctrine_mongodb.odm.auto_generate_persistent_collection_classes%',
257+
'setUseLazyGhostObject' => true,
258+
'setUseTransactionalFlush' => $documentManager['use_transactional_flush'],
258259
];
259260

260-
if (method_exists(ODMConfiguration::class, 'setUseTransactionalFlush')) {
261-
$methods['setUseTransactionalFlush'] = $documentManager['use_transactional_flush'];
262-
}
263-
264261
if ($documentManager['repository_factory']) {
265262
$methods['setRepositoryFactory'] = new Reference($documentManager['repository_factory']);
266263
}

0 commit comments

Comments
 (0)