add error logger for collection repository

refactor collection repository to incorporate error logger, update getAll method to accept callback