public Cacheable takeOnIdentity(CacheManager cm, CacheableFactory holderFactory,
Object key, boolean forCreate, Object createParameter)
throws StandardException {
// tell the object it needs to create itself
Cacheable oldEntry = entry;
if (oldEntry == null)
oldEntry = holderFactory.newCacheable(cm);
if (forCreate) {
entry = oldEntry.createIdentity(key, createParameter);
} else {
entry = oldEntry.setIdentity(key);
}
if (entry != null) {
// item was found or created
if (SanityManager.DEBUG) {