added caching to doctrinehelper