Feature #38177

Signal/Slot adapter for persistence events

Added by Adrian Föder over 9 years ago. Updated over 8 years ago.

Could have
Target version:
Start date:
Due date:
% Done:


Estimated time:
PHP Version:
Has patch:


Doctrine offers the so-called "lifecycle" events that are emitted on various stages in the life of an entity. I'd suggest to provide an Interface/Implementation pair for FLOW3 that translates these events to FLOW3 signals.
At the first draft, the implementation would of course handle Doctrine events.

My question to start with is, what "events" should that cover, initially? As a reminder; Doctrine offers

  • preRemove
  • postRemove
  • prePersist
  • postPersist
  • preUpdate
  • postUpdate
  • postLoad
  • loadClassMetadata
  • preFlush
  • onFlush
  • postFlush
  • onClear

Do we need to cover all these events? We should regard that not all backends offer exact equivalents, so we should agree to some common denominator.

Related issues

Related to TYPO3.Flow - Feature #47228: Allow doctrine event listeners to be configuredResolvedAlexander Berl2013-04-15


Updated by Adrian Föder over 9 years ago

  • Status changed from New to Accepted

Updated by Adrian Föder over 9 years ago

OK, so far I would go for the following signals:

  • emitObjectUpdated($object)
  • emitObjectPersisted($object)
  • emitObjectRemoved($object)

while looking around for some ideas, I discovered the Generic\Backend\AbstractBackend's methods, having emitRemovedObject() and emitPersistedObject(), whereas the latter additionally sends the state of the object: OBJECTSTATE_RECONSTITUTED or OBJECTSTATE_NEW.

This could be also adapted to that Persistence Signal Emitter, but mustn't. Consider this as a note only.


Updated by Gerrit Code Review over 9 years ago

  • Status changed from Accepted to Under Review

Patch set 1 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12210


Updated by Karsten Dambekalns almost 9 years ago

  • Target version deleted (2.0 beta 1)

Updated by Karsten Dambekalns over 8 years ago

  • Status changed from Under Review to Rejected

Also available in: Atom PDF