@Override @SuppressWarnings("unchecked") public Object structure(Object item) { final CacheEntry entry = (CacheEntry) item; final String[] names = persister.getPropertyNames(); final Map map = new HashMap( names.length + 3, 1f ); map.put( SUBCLASS_KEY, entry.getSubclass() ); map.put( VERSION_KEY, entry.getVersion() ); for ( int i=0; i<names.length; i++ ) { map.put( names[i], entry.getDisassembledState()[i] ); } return map; } }
subclassPersister = factory.getEntityPersister( entry.getSubclass() ); final Object optionalObject = event.getInstanceToLoad(); entity = optionalObject == null
private String findSubclass(Object entry) { // we won't find subclass for structured collections if (entry instanceof CacheEntry) { return ((CacheEntry) this.value).getSubclass(); } else if (entry instanceof Map) { Object maybeSubclass = ((Map) entry).get(StructuredCacheEntry.SUBCLASS_KEY); return maybeSubclass instanceof String ? (String) maybeSubclass : null; } else { return null; } }
private Class<?> getSubclassName(Object cacheEntry, boolean useStructuredCache) { String subclassName = null; if (useStructuredCache) { @SuppressWarnings("unchecked") Map structuredCacheEntry = (Map) cacheEntry; subclassName = (String) structuredCacheEntry.get(STRUCTURED_CACHE_ENTRY_SUBCLASS_KEY); } else { subclassName = ((CacheEntry) cacheEntry).getSubclass(); } Class<?> clazz; try { clazz = Class.forName(subclassName); } catch (ClassNotFoundException e) { throw new IllegalArgumentException(subclassName + " class is not found.", e); } return clazz; }
private Set<String> getCacheEntrySet(SecondLevelCacheStatistics slStats) { Set<String> entities = Generics.newHashSet(); /* Liefert z.Zt ClassCastException. * (http://opensource.atlassian.com/projects/hibernate/browse/HHH-2815) */ Map<?,?> entries = slStats.getEntries(); if (slStats != null && entries != null) { for (Iterator<?> iterator = entries.entrySet().iterator(); iterator.hasNext();) { Entry<?,?> entry = (Entry<?,?>) iterator.next(); if (entry.getValue() instanceof CacheEntry) { String clzz = ((CacheEntry)entry.getValue()).getSubclass(); if (clzz != null) { entities.add(clzz); } } } } return entities; }
public Object structure(Object item) { CacheEntry entry = (CacheEntry) item; String[] names = persister.getPropertyNames(); Map map = new HashMap(names.length+2); map.put( "_subclass", entry.getSubclass() ); map.put( "_version", entry.getVersion() ); map.put( "_lazyPropertiesUnfetched", entry.areLazyPropertiesUnfetched() ); for ( int i=0; i<names.length; i++ ) { map.put( names[i], entry.getDisassembledState()[i] ); } return map; } }
@Override @SuppressWarnings("unchecked") public Object structure(Object item) { final CacheEntry entry = (CacheEntry) item; final String[] names = descriptor.getPropertyNames(); final Map map = new HashMap( names.length + 3, 1f ); map.put( SUBCLASS_KEY, entry.getSubclass() ); map.put( VERSION_KEY, entry.getVersion() ); for ( int i=0; i<names.length; i++ ) { map.put( names[i], entry.getDisassembledState()[i] ); } return map; } }
public Object structure(Object item) { CacheEntry entry = (CacheEntry) item; String[] names = persister.getPropertyNames(); Map map = new HashMap(names.length+2); map.put( "_subclass", entry.getSubclass() ); map.put( "_version", entry.getVersion() ); map.put( "_lazyPropertiesUnfetched", entry.areLazyPropertiesUnfetched() ); for ( int i=0; i<names.length; i++ ) { map.put( names[i], entry.getDisassembledState()[i] ); } return map; } }
private static void writeDisassembled(final ObjectDataOutput out, final CacheEntry object) throws IOException { Serializable[] disassembledState = object.getDisassembledState(); out.writeInt(disassembledState.length); for (Serializable state : disassembledState) { out.writeObject(state); } out.writeUTF(object.getSubclass()); out.writeObject(object.getVersion()); }
private static void writeDisassembled(final ObjectDataOutput out, final CacheEntry object) throws IOException { Serializable[] disassembledState = object.getDisassembledState(); out.writeInt(disassembledState.length); for (Serializable state : disassembledState) { out.writeObject(state); } out.writeUTF(object.getSubclass()); out.writeObject(object.getVersion()); }
private static void writeDisassembled(final ObjectDataOutput out, final CacheEntry object) throws IOException { Serializable[] disassembledState = object.getDisassembledState(); out.writeInt(disassembledState.length); for (Serializable state : disassembledState) { out.writeObject(state); } out.writeUTF(object.getSubclass()); out.writeObject(object.getVersion()); }
private static void writeDisassembled(final ObjectDataOutput out, final CacheEntry object) throws IOException { Serializable[] disassembledState = object.getDisassembledState(); out.writeInt(disassembledState.length); for (Serializable state : disassembledState) { out.writeObject(state); } out.writeUTF(object.getSubclass()); out.writeBoolean(object.areLazyPropertiesUnfetched()); out.writeObject(object.getVersion()); }
private static void writeDisassembled(final ObjectDataOutput out, final CacheEntry object) throws IOException { Serializable[] disassembledState = object.getDisassembledState(); out.writeInt(disassembledState.length); for (Serializable state : disassembledState) { out.writeObject(state); } out.writeUTF(object.getSubclass()); out.writeBoolean(object.areLazyPropertiesUnfetched()); out.writeObject(object.getVersion()); }
private static void writeDisassembled(ObjectDataOutput out, CacheEntry object) throws IOException { Serializable[] disassembledState = object.getDisassembledState(); out.writeInt(disassembledState.length); for (Serializable state : disassembledState) { out.writeObject(state); } out.writeUTF(object.getSubclass()); out.writeBoolean(object.areLazyPropertiesUnfetched()); out.writeObject(object.getVersion()); }
EntityPersister subclassPersister = factory.getEntityPersister( entry.getSubclass() ); Object result = optionalObject == null ? session.instantiate( subclassPersister, id ) : optionalObject;
EntityPersister subclassPersister = factory.getEntityPersister( entry.getSubclass() ); Object result = optionalObject == null ? session.instantiate( subclassPersister, id ) : optionalObject;