remove per-type expire time, clunky and doesnt work on types w/ args
This commit is contained in:
parent
c590a913fa
commit
d78cb4a0c3
|
@ -2,7 +2,6 @@ package net.hyperic.sigar;
|
||||||
|
|
||||||
class SigarCacheObject {
|
class SigarCacheObject {
|
||||||
|
|
||||||
int expire = SigarProxyCache.EXPIRE_DEFAULT;
|
|
||||||
long timestamp = 0;
|
long timestamp = 0;
|
||||||
Object value = null;
|
Object value = null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,36 +55,6 @@ public class SigarProxyCache
|
||||||
SigarLog.getLogger("SigarProxyCache").debug(msg);
|
SigarLog.getLogger("SigarProxyCache").debug(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final Class[] VOID_SIGNATURE = new Class[0];
|
|
||||||
|
|
||||||
public static void setExpire(SigarProxy proxy,
|
|
||||||
String type,
|
|
||||||
int expire)
|
|
||||||
throws SigarException {
|
|
||||||
|
|
||||||
SigarProxyCache handler =
|
|
||||||
(SigarProxyCache)Proxy.getInvocationHandler(proxy);
|
|
||||||
|
|
||||||
Method method;
|
|
||||||
|
|
||||||
try {
|
|
||||||
method = Sigar.class.getMethod("get" + type, VOID_SIGNATURE);
|
|
||||||
} catch (Exception e) {
|
|
||||||
throw new SigarException("invalid type " + type);
|
|
||||||
}
|
|
||||||
|
|
||||||
SigarCacheObject cacheVal =
|
|
||||||
(SigarCacheObject)handler.cache.get(method);
|
|
||||||
|
|
||||||
if (cacheVal == null) {
|
|
||||||
cacheVal = new SigarCacheObject();
|
|
||||||
}
|
|
||||||
|
|
||||||
cacheVal.expire = expire;
|
|
||||||
|
|
||||||
handler.cache.put(method, cacheVal);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void clear(Object proxy) {
|
public static void clear(Object proxy) {
|
||||||
SigarProxyCache handler =
|
SigarProxyCache handler =
|
||||||
(SigarProxyCache)Proxy.getInvocationHandler(proxy);
|
(SigarProxyCache)Proxy.getInvocationHandler(proxy);
|
||||||
|
@ -150,7 +120,6 @@ public class SigarProxyCache
|
||||||
|
|
||||||
if (cacheVal == null) {
|
if (cacheVal == null) {
|
||||||
cacheVal = new SigarCacheObject();
|
cacheVal = new SigarCacheObject();
|
||||||
cacheVal.expire = this.expire;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String argDebug = "";
|
String argDebug = "";
|
||||||
|
@ -167,7 +136,7 @@ public class SigarProxyCache
|
||||||
" in cache" + argDebug);
|
" in cache" + argDebug);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((timeNow - cacheVal.timestamp) > cacheVal.expire) {
|
if ((timeNow - cacheVal.timestamp) > this.expire) {
|
||||||
if (debugEnabled) {
|
if (debugEnabled) {
|
||||||
debug("expiring " + method.getName() +
|
debug("expiring " + method.getName() +
|
||||||
" from cache" + argDebug);
|
" from cache" + argDebug);
|
||||||
|
|
Loading…
Reference in New Issue