DataSourceInterface was changed to AbstractKosherDataSource because some methods was same in logic.