Skip to content

Commit 8ac6b0b

Browse files
mbabkerfranmomu
andauthored
Document expected EventArgs subtypes in listeners (#2761)
* Document expected EventArgs subtypes in listeners * Update src/Uploadable/UploadableListener.php --------- Co-authored-by: Fran Moreno <[email protected]>
1 parent 50352f7 commit 8ac6b0b

File tree

10 files changed

+146
-1
lines changed

10 files changed

+146
-1
lines changed

src/AbstractTrackingListener.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414
use Doctrine\ODM\MongoDB\DocumentManager;
1515
use Doctrine\ODM\MongoDB\Types\Type as TypeODM;
1616
use Doctrine\ORM\UnitOfWork;
17+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1718
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
19+
use Doctrine\Persistence\Event\ManagerEventArgs;
1820
use Doctrine\Persistence\Mapping\ClassMetadata;
1921
use Doctrine\Persistence\NotifyPropertyChanged;
2022
use Doctrine\Persistence\ObjectManager;
@@ -60,6 +62,10 @@ public function loadClassMetadata(EventArgs $eventArgs)
6062
/**
6163
* Processes object updates when the manager is flushed.
6264
*
65+
* @param ManagerEventArgs $args
66+
*
67+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
68+
*
6369
* @return void
6470
*/
6571
public function onFlush(EventArgs $args)
@@ -162,6 +168,10 @@ public function onFlush(EventArgs $args)
162168
/**
163169
* Processes updates when an object is persisted in the manager.
164170
*
171+
* @param LifecycleEventArgs $args
172+
*
173+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
174+
*
165175
* @return void
166176
*/
167177
public function prePersist(EventArgs $args)

src/Loggable/LoggableListener.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@
1111

1212
use Doctrine\Common\EventArgs;
1313
use Doctrine\ORM\Mapping\ClassMetadata as ORMClassMetadata;
14+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1415
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
16+
use Doctrine\Persistence\Event\ManagerEventArgs;
1517
use Doctrine\Persistence\Mapping\ClassMetadata;
1618
use Doctrine\Persistence\ObjectManager;
1719
use Gedmo\Exception\InvalidArgumentException;
@@ -140,6 +142,10 @@ public function loadClassMetadata(EventArgs $eventArgs)
140142
* Checks for inserted object to update its logEntry
141143
* foreign key
142144
*
145+
* @param LifecycleEventArgs $args
146+
*
147+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
148+
*
143149
* @return void
144150
*/
145151
public function postPersist(EventArgs $args)
@@ -187,6 +193,10 @@ public function postPersist(EventArgs $args)
187193
* Looks for loggable objects being inserted or updated
188194
* for further processing
189195
*
196+
* @param ManagerEventArgs $eventArgs
197+
*
198+
* @phpstan-param ManagerEventArgs<ObjectManager> $eventArgs
199+
*
190200
* @return void
191201
*/
192202
public function onFlush(EventArgs $eventArgs)

src/ReferenceIntegrity/ReferenceIntegrityListener.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Gedmo\ReferenceIntegrity;
1111

1212
use Doctrine\Common\EventArgs;
13+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1314
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
1415
use Doctrine\Persistence\Mapping\ClassMetadata;
1516
use Doctrine\Persistence\ObjectManager;
@@ -56,6 +57,10 @@ public function loadClassMetadata(EventArgs $eventArgs)
5657
* Looks for referenced objects being removed
5758
* to nullify the relation or throw an exception
5859
*
60+
* @param LifecycleEventArgs $args
61+
*
62+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
63+
*
5964
* @return void
6065
*/
6166
public function preRemove(EventArgs $args)

src/References/ReferencesListener.php

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
use Doctrine\Common\Collections\ArrayCollection;
1313
use Doctrine\Common\EventArgs;
14+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1415
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
1516
use Doctrine\Persistence\Mapping\ClassMetadata;
1617
use Doctrine\Persistence\ObjectManager;
@@ -74,6 +75,10 @@ public function loadClassMetadata(EventArgs $eventArgs)
7475
}
7576

