Hi Ralph,

On 30/09/15 18:30, Ralph Goers wrote:
What would be preferable is to have the serviceLoader accept “criteria” (which are 
callbacks) that can evaluate each of the located services based on any additional 
properties that are included in the properties file and either eliminate them or 
return a “ranking".  The serviceLoader would then end up with a set of eligible 
services in their preferred order.

I understand you may have another use case in mind, but in
what concerns jep264's LoggerFinder though - I don't think
that would be useful. The JDK can only use one LoggerFinder
service implementation, and if more than one is found, it most
probably indicates a configuration error - where several
implementations have been put by mistake on the classpath.

Just taking the first and silently continue could end up in
strange misbehavior, where the application's developer would
not see the expected debug traces - because she configured
one framework but it's the other that happens to be used.

I believe it's a better idea to fail fast in this case.

best regards,

-- daniel

Reply via email to