The new method allows to add transfer listeners (e.g. the BandwidthMeter) after the data source has been created. To simplify the implementation for subclasses, this change also introduces a BaseDataSource which handles the list of listeners and the listener registration. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=202649563