lstrojny / procrastinator-bundle
Symfony2 integration for Procrastinator (lstrojny/procrastinator)
2.4.1
2014-01-19 22:49 UTC
Requires
- php: >=5.3.0
- lstrojny/procrastinator: dev-master
- symfony/framework-bundle: >=2.0
Requires (Dev)
- phpunit/phpunit: 3.*
This package is auto-updated.
Last update: 2024-10-16 06:06:30 UTC
README
Symfony2 integration for Procrastinator
Example usage in controller to execute event only if the postFlush event in Doctrine occured
<?php use Procrastinator\Deferred\DoctrineEventConditionalDeferred as Deferred; use Doctrine\ORM\Events as OrmEvents; class MyController ... { public function sendMailAction() { $entry = new Entity(); $entry->setText('hello world'); $message = Message::newInstance() ->setSubject('hello') ->setBody('new entry'); $mailer = $this->get('mailer'); $procrastinator->register( $procrastinator ->newDeferred() ->ifDoctrineEvent(OrmEvents::postFlush) ->name('sendMail') ->call(function() use ($mailer, $message) { $mailer->send($message); }) ->build() ); $em = $this->get('doctrine.orm.default_entity_manager'); $em->persist($entry); $em->flush(); } }