This can be done by creating a Guice module class and adding a corresponding entry in the MODULE table. A Guice module class is created by deriving a class from com.google.guice.AbstractModule and overriding the configure method to add the following statement:
public void configure() { MapBinder<String, Method> broadcastEvidenceHookMapBinder = MapBinder.newMapBinder(binder(), String.class, Method.class, new RegistrarImpl(RegistrarType.EVIDENCE_BROKER)); broadcastEvidenceHookMapBinder.addBinding(CASETYPECODE. INTEGRATEDCASE).toInstance(BroadcastEvidenceFactory.class. getMethod(ReflectionConst.kNewInstance, new Class[0])); }
Where 'RegistrarType.EVIDENCE_BROKER' is an annotation which is used to differentiate between various registrar maps.
It is not necessary to create a new module for each of such hooks you have to bind. Single module class per component will work well.