bug 449875: Use WeakHashMap to keep the Context objects thus the Context objects will be automatically removed when they are no longer in ordinary use.