Eligibility and Entitlement Engine Hooks

The Eligibility and Entitlement Engine contains a number of hooks which can be availed of by customers needing to provide custom input to the Eligibility and Entitlement Engine. The following table lists the hook class(es) available in the Eligibility and Entitlement Engine. For additional information, please refer to the JavaDoc of the associated class.

Table 1. Eligibility and Entitlement Engine Hooks
Hook Class Description
curam.core.sl.infrastructure.assessment.impl.
AssessmentEngineHooks
This class contains a number of Eligibility and Entitlement Engine customization/hook points.
curam.core.sl.infrastructure.assessment.impl.
ReassessEligiblityHook
This class contains a number of product specific hook/customization points called during Eligibility Assessment.

For the AssessmentEngineHooks, there is an out-of-the-box implementation of some of these hooks inside AssessmentEngineHooksImpl. Customers can provide their own implementation and make these available in the application through the use of Guice bindings, binding AssessmentEngineHooks.class to the custom implementation. The detail of how to do this is covered in the Persistence Cookbook.

For the ReassessEligibilityHook, customers can provide an implementation of these hook points for a specific product, and make them available to the application through the use of Guice bindings, as follows:

final MapBinder<Long, ReassessEligibilityHook> reassessEligibilityHooks =
  MapBinder.newMapBinder(binder(), Long.class, ReassessEligibilityHook.class);

reassessEligibilityHooks.addBinding(new Long(<PRODUCT_ID>)).to(<HOOK_IMPL>.class);