// server/01k0
if (_useCount.get() > 1)
return true;
try {
ByteStreamCache cache = _manager.getCache();
if (cache == null)
return ! isNew;
// server/015m
if (! isNew && _manager.isSaveOnShutdown())
return true;
ExtCacheEntry entry = cache.getExtCacheEntry(_id);
ExtCacheEntry cacheEntry = _cacheEntry;
if (entry != null) {
// server/01a1, #4419
_idleTimeout = entry.getIdleTimeout() * 4 / 5;
//_isIdleSet = true;
}
if (entry != null && cacheEntry != null
&& cacheEntry.getValueHashKey() != null
&& cacheEntry.getValueHashKey().equals(entry.getValueHashKey())) {
if (log.isLoggable(Level.FINE)) {
log.fine(this + " session load-same valueHash="
+ (entry != null ? entry.getValueHashKey() : null));
}
return true;
}
TempOutputStream os = new TempOutputStream();
if (cache.get(_id, os)) {
InputStream is = os.getInputStream();
SessionDeserializer in = _manager.createSessionDeserializer(is);
if (log.isLoggable(Level.FINE)) {