Done With refactor of RepositoryFactory