Skip to content

Commit 7e1d9ca

Browse files
committed
Use preFlush event introduced in Doctrine 2.2 (closes #89)
1 parent 0ecb31a commit 7e1d9ca

File tree

4 files changed

+17
-37
lines changed

4 files changed

+17
-37
lines changed

EventListener/Doctrine/CleanListener.php

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
namespace Vich\UploaderBundle\EventListener\Doctrine;
44

55
use Doctrine\Common\EventArgs;
6+
use Doctrine\ORM\Events;
67

78
/**
89
* CleanListener
910
*
1011
* Listen to the update event to delete old files accordingly.
1112
*
1213
* @author Kévin Gomez <[email protected]>
14+
* @author Konstantin Myakshin <[email protected]>
1315
*/
1416
class CleanListener extends BaseListener
1517
{
@@ -20,15 +22,13 @@ class CleanListener extends BaseListener
2022
*/
2123
public function getSubscribedEvents()
2224
{
23-
return array(
24-
'preUpdate',
25-
);
25+
return array(Events::preFlush);
2626
}
2727

2828
/**
2929
* @param EventArgs $event The event.
3030
*/
31-
public function preUpdate(EventArgs $event)
31+
public function preFlush(EventArgs $event)
3232
{
3333
$object = $this->adapter->getObjectFromArgs($event);
3434

@@ -38,7 +38,6 @@ public function preUpdate(EventArgs $event)
3838

3939
foreach ($this->getUploadableFields($object) as $field) {
4040
$this->handler->clean($object, $field);
41-
$this->adapter->recomputeChangeSet($event);
4241
}
4342
}
4443
}

EventListener/Doctrine/InjectListener.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
namespace Vich\UploaderBundle\EventListener\Doctrine;
44

55
use Doctrine\Common\EventArgs;
6+
use Doctrine\DBAL\Events;
67

78
/**
89
* InjectListener
@@ -20,9 +21,7 @@ class InjectListener extends BaseListener
2021
*/
2122
public function getSubscribedEvents()
2223
{
23-
return array(
24-
'postLoad',
25-
);
24+
return array(Events::postLoad);
2625
}
2726

2827
/**

EventListener/Doctrine/RemoveListener.php

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use Doctrine\Common\EventArgs;
66
use Doctrine\Common\Persistence\Proxy;
7+
use Doctrine\ORM\Events;
78

89
/**
910
* RemoveListener
@@ -22,8 +23,8 @@ class RemoveListener extends BaseListener
2223
public function getSubscribedEvents()
2324
{
2425
return array(
25-
'preRemove',
26-
'postRemove',
26+
Events::preRemove,
27+
Events::postRemove,
2728
);
2829
}
2930

@@ -34,11 +35,11 @@ public function getSubscribedEvents()
3435
*/
3536
public function preRemove(EventArgs $event)
3637
{
37-
$object = $this->adapter->getObjectFromArgs($event);
38+
$object = $this->adapter->getObjectFromArgs($event);
3839

39-
if ($this->isUploadable($object) && $object instanceof Proxy) {
40-
$object->__load();
41-
}
40+
if ($this->isUploadable($object) && $object instanceof Proxy) {
41+
$object->__load();
42+
}
4243
}
4344

4445
/**

EventListener/Doctrine/UploadListener.php

Lines changed: 4 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
namespace Vich\UploaderBundle\EventListener\Doctrine;
44

55
use Doctrine\Common\EventArgs;
6+
use Doctrine\ORM\Events;
67

78
/**
89
* UploadListener
910
*
1011
* Handles file uploads.
1112
*
1213
* @author Kévin Gomez <[email protected]>
14+
* @author Konstantin Myakshin <[email protected]>
1315
*/
1416
class UploadListener extends BaseListener
1517
{
@@ -20,16 +22,13 @@ class UploadListener extends BaseListener
2022
*/
2123
public function getSubscribedEvents()
2224
{
23-
return array(
24-
'prePersist',
25-
'preUpdate',
26-
);
25+
return array(Events::preFlush);
2726
}
2827

2928
/**
3029
* @param EventArgs $event The event.
3130
*/
32-
public function prePersist(EventArgs $event)
31+
public function preFlush(EventArgs $event)
3332
{
3433
$object = $this->adapter->getObjectFromArgs($event);
3534

@@ -41,22 +40,4 @@ public function prePersist(EventArgs $event)
4140
$this->handler->upload($object, $field);
4241
}
4342
}
44-
45-
/**
46-
* @param EventArgs $event The event.
47-
*/
48-
public function preUpdate(EventArgs $event)
49-
{
50-
$object = $this->adapter->getObjectFromArgs($event);
51-
52-
if (!$this->isUploadable($object)) {
53-
return;
54-
}
55-
56-
foreach ($this->getUploadableFields($object) as $field) {
57-
$this->handler->upload($object, $field);
58-
}
59-
60-
$this->adapter->recomputeChangeSet($event);
61-
}
6243
}

0 commit comments

Comments
 (0)