Breaking: #288 - Use PSR-14 Events for Order Finishers¶
See Issue #288
Instead of defining the finishers for processing orders via TypoScript, the
ProcessOrderCreateEvent event is now
triggered at this point.
The previous finishers are registered accordingly to this event via Service.yaml.
This offers the advantage that you can define with
after, which dependencies must be fulfilled for
the order, without presetting them completely.
Two finishers were also removed in the process. One is the StockFinisher, which each product extension must register for itself.
On the other hand, the PaymentFinisher was also removed. Payment provider extensions must now trigger their own event and register all required finishers for this event themselves. This gives more flexibility to the payment provider extensions. For example, when to call the finishers for stock management.
For installations that do not have their own finishers registered, no adjustments should be required. Installations that have called their own finishers in the ordering process must be registered to the new event.
The finisher class must bring an __invoke() method and gets passed an appropriate event object.
Furthermore, the finisher must be configured in the Service.yaml to the event
The TypoScript configuration can be removed.