the ObserverWrapper is a private inner class, so class in an anonymous namespace will not work.