Java 9 में, प्लेटफ़ॉर्म लॉगिंग एपीआई सेवा . के साथ संदेशों को लॉग करने के लिए उपयोग किया जा सकता है उन संदेशों के उपभोक्ताओं के लिए इंटरफ़ेस। LoggerFinder . का कार्यान्वयन java.util.ServiceLoade . की सहायता से लोड किया गया है आर एपीआई सिस्टम क्लासलोडर का उपयोग करके। इस कार्यान्वयन के आधार पर, कोई एप्लिकेशन java.util.logging को कॉन्फ़िगर किए बिना अपने बाहरी लॉगिंग बैकएंड में प्लग इन कर सकता है ।
हम LoggerFinder . को क्लास का नाम या मॉड्यूल पास कर सकते हैं ताकि यह जान सके कि किस लकड़हारे को लौटना है।
public class MyLoggerFinder extends LoggerFinder { @Override public Logger getLogger(String name, Module module) { // return a logger depends on name/module } }
यदि कोई ठोस कार्यान्वयन नहीं मिल पाता है, तो एक डिफ़ॉल्ट लकड़हारा खोजक क्रियान्वयन का प्रयोग किया गया है। हम लकड़हारे प्राप्त करते हैं जो LoggerFinder . से बनाए गए हैं कारखाना . का उपयोग करके तरीके सिस्टम . के कक्षा।
public class System { System.Logger getLogger(String name) { } System.Logger getLogger(String name, ResourceBundle bundle) { } }