[DDC-1980] [GH-423] DDC-1955 - @EntityListeners Created: 12/Aug/12  Updated: 18/Dec/13  Resolved: 27/Feb/13

Status: Resolved
Project: Doctrine 2 - ORM
Component/s: None
Affects Version/s: None
Fix Version/s: 2.4
Security Level: All

Type: New Feature Priority: Major
Reporter: Benjamin Eberlei Assignee: Benjamin Eberlei
Resolution: Fixed Votes: 0
Labels: None


This issue is created automatically through a Github pull request on behalf of FabioBatSilva:

Url: https://github.com/doctrine/doctrine2/pull/423




This path adds support for ```@EntityListeners```

This path add another way to handle events
allow configure the same listener for many specific entities.
And give the EventArg in the current lifecycle callback system.

Usage :


  • @EntityListeners( {"ContractListener"}


  • @HasLifecycleCallbacks
  • @Entity
    class Contract
    /** @PostLoad */
    public function postLoadHandler(LifecycleEventArgs $event) { // do something }
    class ContractListener
    /** @PrePersist */
    public function prePersistHandler(Contract $contract)
    { // do something }


  • @PostPersist
  • Most of cases just the entity is needed.
  • as a second parameter LifecycleEventArgs allow access to the entity manager.
    public function postPersistHandler(Contract $contract, LifecycleEventArgs $args) { // do something }


Comment by Fabio B. Silva [ 27/Feb/13 ]

Merged : https://github.com/doctrine/doctrine2/commit/71a68a5c6fcd49538c3ef2f86d64bcde1958251c

Comment by Doctrine Bot [ 18/Dec/13 ]

A related Github Pull-Request [GH-423] was closed:

Generated at Tue Dec 01 11:43:03 EST 2015 using JIRA 6.4.10#64025-sha1:5b8b74079161cd76a20ab66dda52747ee6701bd6.