Henry, For point 1 yes. Not just me, even NetBeans considers it an
anti-pattern. Supplier return values should be placed in the
LogRecord.setParameters method. The 'msg' argument, if present, should always
be string. Using the patch I just described, it would allow callers to write
the same code as in your testcase and see the same formatted output. All of
the existing features of the logging framework would be usable out of the box
should the caller choose to opt in and used them. Under the current patch
there is no way to opt in because it only encourages the anti-pattern. All
parties involved benefit if we switch this around. I could create a prototype
from your patch if need be. For point 2, it is way off track and is not the
point I was trying to make. The short answer is that point 1 could be evolved
even further. Respectfully, Jason> Subject: Re: RFR 2: JDK-8005263: Logging
APIs takes Supplier<String> for message
> From: henry....@oracle.com
> Date: Fri, 28 Dec 2012 16:11:02 -0800
> CC: brian.go...@oracle.com; lambda-...@openjdk.java.net;
> core-libs-dev@openjdk.java.net
> To: jason_mehr...@hotmail.com
>
> Jason,
>
> If I understand you correctly, there are two main concerns,
>
> 1. You want to encourage MessageFormat style logging, consider the other way
> is an anti-pattern.
> 2. The construction of message could be further eliminated when a filter is
> involved.