refactoring ResourceCollection