7677
/**
78+
* @param LifecycleEventArgs $eventArgs
79+
*
80+
* @phpstan-param LifecycleEventArgs<ObjectManager> $eventArgs
81+
*
7782
* @return void
7883
*/
7984
public function postLoad(EventArgs $eventArgs)
@@ -140,6 +145,10 @@ static function () use ($id, &$manager, $class, $identifier) {
140145
}
141146

142147
/**
148+
* @param LifecycleEventArgs $eventArgs
149+
*
150+
* @phpstan-param LifecycleEventArgs<ObjectManager> $eventArgs
151+
*
143152
* @return void
144153
*/
145154
public function prePersist(EventArgs $eventArgs)
@@ -148,6 +157,10 @@ public function prePersist(EventArgs $eventArgs)
148157
}
149158

150159
/**
160+
* @param LifecycleEventArgs $eventArgs
161+
*
162+
* @phpstan-param LifecycleEventArgs<ObjectManager> $eventArgs
163+
*
151164
* @return void
152165
*/
153166
public function preUpdate(EventArgs $eventArgs)
@@ -190,6 +203,10 @@ public function getManager($type)
190203
}
191204

192205
/**
206+
* @param LifecycleEventArgs $eventArgs
207+
*
208+
* @phpstan-param LifecycleEventArgs<ObjectManager> $eventArgs
209+
*
193210
* @return void
194211
*/
195212
public function updateManyEmbedReferences(EventArgs $eventArgs)
@@ -237,6 +254,11 @@ protected function getNamespace()
237254
return __NAMESPACE__;
238255
}
239256

257+
/**
258+
* @param LifecycleEventArgs $eventArgs
259+
*
260+
* @phpstan-param LifecycleEventArgs<ObjectManager> $eventArgs
261+
*/
240262
private function updateReferences(EventArgs $eventArgs): void
241263
{
242264
$ea = $this->getEventAdapter($eventArgs);

src/Sluggable/SluggableListener.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
namespace Gedmo\Sluggable;
1111

1212
use Doctrine\Common\EventArgs;
13+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1314
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
15+
use Doctrine\Persistence\Event\ManagerEventArgs;
1416
use Doctrine\Persistence\Mapping\ClassMetadata;
1517
use Doctrine\Persistence\ObjectManager;
1618
use Gedmo\Exception\InvalidArgumentException;
@@ -239,6 +241,10 @@ public function loadClassMetadata(EventArgs $eventArgs)
239241
/**
240242
* Allows identifier fields to be slugged as usual
241243
*
244+
* @param LifecycleEventArgs $args
245+
*
246+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
247+
*
242248
* @return void
243249
*/
244250
public function prePersist(EventArgs $args)
@@ -261,6 +267,10 @@ public function prePersist(EventArgs $args)
261267
* Generate slug on objects being updated during flush
262268
* if they require changing
263269
*
270+
* @param ManagerEventArgs $args
271+
*
272+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
273+
*
264274
* @return void
265275
*/
266276
public function onFlush(EventArgs $args)

src/SoftDeleteable/SoftDeleteableListener.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
use Doctrine\ODM\MongoDB\UnitOfWork as MongoDBUnitOfWork;
1616
use Doctrine\ORM\EntityManagerInterface;
1717
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
18+
use Doctrine\Persistence\Event\ManagerEventArgs;
1819
use Doctrine\Persistence\Mapping\ClassMetadata;
1920
use Doctrine\Persistence\ObjectManager;
2021
use Gedmo\Mapping\MappedEventSubscriber;
@@ -60,6 +61,10 @@ public function getSubscribedEvents()
6061
* If it's a SoftDeleteable object, update the "deletedAt" field
6162
* and skip the removal of the object
6263
*
64+
* @param ManagerEventArgs $args
65+
*
66+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
67+
*
6368
* @return void
6469
*/
6570
public function onFlush(EventArgs $args)

src/Sortable/SortableListener.php

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
use Doctrine\Common\Comparable;
1313
use Doctrine\Common\EventArgs;
1414
use Doctrine\Common\Util\ClassUtils;
15+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1516
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
17+
use Doctrine\Persistence\Event\ManagerEventArgs;
1618
use Doctrine\Persistence\Mapping\ClassMetadata;
1719
use Doctrine\Persistence\ObjectManager;
1820
use Gedmo\Mapping\MappedEventSubscriber;
@@ -107,6 +109,10 @@ public function loadClassMetadata(EventArgs $args)
107109
* The synchronization of the objects in memory is done in postFlush. This
108110
* ensures that the positions have been successfully persisted to database.
109111
*
112+
* @param ManagerEventArgs $args
113+
*
114+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
115+
*
110116
* @return void
111117
*/
112118
public function onFlush(EventArgs $args)
@@ -151,6 +157,10 @@ public function onFlush(EventArgs $args)
151157
/**
152158
* Update maxPositions as needed
153159
*
160+
* @param LifecycleEventArgs $args
161+
*
162+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
163+
*
154164
* @return void
155165
*/
156166
public function prePersist(EventArgs $args)
@@ -175,6 +185,10 @@ public function prePersist(EventArgs $args)
175185
}
176186

