Implement annotation-based injection