How Apex hooks work

Apex hooks are included at multiple points in the Deal Manager process flow. These hooks enable you to use an Apex class to customize the data returned by a specific point in the process. For each Apex hook, use of a custom Apex class at that point is optional.

Each Apex hook has a specific interface or interfaces that you must use to create the Apex class that is called for the hook.

Each Apex hook has a corresponding field on the Product Selector Configuration or other related object. This field indicates which Apex class should be called for an Apex hook, for any Add Lines or Line List component mapped to the Product Selector Configuration.

Multiple interface versions

New inputs or outputs may be required for a given hook. However, to maintain backwards compatibility, we cannot change the signature of an existing interface. Instead, we create a copy of the interface, rename the copy, and then add the new inputs or outputs to that copy.

When this occurs:

  • The original and copied services are included in the package.
  • Implementations that use the copied version of the interface will continue to work.
  • Future implementations will use the newest version.

Apex hooks summary

The following table lists Apex hooks, their associated component or modal, and corresponding Product Selector Configuration field or a field on another mapped SObject.

# Component / Modal Name / Description Corresponding field
1 Add Lines Filters values in a pre-entry field Pre-Entry Field Options Filterer
2 Add Lines Add Lines Records Display Hook Pre-entry Fields Configurer Class
3 Add Lines Alters lines to be added—Pre-IQA Hook Line Items Creation Configurer Class
4 Add Lines Alters lines to be added—Post-IQA Hook Line Items Evaluation Post Processor
5 Line Items Editable/Deletable Lines Display Hook Line Items Operations Configurer Class
6 Line Items Line Items Filter Hook Line Items Filterer Class
7 Line Items Determines available options in Line Items post-processable field Filter Field Post-Processor Class
8 Line Items Filters line list based on Post-Processable Filter Field value Filter Field Post-Processor Class
9 Edit Lines OnChange Event Hook on Attribute Sublines in Edit Lines modal Subline Change Updater Class
10 Edit Lines Updates sublines and parent line when a tiered pricing subline is updated in Edit Lines modal Tiered Subline Change Updater Class
11 Edit Lines OnChange Event Hook on Parent Line in Edit Lines modal Line Change Subline Updater
12 Parent Line Parameter Subline Validation Hook Subline Validator
13 Template List Filters Templates in Template List view Template Provider Class
14 Mass Edit control Filters the list of available options in a Mass Edit policy Mass Edit Parameter Options Filterer
15 Configurable Data Table Controls records display in CDT Record Filterer Class