ppkarwasz commented on code in PR #2374:
URL: https://github.com/apache/logging-log4j2/pull/2374#discussion_r1527196204


##########
log4j-api/src/main/java/org/apache/logging/log4j/util/ProviderUtil.java:
##########
@@ -163,6 +172,88 @@ static void lazyInit() {
         }
     }
 
+    /**
+     * Used to test the public {@link #getProvider()} method.
+     */
+    static Provider selectProvider(final PropertiesUtil properties) {

Review Comment:
   I tested the externally observable behavior:
   
   1. the `log4j.provider` system property creates a provider with the 
specified class name,
   2. the `log4j2.loggerContextFactory` system property create a provider with 
the specified logger context factory class,
   3. if more than one implementation is available, the implementation with 
highest `getPriority` wins.
   
   What happens in the remaining cases (multiple system properties set, typos 
in the names of properties) are in my opinion implementation details and we can 
change them at will without breaking the `#getProvider()` contract.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to