void evictAllOfClass(String className) { AbstractClassMetaData cmd = nucleusCtx.getMetaDataManager().getMetaDataForClass(className, nucleusCtx.getClassLoaderResolver(null)); Iterator keyIter = cache.getKeys().iterator(); while (keyIter.hasNext()) { Object key = keyIter.next(); if (cmd.getIdentityType() == IdentityType.APPLICATION) { String targetClassName = IdentityUtils.getTargetClassNameForIdentity(key); if (className.equals(targetClassName)) { keyIter.remove(); } } else if (cmd.getIdentityType() == IdentityType.DATASTORE) { String targetClassName = IdentityUtils.getTargetClassNameForIdentity(key); if (className.equals(targetClassName)) { keyIter.remove(); } } } }
private Cache getCacheForId(Object id) { if (IdentityUtils.isSingleFieldIdentity(id) || IdentityUtils.isDatastoreIdentity(id)) { return getCacheForClass(IdentityUtils.getTargetClassNameForIdentity(id)); } return defaultCache; } }
private Cache getCacheForId(Object id) { if (IdentityUtils.isSingleFieldIdentity(id) || IdentityUtils.isDatastoreIdentity(id)) { return getCacheForClass(IdentityUtils.getTargetClassNameForIdentity(id)); } return defaultCache; } }
if (cmd.getIdentityType() == IdentityType.APPLICATION) String targetClassName = IdentityUtils.getTargetClassNameForIdentity(key); if (className.equals(targetClassName)) String targetClassName = IdentityUtils.getTargetClassNameForIdentity(key); if (className.equals(targetClassName))
if (cmd.getIdentityType() == IdentityType.APPLICATION) String targetClassName = IdentityUtils.getTargetClassNameForIdentity(key); if (className.equals(targetClassName)) String targetClassName = IdentityUtils.getTargetClassNameForIdentity(key); if (className.equals(targetClassName))
@Override public String getClassNameForObjectID(Object id, ClassLoaderResolver clr, ExecutionContext ec) { String targetClassName = null; if (IdentityUtils.isSingleFieldIdentity(id)) { // Using SingleFieldIdentity so can assume that object is of the target class or a subclass targetClassName = IdentityUtils.getTargetClassNameForIdentity(id); String[] subclasses = getMetaDataManager().getSubclassesForClass(targetClassName, true); if (subclasses == null) { // No subclasses so must be the specified type return targetClassName; } String[] possibleNames = new String[subclasses.length+1]; possibleNames[0] = targetClassName; for (int i=0;i<subclasses.length;i++) { possibleNames[i+1] = subclasses[i]; } return getClassNameForIdentity(ec, possibleNames, id); } return super.getClassNameForObjectID(id, clr, ec); }
String className = IdentityUtils.getTargetClassNameForIdentity(id); if (className != null)
objClassName = IdentityUtils.getTargetClassNameForIdentity(value);
String idClassName = IdentityUtils.getTargetClassNameForIdentity(id); if (idClassName != null) if (id != null) String idClassName = IdentityUtils.getTargetClassNameForIdentity(id); if (!pcClassForObject.getName().equals(idClassName))