public synchronized boolean isEmpty(Transaction transaction)
                    throws ObjectManagerException
    {
        if (Tracing.isAnyTracingEnabled() && trace.isEntryEnabled())
            trace.entry(this,
                        cclass,
                        "isEmpty",
                        new Object[] { transaction });

        // Use Long.MAX_VALUE as the unlock point, this indicates that any link unlocked ahead
        // of the scan will indicate it is not empty.
        boolean isEmpty = (nextLink(null, transaction, Long.MAX_VALUE) == null);

        if (Tracing.isAnyTracingEnabled() && trace.isEntryEnabled())
            trace.exit(this, cclass,
                       "isEmpty",
                       new Object[] { new Boolean(isEmpty) });
        return isEmpty;
    }
public synchronized boolean isEmpty ( Transaction transaction ) throws ObjectManagerException { if ( Tracing . isAnyTracingEnabled ( ) && trace . isEntryEnabled ( ) ) trace . entry ( this , cclass , "isEmpty" , new Object [ ] { transaction } ) ; boolean isEmpty = ( nextLink ( null , transaction , Long . MAX_VALUE ) == null ) ; if ( Tracing . isAnyTracingEnabled ( ) && trace . isEntryEnabled ( ) ) trace . exit ( this , cclass , "isEmpty" , new Object [ ] { new Boolean ( isEmpty ) } ) ; return isEmpty ; }
@param transaction governs visibility of elements in the list, may be null.
@return true if the list is empty.
@throws ObjectManagerException