code: public void remove() throws NotSupportedException,InternalLogException
    {
      if (tc.isEntryEnabled()) Tr.entry(tc, "remove",this);
  
      if (!_removeSupported)
      {
        if (tc.isEntryEnabled()) Tr.exit(tc, "remove", "NotSupportedException");
        throw new NotSupportedException(null);      
      }
  
      if (_removeIterator != null)
      {
        if (_callback != null)
        {
          // Remove the object from the underlying map (via the iterator)
          _removeIterator.remove();
  
          try
          {
            _callback.removing(_removeObject);
          }
          catch (Exception exc)
          {
            FFDCFilter.processException(exc, "com.ibm.ws.recoverylog.spi.LogCursorImpl.remove", "469", this);
            if (tc.isEventEnabled()) Tr.event(tc, "An unexpected error occured whilst attempting to remove an object from the cursor");
            if (tc.isEntryEnabled()) Tr.exit(tc, "remove", "InternalLogException");
            throw new InternalLogException(exc);
          }
        }
  
        // Forget about the removed object so that no attempt can be made to issue
        // a duplicate remove operation.
        _removeIterator = null;
        _removeObject = null;
      }
  
      if (tc.isEntryEnabled()) Tr.exit(tc, "remove");
    }
docs: Removes the object previously extracted on the last call to next() from the
  underlying structure. For example a RecoverableUnit my be removed from the
  list of active RecoverableUnits by first extracting it on a call to next()
  and then calling remove(). This operation would be the logical equivalent
  of calling ServiceLog.removeRecoverableUnit except that this method may be
  invoked whilst processing the LogCursorImpl.
  
  @exception NotSupportedException This LogCursorImpl instance does not support the
  remove operation.