* Overrides super implementation to property handle data row fetches.
*/
@Override
protected boolean interceptOIDQuery() {
if (query instanceof ObjectIdQuery) {
ObjectIdQuery oidQuery = (ObjectIdQuery) query;
if (!oidQuery.isFetchMandatory()) {
Object object = actingContext.getGraphManager().getNode(
oidQuery.getObjectId());
if (object != null) {
// TODO: andrus, 10/14/2006 - obtaining a row from an object is the
// only piece that makes this method different from the super
// implementation. This is used in NEW objects sorting on insert. It
// would be nice to implement an alternative algorithm that wouldn't
// require this hack.
if (oidQuery.isFetchingDataRows()) {
object = ((DataContext) actingContext)
.currentSnapshot((Persistent) object);
}
// do not return hollow objects
else if (((Persistent) object).getPersistenceState() == PersistenceState.HOLLOW) {