您创建的下一个处理程序 CalculationResultsHandler 将创建一个饼图,用来说明先前创建的逻辑 MortgageCalculatorHandler 所发布的详细信息。
充当两个处理程序之间的调解者的代码是一个 Infobus,它是 com.ibm.egl.rui 项目中的一个 EGL 库。
Infobus 按如下所示进行工作:
- 预订所指定名称的事件的处理程序(例如,CalculationResultsHandler)。在预订时,此处理程序还会提供发生所指定事件时将接收数据的函数的名称。作为此预订的结果,Infobus 将注册此函数,并维护稍后调用此函数时所需要的详细信息。
- 在适当的时机,同一处理程序或者另外的处理程序将发布此事件。此处理程序将指定事件名称和特定于事件的数据,并指示 Infobus 调用已注册的此函数。
在本课程中,您从处理这两个步骤中的第二个步骤开始。您将更新先前编写的 MortgageCalculatorHandler 处理程序,以在从远程服务返回新的计算结果时调用 Infobus publish 函数。然后,您将确保 CalculationResultsHandler 处理程序已预订事件。
通过发布和预订可以显示饼图。