This class is a helper class and provides support for handling multiple data sources. You can think of a DataSourceBean as a map of named DataSource or DataSourcePool instances. This class is also responsible for initialization of data source. Moreover, if data source will change during runtime DataSourceBean is responsible for firing a DataSourceChangedEvent to notify other classes about this change.