/*
* This file is part of the HyperGraphDB source distribution. This is copyrighted
* software. For permitted uses, licensing options and redistribution, please see
* the LicensingInformation file at the root level of the distribution.
*
* Copyright (c) 2005-2010 Kobrix Software, Inc. All rights reserved.
*/
package org.hypergraphdb.handle;
import java.lang.ref.ReferenceQueue;
import org.hypergraphdb.HGPersistentHandle;
public class PhantomManagedHandle extends PhantomHandle implements HGManagedLiveHandle
{
private long retrievalCount;
private long lastAccessTime;
public PhantomManagedHandle(Object ref,
HGPersistentHandle persistentHandle,
byte flags,
ReferenceQueue<Object> refQueue,
long retrievalCount,
long lastAccessTime)
{
super(ref, persistentHandle, flags, refQueue);
this.retrievalCount = retrievalCount;
this.lastAccessTime = lastAccessTime;
}
public void accessed()
{
lastAccessTime = System.currentTimeMillis();
retrievalCount++;
}
public long getLastAccessTime()
{
return lastAccessTime;
}
public long getRetrievalCount()
{
return retrievalCount;
}
}