/** * Corresponds to {@link BeansWrapper#removeFromClassIntrospectionCache(Class)}. * * @since 2.3.20 */ void remove(Class<?> clazz) { synchronized (sharedLock) { cache.remove(clazz); cacheClassNames.remove(clazz.getName()); clearingCounter++; for (WeakReference<Object> regedMfREf : modelFactories) { Object regedMf = regedMfREf.get(); if (regedMf != null) { if (regedMf instanceof ClassBasedModelFactory) { ((ClassBasedModelFactory) regedMf).removeFromCache(clazz); } else if (regedMf instanceof ModelCache) { ((ModelCache) regedMf).clearCache(); // doesn't support selective clearing ATM } else { throw new BugException(); } } } removeClearedModelFactoryReferences(); } }
/** * Corresponds to {@link BeansWrapper#removeFromClassIntrospectionCache(Class)}. * * @since 2.3.20 */ void remove(Class<?> clazz) { synchronized (sharedLock) { cache.remove(clazz); cacheClassNames.remove(clazz.getName()); clearingCounter++; for (WeakReference<Object> regedMfREf : modelFactories) { Object regedMf = regedMfREf.get(); if (regedMf != null) { if (regedMf instanceof ClassBasedModelFactory) { ((ClassBasedModelFactory) regedMf).removeFromCache(clazz); } else if (regedMf instanceof ModelCache) { ((ModelCache) regedMf).clearCache(); // doesn't support selective clearing ATM } else { throw new BugException(); } } } removeClearedModelFactoryReferences(); } }
/** * Corresponds to {@link BeansWrapper#removeFromClassIntrospectionCache(Class)}. * * @since 2.3.20 */ void remove(Class<?> clazz) { synchronized (sharedLock) { cache.remove(clazz); cacheClassNames.remove(clazz.getName()); clearingCounter++; for (WeakReference<Object> regedMfREf : modelFactories) { Object regedMf = regedMfREf.get(); if (regedMf != null) { if (regedMf instanceof ClassBasedModelFactory) { ((ClassBasedModelFactory) regedMf).removeFromCache(clazz); } else if (regedMf instanceof ModelCache) { ((ModelCache) regedMf).clearCache(); // doesn't support selective clearing ATM } else { throw new BugException(); } } } removeClearedModelFactoryReferences(); } }