public boolean logModified(Logger log){
  if (_isDigestModified) {
    log.info(_source.getNativePath() + " digest is modified.");
    return true;
  }
  long sourceLastModified=_source.getLastModified();
  long sourceLength=_source.length();
  if (!_requireSource && sourceLastModified == 0) {
    return false;
  }
 else   if (sourceLength != _length) {
    log.info(_source.getNativePath() + " length is modified (" + _length+ " -> "+ sourceLength+ ")");
    return true;
  }
 else   if (sourceLastModified != _lastModified) {
    log.info(_source.getNativePath() + " time is modified.");
    return true;
  }
 else   return false;
}

public boolean logModified ( Logger log ) { if ( _isDigestModified ) { log . info ( _source . getNativePath ( ) + " digest is modified." ) ; return true ; } long sourceLastModified = _source . getLastModified ( ) ; long sourceLength = _source . length ( ) ; if ( ! _requireSource && sourceLastModified == 0 ) { return false ; } else if ( sourceLength != _length ) { log . info ( _source . getNativePath ( ) + " length is modified (" + _length + " -> " + sourceLength + ")" ) ; return true ; } else if ( sourceLastModified != _lastModified ) { log . info ( _source . getNativePath ( ) + " time is modified." ) ; return true ; } else return false ; }
log the reason for modification
