I see. This caching object is indeed the downside of this whole annotation framework. Now how about managing a global cache for these? This means that each access to a battery would involve a hash map access, but that may be acceptable performance-wise.