177187
/**
188+
* @param LifecycleEventArgs $args
189+
*
190+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
191+
*
178192
* @return void
179193
*/
180194
public function postPersist(EventArgs $args)
@@ -185,6 +199,10 @@ public function postPersist(EventArgs $args)
185199
}
186200

187201
/**
202+
* @param LifecycleEventArgs $args
203+
*
204+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
205+
*
188206
* @return void
189207
*/
190208
public function preUpdate(EventArgs $args)
@@ -195,6 +213,10 @@ public function preUpdate(EventArgs $args)
195213
}
196214

197215
/**
216+
* @param LifecycleEventArgs $args
217+
*
218+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
219+
*
198220
* @return void
199221
*/
200222
public function postRemove(EventArgs $args)
@@ -207,6 +229,10 @@ public function postRemove(EventArgs $args)
207229
/**
208230
* Sync objects in memory
209231
*
232+
* @param ManagerEventArgs $args
233+
*
234+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
235+
*
210236
* @return void
211237
*/
212238
public function postFlush(EventArgs $args)

src/Translatable/TranslatableListener.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
use Doctrine\Common\EventArgs;
1313
use Doctrine\ODM\MongoDB\DocumentManager;
1414
use Doctrine\ORM\ORMInvalidArgumentException;
15+
use Doctrine\Persistence\Event\LifecycleEventArgs;
1516
use Doctrine\Persistence\Event\LoadClassMetadataEventArgs;
17+
use Doctrine\Persistence\Event\ManagerEventArgs;
1618
use Doctrine\Persistence\Mapping\ClassMetadata;
1719
use Doctrine\Persistence\ObjectManager;
1820
use Gedmo\Exception\InvalidArgumentException;
@@ -372,6 +374,10 @@ public function getTranslatableLocale($object, $meta, $om = null)
372374
* This has to be done in the preFlush because, when an entity has been loaded
373375
* in a different locale, no changes will be detected.
374376
*
377+
* @param ManagerEventArgs $args
378+
*
379+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
380+
*
375381
* @return void
376382
*/
377383
public function preFlush(EventArgs $args)
@@ -409,6 +415,10 @@ public function preFlush(EventArgs $args)
409415
* Looks for translatable objects being inserted or updated
410416
* for further processing
411417
*
418+
* @param ManagerEventArgs $args
419+
*
420+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
421+
*
412422
* @return void
413423
*/
414424
public function onFlush(EventArgs $args)
@@ -449,6 +459,10 @@ public function onFlush(EventArgs $args)
449459
* Checks for inserted object to update their translation
450460
* foreign keys
451461
*
462+
* @param LifecycleEventArgs $args
463+
*
464+
* @phpstan-param LifecycleEventArgs<ObjectManager> $args
465+
*
452466
* @return void
453467
*/
454468
public function postPersist(EventArgs $args)
@@ -482,6 +496,10 @@ public function postPersist(EventArgs $args)
482496
* After object is loaded, listener updates the translations
483497
* by currently used locale
484498
*
499+
* @param ManagerEventArgs $args
500+
*
501+
* @phpstan-param ManagerEventArgs<ObjectManager> $args
502+
*
485503
* @return void
486504
*/
487505
public function postLoad(EventArgs $args)

0 commit comments

Comments
 (0)