Implementing Domain Trigger logic
The most common initial use case for a Domain class is to encapsulate the Apex Trigger logic. In order to enable this, a small Apex Trigger is required to invoke the triggerHandler
method. This will route the various Trigger events to the appropriate methods in the Domain class (as shown in the preceding screenshot), avoiding the need for the usual if/else
logic around Trigger.isXXXX
variables.
The name of this trigger can be anything, though it makes sense to match it with that of the corresponding Domain class. Once this is in place, you can ignore it and focus on implementing the Domain class methods as follows:
trigger Seasons on Season__c (
after delete, after insert, after update,
before delete, before insert, before update) {
fflib_SObjectDomain.triggerHandler(Seasons.class);
}
Note
At the time of writing this book, the base class did not support undelete
events from Apex Triggers. If this is required, you can consider extending the base class...