Description
If an inner class does not need to reference its enclosing instance, it can be static. This prevents a common cause of memory leaks and uses less memory per instance of the class (enclosing).
Came across StatsDeleteHandler as a non static inner class defined in MetaDataEndpointImpl without holding any implicit reference to MetaDataEndpointImpl. Taking this opportunity to find other non-static inner classes that are not holding implicit reference to their respective enclosing instances.