> >>In log4j, commons-logging, etc.  a common pattern is
> >>
> >>if (isDebugEnabled()) {
> >>    // some expensive string building to put message together
> >>   log.debug(expensiveMessage);
> >>}
> >>
> >>I don't see such functionality in Ant
> > 
> > 
> > Because Ant doesn't have a way to determine isDebugEnabled().
> > XmlLogger, for example, logs everything and ignores the command line
> > switches.  So the only "thing" which would know it is the listeners
> > themselves.
> > 
> > Since the listener API doesn't expose the verbosity - and 
> changing the
> > interface is no good idea either - I don't see how we could do it.
> 
> I've always wondered how much overhead the verbose/debug log 
> info takes 
> up. It would make sense to determine the cost before addressing the 
> issue. And, as you say, the only solution is changing the 
> interface (or 
> cheating, using reflection on the side).

Or introducing a new ...

public interface BuildLogger2 extends BuildLogger {
    public boolean isVerboseEnabled();
    ...
}


Jan

Reply via email to