<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<title>Source code</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<div class="sourceContainer">
<pre><span class="sourceLineNo">001</span>/*<a name="line.1"></a>
<span class="sourceLineNo">002</span> * Licensed to the Apache Software Foundation (ASF) under one or more<a name="line.2"></a>
<span class="sourceLineNo">003</span> * contributor license agreements. See the NOTICE file distributed with<a name="line.3"></a>
<span class="sourceLineNo">004</span> * this work for additional information regarding copyright ownership.<a name="line.4"></a>
<span class="sourceLineNo">005</span> * The ASF licenses this file to You under the Apache license, Version 2.0<a name="line.5"></a>
<span class="sourceLineNo">006</span> * (the "License"); you may not use this file except in compliance with<a name="line.6"></a>
<span class="sourceLineNo">007</span> * the License. You may obtain a copy of the License at<a name="line.7"></a>
<span class="sourceLineNo">008</span> *<a name="line.8"></a>
<span class="sourceLineNo">009</span> *      http://www.apache.org/licenses/LICENSE-2.0<a name="line.9"></a>
<span class="sourceLineNo">010</span> *<a name="line.10"></a>
<span class="sourceLineNo">011</span> * Unless required by applicable law or agreed to in writing, software<a name="line.11"></a>
<span class="sourceLineNo">012</span> * distributed under the License is distributed on an "AS IS" BASIS,<a name="line.12"></a>
<span class="sourceLineNo">013</span> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<a name="line.13"></a>
<span class="sourceLineNo">014</span> * See the license for the specific language governing permissions and<a name="line.14"></a>
<span class="sourceLineNo">015</span> * limitations under the license.<a name="line.15"></a>
<span class="sourceLineNo">016</span> */<a name="line.16"></a>
<span class="sourceLineNo">017</span>package org.apache.logging.log4j;<a name="line.17"></a>
<span class="sourceLineNo">018</span><a name="line.18"></a>
<span class="sourceLineNo">019</span>import org.apache.logging.log4j.message.EntryMessage;<a name="line.19"></a>
<span class="sourceLineNo">020</span>import org.apache.logging.log4j.message.Message;<a name="line.20"></a>
<span class="sourceLineNo">021</span>import org.apache.logging.log4j.message.MessageFactory;<a name="line.21"></a>
<span class="sourceLineNo">022</span>import org.apache.logging.log4j.message.MessageFactory2;<a name="line.22"></a>
<span class="sourceLineNo">023</span>import org.apache.logging.log4j.util.MessageSupplier;<a name="line.23"></a>
<span class="sourceLineNo">024</span>import org.apache.logging.log4j.util.Supplier;<a name="line.24"></a>
<span class="sourceLineNo">025</span><a name="line.25"></a>
<span class="sourceLineNo">026</span>/**<a name="line.26"></a>
<span class="sourceLineNo">027</span> * This is the central interface in the log4j package. Most logging operations, except configuration, are done through<a name="line.27"></a>
<span class="sourceLineNo">028</span> * this interface.<a name="line.28"></a>
<span class="sourceLineNo">029</span> *<a name="line.29"></a>
<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
<span class="sourceLineNo">031</span> * The canonical way to obtain a Logger for a class is through {@link LogManager#getLogger()}. Typically, each class<a name="line.31"></a>
<span class="sourceLineNo">032</span> * gets its own Logger named after its fully qualified class name (the default Logger name when obtained through the<a name="line.32"></a>
<span class="sourceLineNo">033</span> * {@link LogManager#getLogger()} method). Thus, the simplest way to use this would be like so:<a name="line.33"></a>
<span class="sourceLineNo">034</span> * &lt;/p&gt;<a name="line.34"></a>
<span class="sourceLineNo">035</span> *<a name="line.35"></a>
<span class="sourceLineNo">036</span> * &lt;pre&gt;&lt;code&gt;<a name="line.36"></a>
<span class="sourceLineNo">037</span> * public class MyClass {<a name="line.37"></a>
<span class="sourceLineNo">038</span> *     private static final Logger LOGGER = LogManager.getLogger();<a name="line.38"></a>
<span class="sourceLineNo">039</span> *     // ...<a name="line.39"></a>
<span class="sourceLineNo">040</span> * }<a name="line.40"></a>
<span class="sourceLineNo">041</span> * &lt;/code&gt;&lt;/pre&gt;<a name="line.41"></a>
<span class="sourceLineNo">042</span> * &lt;p&gt;<a name="line.42"></a>
<span class="sourceLineNo">043</span> * For ease of filtering, searching, sorting, etc., it is generally a good idea to create Loggers for each class rather<a name="line.43"></a>
<span class="sourceLineNo">044</span> * than sharing Loggers. Instead, {@link Marker Markers} should be used for shared, filterable identification.<a name="line.44"></a>
<span class="sourceLineNo">045</span> * &lt;/p&gt;<a name="line.45"></a>
<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
<span class="sourceLineNo">047</span> * For service provider implementations, it is recommended to extend the<a name="line.47"></a>
<span class="sourceLineNo">048</span> * {@link org.apache.logging.log4j.spi.AbstractLogger} class rather than implementing this interface directly.<a name="line.48"></a>
<span class="sourceLineNo">049</span> * &lt;/p&gt;<a name="line.49"></a>
<span class="sourceLineNo">050</span> *<a name="line.50"></a>
<span class="sourceLineNo">051</span> * Since 2.4, methods have been added to the {@code Logger} interface to support lambda expressions. The new methods<a name="line.51"></a>
<span class="sourceLineNo">052</span> * allow client code to lazily log messages without explicitly checking if the requested log level is enabled. For<a name="line.52"></a>
<span class="sourceLineNo">053</span> * example, previously one would write:<a name="line.53"></a>
<span class="sourceLineNo">054</span> *<a name="line.54"></a>
<span class="sourceLineNo">055</span> * &lt;pre&gt;&lt;code&gt;<a name="line.55"></a>
<span class="sourceLineNo">056</span> * // pre-Java 8 style optimization: explicitly check the log level<a name="line.56"></a>
<span class="sourceLineNo">057</span> * // to make sure the expensiveOperation() method is only called if necessary<a name="line.57"></a>
<span class="sourceLineNo">058</span> * if (logger.isTraceEnabled()) {<a name="line.58"></a>
<span class="sourceLineNo">059</span> *     logger.trace(&amp;quot;Some long-running operation returned {}&amp;quot;, expensiveOperation());<a name="line.59"></a>
<span class="sourceLineNo">060</span> * }<a name="line.60"></a>
<span class="sourceLineNo">061</span> * &lt;/code&gt;&lt;/pre&gt;<a name="line.61"></a>
<span class="sourceLineNo">062</span> * &lt;p&gt;<a name="line.62"></a>
<span class="sourceLineNo">063</span> * With Java 8, the same effect can be achieved with a lambda expression:<a name="line.63"></a>
<span class="sourceLineNo">064</span> *<a name="line.64"></a>
<span class="sourceLineNo">065</span> * &lt;pre&gt;<a name="line.65"></a>
<span class="sourceLineNo">066</span> * // Java-8 style optimization: no need to explicitly check the log level:<a name="line.66"></a>
<span class="sourceLineNo">067</span> * // the lambda expression is not evaluated if the TRACE level is not enabled<a name="line.67"></a>
<span class="sourceLineNo">068</span> * logger.trace(&amp;quot;Some long-running operation returned {}&amp;quot;, () -&amp;gt; expensiveOperation());<a name="line.68"></a>
<span class="sourceLineNo">069</span> * &lt;/pre&gt;<a name="line.69"></a>
<span class="sourceLineNo">070</span> *<a name="line.70"></a>
<span class="sourceLineNo">071</span> * &lt;p&gt;<a name="line.71"></a>
<span class="sourceLineNo">072</span> * Note that although {@link MessageSupplier} is provided, using {@link Supplier {@code Supplier&lt;Message&gt;}} works just the<a name="line.72"></a>
<span class="sourceLineNo">073</span> * same. MessageSupplier was deprecated in 2.6 and un-deprecated in 2.8.1. Anonymous class usage of these APIs<a name="line.73"></a>
<span class="sourceLineNo">074</span> * should prefer using Supplier instead.<a name="line.74"></a>
<span class="sourceLineNo">075</span> * &lt;/p&gt;<a name="line.75"></a>
<span class="sourceLineNo">076</span> */<a name="line.76"></a>
<span class="sourceLineNo">077</span>public interface Logger {<a name="line.77"></a>
<span class="sourceLineNo">078</span><a name="line.78"></a>
<span class="sourceLineNo">079</span>    /**<a name="line.79"></a>
<span class="sourceLineNo">080</span>     * Logs an exception or error that has been caught to a specific logging level.<a name="line.80"></a>
<span class="sourceLineNo">081</span>     *<a name="line.81"></a>
<span class="sourceLineNo">082</span>     * @param level The logging Level.<a name="line.82"></a>
<span class="sourceLineNo">083</span>     * @param t The Throwable.<a name="line.83"></a>
<span class="sourceLineNo">084</span>     */<a name="line.84"></a>
<span class="sourceLineNo">085</span>    void catching(Level level, Throwable t);<a name="line.85"></a>
<span class="sourceLineNo">086</span><a name="line.86"></a>
<span class="sourceLineNo">087</span>    /**<a name="line.87"></a>
<span class="sourceLineNo">088</span>     * Logs an exception or error that has been caught. Normally, one may wish to provide additional information with an<a name="line.88"></a>
<span class="sourceLineNo">089</span>     * exception while logging it; in these cases, one would not use this method. In other cases where simply logging<a name="line.89"></a>
<span class="sourceLineNo">090</span>     * the fact that an exception was swallowed somewhere (e.g., at the top of the stack trace in a {@code main()}<a name="line.90"></a>
<span class="sourceLineNo">091</span>     * method), this method is ideal for it.<a name="line.91"></a>
<span class="sourceLineNo">092</span>     *<a name="line.92"></a>
<span class="sourceLineNo">093</span>     * @param t The Throwable.<a name="line.93"></a>
<span class="sourceLineNo">094</span>     */<a name="line.94"></a>
<span class="sourceLineNo">095</span>    void catching(Throwable t);<a name="line.95"></a>
<span class="sourceLineNo">096</span><a name="line.96"></a>
<span class="sourceLineNo">097</span>    /**<a name="line.97"></a>
<span class="sourceLineNo">098</span>     * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.<a name="line.98"></a>
<span class="sourceLineNo">099</span>     *<a name="line.99"></a>
<span class="sourceLineNo">100</span>     * @param marker the marker data specific to this log statement<a name="line.100"></a>
<span class="sourceLineNo">101</span>     * @param msg the message string to be logged<a name="line.101"></a>
<span class="sourceLineNo">102</span>     */<a name="line.102"></a>
<span class="sourceLineNo">103</span>    void debug(Marker marker, Message msg);<a name="line.103"></a>
<span class="sourceLineNo">104</span><a name="line.104"></a>
<span class="sourceLineNo">105</span>    /**<a name="line.105"></a>
<span class="sourceLineNo">106</span>     * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.<a name="line.106"></a>
<span class="sourceLineNo">107</span>     *<a name="line.107"></a>
<span class="sourceLineNo">108</span>     * @param marker the marker data specific to this log statement<a name="line.108"></a>
<span class="sourceLineNo">109</span>     * @param msg the message string to be logged<a name="line.109"></a>
<span class="sourceLineNo">110</span>     * @param t A Throwable or null.<a name="line.110"></a>
<span class="sourceLineNo">111</span>     */<a name="line.111"></a>
<span class="sourceLineNo">112</span>    void debug(Marker marker, Message msg, Throwable t);<a name="line.112"></a>
<span class="sourceLineNo">113</span><a name="line.113"></a>
<span class="sourceLineNo">114</span>    /**<a name="line.114"></a>
<span class="sourceLineNo">115</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level with<a name="line.115"></a>
<span class="sourceLineNo">116</span>     * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.116"></a>
<span class="sourceLineNo">117</span>     * {@code Message}.<a name="line.117"></a>
<span class="sourceLineNo">118</span>     *<a name="line.118"></a>
<span class="sourceLineNo">119</span>     * @param marker the marker data specific to this log statement<a name="line.119"></a>
<span class="sourceLineNo">120</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.120"></a>
<span class="sourceLineNo">121</span>     * @since 2.4<a name="line.121"></a>
<span class="sourceLineNo">122</span>     */<a name="line.122"></a>
<span class="sourceLineNo">123</span>    void debug(Marker marker, MessageSupplier msgSupplier);<a name="line.123"></a>
<span class="sourceLineNo">124</span><a name="line.124"></a>
<span class="sourceLineNo">125</span>    /**<a name="line.125"></a>
<span class="sourceLineNo">126</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) with the<a name="line.126"></a>
<span class="sourceLineNo">127</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The<a name="line.127"></a>
<span class="sourceLineNo">128</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.128"></a>
<span class="sourceLineNo">129</span>     *<a name="line.129"></a>
<span class="sourceLineNo">130</span>     * @param marker the marker data specific to this log statement<a name="line.130"></a>
<span class="sourceLineNo">131</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.131"></a>
<span class="sourceLineNo">132</span>     * @param t A Throwable or null.<a name="line.132"></a>
<span class="sourceLineNo">133</span>     * @since 2.4<a name="line.133"></a>
<span class="sourceLineNo">134</span>     */<a name="line.134"></a>
<span class="sourceLineNo">135</span>    void debug(Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.135"></a>
<span class="sourceLineNo">136</span><a name="line.136"></a>
<span class="sourceLineNo">137</span>    /**<a name="line.137"></a>
<span class="sourceLineNo">138</span>     * Logs a message CharSequence with the {@link Level#DEBUG DEBUG} level.<a name="line.138"></a>
<span class="sourceLineNo">139</span>     *<a name="line.139"></a>
<span class="sourceLineNo">140</span>     * @param marker the marker data specific to this log statement<a name="line.140"></a>
<span class="sourceLineNo">141</span>     * @param message the message CharSequence to log.<a name="line.141"></a>
<span class="sourceLineNo">142</span>     */<a name="line.142"></a>
<span class="sourceLineNo">143</span>    void debug(Marker marker, CharSequence message);<a name="line.143"></a>
<span class="sourceLineNo">144</span><a name="line.144"></a>
<span class="sourceLineNo">145</span>    /**<a name="line.145"></a>
<span class="sourceLineNo">146</span>     * Logs a message CharSequence at the {@link Level#DEBUG DEBUG} level including the stack trace of the<a name="line.146"></a>
<span class="sourceLineNo">147</span>     * {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.147"></a>
<span class="sourceLineNo">148</span>     *<a name="line.148"></a>
<span class="sourceLineNo">149</span>     * @param marker the marker data specific to this log statement<a name="line.149"></a>
<span class="sourceLineNo">150</span>     * @param message the message CharSequence to log.<a name="line.150"></a>
<span class="sourceLineNo">151</span>     * @param t the exception to log, including its stack trace.<a name="line.151"></a>
<span class="sourceLineNo">152</span>     */<a name="line.152"></a>
<span class="sourceLineNo">153</span>    void debug(Marker marker, CharSequence message, Throwable t);<a name="line.153"></a>
<span class="sourceLineNo">154</span><a name="line.154"></a>
<span class="sourceLineNo">155</span>    /**<a name="line.155"></a>
<span class="sourceLineNo">156</span>     * Logs a message object with the {@link Level#DEBUG DEBUG} level.<a name="line.156"></a>
<span class="sourceLineNo">157</span>     *<a name="line.157"></a>
<span class="sourceLineNo">158</span>     * @param marker the marker data specific to this log statement<a name="line.158"></a>
<span class="sourceLineNo">159</span>     * @param message the message object to log.<a name="line.159"></a>
<span class="sourceLineNo">160</span>     */<a name="line.160"></a>
<span class="sourceLineNo">161</span>    void debug(Marker marker, Object message);<a name="line.161"></a>
<span class="sourceLineNo">162</span><a name="line.162"></a>
<span class="sourceLineNo">163</span>    /**<a name="line.163"></a>
<span class="sourceLineNo">164</span>     * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}<a name="line.164"></a>
<span class="sourceLineNo">165</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.165"></a>
<span class="sourceLineNo">166</span>     *<a name="line.166"></a>
<span class="sourceLineNo">167</span>     * @param marker the marker data specific to this log statement<a name="line.167"></a>
<span class="sourceLineNo">168</span>     * @param message the message to log.<a name="line.168"></a>
<span class="sourceLineNo">169</span>     * @param t the exception to log, including its stack trace.<a name="line.169"></a>
<span class="sourceLineNo">170</span>     */<a name="line.170"></a>
<span class="sourceLineNo">171</span>    void debug(Marker marker, Object message, Throwable t);<a name="line.171"></a>
<span class="sourceLineNo">172</span><a name="line.172"></a>
<span class="sourceLineNo">173</span>    /**<a name="line.173"></a>
<span class="sourceLineNo">174</span>     * Logs a message object with the {@link Level#DEBUG DEBUG} level.<a name="line.174"></a>
<span class="sourceLineNo">175</span>     *<a name="line.175"></a>
<span class="sourceLineNo">176</span>     * @param marker the marker data specific to this log statement<a name="line.176"></a>
<span class="sourceLineNo">177</span>     * @param message the message object to log.<a name="line.177"></a>
<span class="sourceLineNo">178</span>     */<a name="line.178"></a>
<span class="sourceLineNo">179</span>    void debug(Marker marker, String message);<a name="line.179"></a>
<span class="sourceLineNo">180</span><a name="line.180"></a>
<span class="sourceLineNo">181</span>    /**<a name="line.181"></a>
<span class="sourceLineNo">182</span>     * Logs a message with parameters at the {@link Level#DEBUG DEBUG} level.<a name="line.182"></a>
<span class="sourceLineNo">183</span>     *<a name="line.183"></a>
<span class="sourceLineNo">184</span>     * @param marker the marker data specific to this log statement<a name="line.184"></a>
<span class="sourceLineNo">185</span>     * @param message the message to log; the format depends on the message factory.<a name="line.185"></a>
<span class="sourceLineNo">186</span>     * @param params parameters to the message.<a name="line.186"></a>
<span class="sourceLineNo">187</span>     * @see #getMessageFactory()<a name="line.187"></a>
<span class="sourceLineNo">188</span>     */<a name="line.188"></a>
<span class="sourceLineNo">189</span>    void debug(Marker marker, String message, Object... params);<a name="line.189"></a>
<span class="sourceLineNo">190</span><a name="line.190"></a>
<span class="sourceLineNo">191</span>    /**<a name="line.191"></a>
<span class="sourceLineNo">192</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#DEBUG<a name="line.192"></a>
<span class="sourceLineNo">193</span>     * DEBUG} level.<a name="line.193"></a>
<span class="sourceLineNo">194</span>     *<a name="line.194"></a>
<span class="sourceLineNo">195</span>     * @param marker the marker data specific to this log statement<a name="line.195"></a>
<span class="sourceLineNo">196</span>     * @param message the message to log; the format depends on the message factory.<a name="line.196"></a>
<span class="sourceLineNo">197</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.197"></a>
<span class="sourceLineNo">198</span>     * @since 2.4<a name="line.198"></a>
<span class="sourceLineNo">199</span>     */<a name="line.199"></a>
<span class="sourceLineNo">200</span>    void debug(Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.200"></a>
<span class="sourceLineNo">201</span><a name="line.201"></a>
<span class="sourceLineNo">202</span>    /**<a name="line.202"></a>
<span class="sourceLineNo">203</span>     * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}<a name="line.203"></a>
<span class="sourceLineNo">204</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.204"></a>
<span class="sourceLineNo">205</span>     *<a name="line.205"></a>
<span class="sourceLineNo">206</span>     * @param marker the marker data specific to this log statement<a name="line.206"></a>
<span class="sourceLineNo">207</span>     * @param message the message to log.<a name="line.207"></a>
<span class="sourceLineNo">208</span>     * @param t the exception to log, including its stack trace.<a name="line.208"></a>
<span class="sourceLineNo">209</span>     */<a name="line.209"></a>
<span class="sourceLineNo">210</span>    void debug(Marker marker, String message, Throwable t);<a name="line.210"></a>
<span class="sourceLineNo">211</span><a name="line.211"></a>
<span class="sourceLineNo">212</span>    /**<a name="line.212"></a>
<span class="sourceLineNo">213</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level with<a name="line.213"></a>
<span class="sourceLineNo">214</span>     * the specified Marker.<a name="line.214"></a>
<span class="sourceLineNo">215</span>     *<a name="line.215"></a>
<span class="sourceLineNo">216</span>     * @param marker the marker data specific to this log statement<a name="line.216"></a>
<span class="sourceLineNo">217</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.217"></a>
<span class="sourceLineNo">218</span>     *            message factory.<a name="line.218"></a>
<span class="sourceLineNo">219</span>     * @since 2.4<a name="line.219"></a>
<span class="sourceLineNo">220</span>     */<a name="line.220"></a>
<span class="sourceLineNo">221</span>    void debug(Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.221"></a>
<span class="sourceLineNo">222</span><a name="line.222"></a>
<span class="sourceLineNo">223</span>    /**<a name="line.223"></a>
<span class="sourceLineNo">224</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) with the<a name="line.224"></a>
<span class="sourceLineNo">225</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.225"></a>
<span class="sourceLineNo">226</span>     *<a name="line.226"></a>
<span class="sourceLineNo">227</span>     * @param marker the marker data specific to this log statement<a name="line.227"></a>
<span class="sourceLineNo">228</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.228"></a>
<span class="sourceLineNo">229</span>     *            message factory.<a name="line.229"></a>
<span class="sourceLineNo">230</span>     * @param t A Throwable or null.<a name="line.230"></a>
<span class="sourceLineNo">231</span>     * @since 2.4<a name="line.231"></a>
<span class="sourceLineNo">232</span>     */<a name="line.232"></a>
<span class="sourceLineNo">233</span>    void debug(Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.233"></a>
<span class="sourceLineNo">234</span><a name="line.234"></a>
<span class="sourceLineNo">235</span>    /**<a name="line.235"></a>
<span class="sourceLineNo">236</span>     * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.<a name="line.236"></a>
<span class="sourceLineNo">237</span>     *<a name="line.237"></a>
<span class="sourceLineNo">238</span>     * @param msg the message string to be logged<a name="line.238"></a>
<span class="sourceLineNo">239</span>     */<a name="line.239"></a>
<span class="sourceLineNo">240</span>    void debug(Message msg);<a name="line.240"></a>
<span class="sourceLineNo">241</span><a name="line.241"></a>
<span class="sourceLineNo">242</span>    /**<a name="line.242"></a>
<span class="sourceLineNo">243</span>     * Logs a message with the specific Marker at the {@link Level#DEBUG DEBUG} level.<a name="line.243"></a>
<span class="sourceLineNo">244</span>     *<a name="line.244"></a>
<span class="sourceLineNo">245</span>     * @param msg the message string to be logged<a name="line.245"></a>
<span class="sourceLineNo">246</span>     * @param t A Throwable or null.<a name="line.246"></a>
<span class="sourceLineNo">247</span>     */<a name="line.247"></a>
<span class="sourceLineNo">248</span>    void debug(Message msg, Throwable t);<a name="line.248"></a>
<span class="sourceLineNo">249</span><a name="line.249"></a>
<span class="sourceLineNo">250</span>    /**<a name="line.250"></a>
<span class="sourceLineNo">251</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level. The<a name="line.251"></a>
<span class="sourceLineNo">252</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.252"></a>
<span class="sourceLineNo">253</span>     *<a name="line.253"></a>
<span class="sourceLineNo">254</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.254"></a>
<span class="sourceLineNo">255</span>     * @since 2.4<a name="line.255"></a>
<span class="sourceLineNo">256</span>     */<a name="line.256"></a>
<span class="sourceLineNo">257</span>    void debug(MessageSupplier msgSupplier);<a name="line.257"></a>
<span class="sourceLineNo">258</span><a name="line.258"></a>
<span class="sourceLineNo">259</span>    /**<a name="line.259"></a>
<span class="sourceLineNo">260</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) including the<a name="line.260"></a>
<span class="sourceLineNo">261</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may<a name="line.261"></a>
<span class="sourceLineNo">262</span>     * not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.262"></a>
<span class="sourceLineNo">263</span>     *<a name="line.263"></a>
<span class="sourceLineNo">264</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.264"></a>
<span class="sourceLineNo">265</span>     * @param t the exception to log, including its stack trace.<a name="line.265"></a>
<span class="sourceLineNo">266</span>     * @since 2.4<a name="line.266"></a>
<span class="sourceLineNo">267</span>     */<a name="line.267"></a>
<span class="sourceLineNo">268</span>    void debug(MessageSupplier msgSupplier, Throwable t);<a name="line.268"></a>
<span class="sourceLineNo">269</span><a name="line.269"></a>
<span class="sourceLineNo">270</span>    /**<a name="line.270"></a>
<span class="sourceLineNo">271</span>     * Logs a message CharSequence with the {@link Level#DEBUG DEBUG} level.<a name="line.271"></a>
<span class="sourceLineNo">272</span>     *<a name="line.272"></a>
<span class="sourceLineNo">273</span>     * @param message the message object to log.<a name="line.273"></a>
<span class="sourceLineNo">274</span>     */<a name="line.274"></a>
<span class="sourceLineNo">275</span>    void debug(CharSequence message);<a name="line.275"></a>
<span class="sourceLineNo">276</span><a name="line.276"></a>
<span class="sourceLineNo">277</span>    /**<a name="line.277"></a>
<span class="sourceLineNo">278</span>     * Logs a CharSequence at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}<a name="line.278"></a>
<span class="sourceLineNo">279</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.279"></a>
<span class="sourceLineNo">280</span>     *<a name="line.280"></a>
<span class="sourceLineNo">281</span>     * @param message the message CharSequence to log.<a name="line.281"></a>
<span class="sourceLineNo">282</span>     * @param t the exception to log, including its stack trace.<a name="line.282"></a>
<span class="sourceLineNo">283</span>     */<a name="line.283"></a>
<span class="sourceLineNo">284</span>    void debug(CharSequence message, Throwable t);<a name="line.284"></a>
<span class="sourceLineNo">285</span><a name="line.285"></a>
<span class="sourceLineNo">286</span>    /**<a name="line.286"></a>
<span class="sourceLineNo">287</span>     * Logs a message object with the {@link Level#DEBUG DEBUG} level.<a name="line.287"></a>
<span class="sourceLineNo">288</span>     *<a name="line.288"></a>
<span class="sourceLineNo">289</span>     * @param message the message object to log.<a name="line.289"></a>
<span class="sourceLineNo">290</span>     */<a name="line.290"></a>
<span class="sourceLineNo">291</span>    void debug(Object message);<a name="line.291"></a>
<span class="sourceLineNo">292</span><a name="line.292"></a>
<span class="sourceLineNo">293</span>    /**<a name="line.293"></a>
<span class="sourceLineNo">294</span>     * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}<a name="line.294"></a>
<span class="sourceLineNo">295</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.295"></a>
<span class="sourceLineNo">296</span>     *<a name="line.296"></a>
<span class="sourceLineNo">297</span>     * @param message the message to log.<a name="line.297"></a>
<span class="sourceLineNo">298</span>     * @param t the exception to log, including its stack trace.<a name="line.298"></a>
<span class="sourceLineNo">299</span>     */<a name="line.299"></a>
<span class="sourceLineNo">300</span>    void debug(Object message, Throwable t);<a name="line.300"></a>
<span class="sourceLineNo">301</span><a name="line.301"></a>
<span class="sourceLineNo">302</span>    /**<a name="line.302"></a>
<span class="sourceLineNo">303</span>     * Logs a message object with the {@link Level#DEBUG DEBUG} level.<a name="line.303"></a>
<span class="sourceLineNo">304</span>     *<a name="line.304"></a>
<span class="sourceLineNo">305</span>     * @param message the message string to log.<a name="line.305"></a>
<span class="sourceLineNo">306</span>     */<a name="line.306"></a>
<span class="sourceLineNo">307</span>    void debug(String message);<a name="line.307"></a>
<span class="sourceLineNo">308</span><a name="line.308"></a>
<span class="sourceLineNo">309</span>    /**<a name="line.309"></a>
<span class="sourceLineNo">310</span>     * Logs a message with parameters at the {@link Level#DEBUG DEBUG} level.<a name="line.310"></a>
<span class="sourceLineNo">311</span>     *<a name="line.311"></a>
<span class="sourceLineNo">312</span>     * @param message the message to log; the format depends on the message factory.<a name="line.312"></a>
<span class="sourceLineNo">313</span>     * @param params parameters to the message.<a name="line.313"></a>
<span class="sourceLineNo">314</span>     * @see #getMessageFactory()<a name="line.314"></a>
<span class="sourceLineNo">315</span>     */<a name="line.315"></a>
<span class="sourceLineNo">316</span>    void debug(String message, Object... params);<a name="line.316"></a>
<span class="sourceLineNo">317</span><a name="line.317"></a>
<span class="sourceLineNo">318</span>    /**<a name="line.318"></a>
<span class="sourceLineNo">319</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#DEBUG<a name="line.319"></a>
<span class="sourceLineNo">320</span>     * DEBUG} level.<a name="line.320"></a>
<span class="sourceLineNo">321</span>     *<a name="line.321"></a>
<span class="sourceLineNo">322</span>     * @param message the message to log; the format depends on the message factory.<a name="line.322"></a>
<span class="sourceLineNo">323</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.323"></a>
<span class="sourceLineNo">324</span>     * @since 2.4<a name="line.324"></a>
<span class="sourceLineNo">325</span>     */<a name="line.325"></a>
<span class="sourceLineNo">326</span>    void debug(String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.326"></a>
<span class="sourceLineNo">327</span><a name="line.327"></a>
<span class="sourceLineNo">328</span>    /**<a name="line.328"></a>
<span class="sourceLineNo">329</span>     * Logs a message at the {@link Level#DEBUG DEBUG} level including the stack trace of the {@link Throwable}<a name="line.329"></a>
<span class="sourceLineNo">330</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.330"></a>
<span class="sourceLineNo">331</span>     *<a name="line.331"></a>
<span class="sourceLineNo">332</span>     * @param message the message to log.<a name="line.332"></a>
<span class="sourceLineNo">333</span>     * @param t the exception to log, including its stack trace.<a name="line.333"></a>
<span class="sourceLineNo">334</span>     */<a name="line.334"></a>
<span class="sourceLineNo">335</span>    void debug(String message, Throwable t);<a name="line.335"></a>
<span class="sourceLineNo">336</span><a name="line.336"></a>
<span class="sourceLineNo">337</span>    /**<a name="line.337"></a>
<span class="sourceLineNo">338</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level.<a name="line.338"></a>
<span class="sourceLineNo">339</span>     *<a name="line.339"></a>
<span class="sourceLineNo">340</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.340"></a>
<span class="sourceLineNo">341</span>     *            message factory.<a name="line.341"></a>
<span class="sourceLineNo">342</span>     * @since 2.4<a name="line.342"></a>
<span class="sourceLineNo">343</span>     */<a name="line.343"></a>
<span class="sourceLineNo">344</span>    void debug(Supplier&lt;?&gt; msgSupplier);<a name="line.344"></a>
<span class="sourceLineNo">345</span><a name="line.345"></a>
<span class="sourceLineNo">346</span>    /**<a name="line.346"></a>
<span class="sourceLineNo">347</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#DEBUG DEBUG} level) including the<a name="line.347"></a>
<span class="sourceLineNo">348</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.348"></a>
<span class="sourceLineNo">349</span>     *<a name="line.349"></a>
<span class="sourceLineNo">350</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.350"></a>
<span class="sourceLineNo">351</span>     *            message factory.<a name="line.351"></a>
<span class="sourceLineNo">352</span>     * @param t the exception to log, including its stack trace.<a name="line.352"></a>
<span class="sourceLineNo">353</span>     * @since 2.4<a name="line.353"></a>
<span class="sourceLineNo">354</span>     */<a name="line.354"></a>
<span class="sourceLineNo">355</span>    void debug(Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.355"></a>
<span class="sourceLineNo">356</span><a name="line.356"></a>
<span class="sourceLineNo">357</span>    /**<a name="line.357"></a>
<span class="sourceLineNo">358</span>     * Logs a message with parameters at debug level.<a name="line.358"></a>
<span class="sourceLineNo">359</span>     *<a name="line.359"></a>
<span class="sourceLineNo">360</span>     * @param marker the marker data specific to this log statement<a name="line.360"></a>
<span class="sourceLineNo">361</span>     * @param message the message to log; the format depends on the message factory.<a name="line.361"></a>
<span class="sourceLineNo">362</span>     * @param p0 parameter to the message.<a name="line.362"></a>
<span class="sourceLineNo">363</span>     */<a name="line.363"></a>
<span class="sourceLineNo">364</span>    void debug(Marker marker, String message, Object p0);<a name="line.364"></a>
<span class="sourceLineNo">365</span><a name="line.365"></a>
<span class="sourceLineNo">366</span>    /**<a name="line.366"></a>
<span class="sourceLineNo">367</span>     * Logs a message with parameters at debug level.<a name="line.367"></a>
<span class="sourceLineNo">368</span>     *<a name="line.368"></a>
<span class="sourceLineNo">369</span>     * @param marker the marker data specific to this log statement<a name="line.369"></a>
<span class="sourceLineNo">370</span>     * @param message the message to log; the format depends on the message factory.<a name="line.370"></a>
<span class="sourceLineNo">371</span>     * @param p0 parameter to the message.<a name="line.371"></a>
<span class="sourceLineNo">372</span>     * @param p1 parameter to the message.<a name="line.372"></a>
<span class="sourceLineNo">373</span>     */<a name="line.373"></a>
<span class="sourceLineNo">374</span>    void debug(Marker marker, String message, Object p0, Object p1);<a name="line.374"></a>
<span class="sourceLineNo">375</span><a name="line.375"></a>
<span class="sourceLineNo">376</span>    /**<a name="line.376"></a>
<span class="sourceLineNo">377</span>     * Logs a message with parameters at debug level.<a name="line.377"></a>
<span class="sourceLineNo">378</span>     *<a name="line.378"></a>
<span class="sourceLineNo">379</span>     * @param marker the marker data specific to this log statement<a name="line.379"></a>
<span class="sourceLineNo">380</span>     * @param message the message to log; the format depends on the message factory.<a name="line.380"></a>
<span class="sourceLineNo">381</span>     * @param p0 parameter to the message.<a name="line.381"></a>
<span class="sourceLineNo">382</span>     * @param p1 parameter to the message.<a name="line.382"></a>
<span class="sourceLineNo">383</span>     * @param p2 parameter to the message.<a name="line.383"></a>
<span class="sourceLineNo">384</span>     */<a name="line.384"></a>
<span class="sourceLineNo">385</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.385"></a>
<span class="sourceLineNo">386</span><a name="line.386"></a>
<span class="sourceLineNo">387</span>    /**<a name="line.387"></a>
<span class="sourceLineNo">388</span>     * Logs a message with parameters at debug level.<a name="line.388"></a>
<span class="sourceLineNo">389</span>     *<a name="line.389"></a>
<span class="sourceLineNo">390</span>     * @param marker the marker data specific to this log statement<a name="line.390"></a>
<span class="sourceLineNo">391</span>     * @param message the message to log; the format depends on the message factory.<a name="line.391"></a>
<span class="sourceLineNo">392</span>     * @param p0 parameter to the message.<a name="line.392"></a>
<span class="sourceLineNo">393</span>     * @param p1 parameter to the message.<a name="line.393"></a>
<span class="sourceLineNo">394</span>     * @param p2 parameter to the message.<a name="line.394"></a>
<span class="sourceLineNo">395</span>     * @param p3 parameter to the message.<a name="line.395"></a>
<span class="sourceLineNo">396</span>     */<a name="line.396"></a>
<span class="sourceLineNo">397</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.397"></a>
<span class="sourceLineNo">398</span><a name="line.398"></a>
<span class="sourceLineNo">399</span>    /**<a name="line.399"></a>
<span class="sourceLineNo">400</span>     * Logs a message with parameters at debug level.<a name="line.400"></a>
<span class="sourceLineNo">401</span>     *<a name="line.401"></a>
<span class="sourceLineNo">402</span>     * @param marker the marker data specific to this log statement<a name="line.402"></a>
<span class="sourceLineNo">403</span>     * @param message the message to log; the format depends on the message factory.<a name="line.403"></a>
<span class="sourceLineNo">404</span>     * @param p0 parameter to the message.<a name="line.404"></a>
<span class="sourceLineNo">405</span>     * @param p1 parameter to the message.<a name="line.405"></a>
<span class="sourceLineNo">406</span>     * @param p2 parameter to the message.<a name="line.406"></a>
<span class="sourceLineNo">407</span>     * @param p3 parameter to the message.<a name="line.407"></a>
<span class="sourceLineNo">408</span>     * @param p4 parameter to the message.<a name="line.408"></a>
<span class="sourceLineNo">409</span>     */<a name="line.409"></a>
<span class="sourceLineNo">410</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.410"></a>
<span class="sourceLineNo">411</span><a name="line.411"></a>
<span class="sourceLineNo">412</span>    /**<a name="line.412"></a>
<span class="sourceLineNo">413</span>     * Logs a message with parameters at debug level.<a name="line.413"></a>
<span class="sourceLineNo">414</span>     *<a name="line.414"></a>
<span class="sourceLineNo">415</span>     * @param marker the marker data specific to this log statement<a name="line.415"></a>
<span class="sourceLineNo">416</span>     * @param message the message to log; the format depends on the message factory.<a name="line.416"></a>
<span class="sourceLineNo">417</span>     * @param p0 parameter to the message.<a name="line.417"></a>
<span class="sourceLineNo">418</span>     * @param p1 parameter to the message.<a name="line.418"></a>
<span class="sourceLineNo">419</span>     * @param p2 parameter to the message.<a name="line.419"></a>
<span class="sourceLineNo">420</span>     * @param p3 parameter to the message.<a name="line.420"></a>
<span class="sourceLineNo">421</span>     * @param p4 parameter to the message.<a name="line.421"></a>
<span class="sourceLineNo">422</span>     * @param p5 parameter to the message.<a name="line.422"></a>
<span class="sourceLineNo">423</span>     */<a name="line.423"></a>
<span class="sourceLineNo">424</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.424"></a>
<span class="sourceLineNo">425</span><a name="line.425"></a>
<span class="sourceLineNo">426</span>    /**<a name="line.426"></a>
<span class="sourceLineNo">427</span>     * Logs a message with parameters at debug level.<a name="line.427"></a>
<span class="sourceLineNo">428</span>     *<a name="line.428"></a>
<span class="sourceLineNo">429</span>     * @param marker the marker data specific to this log statement<a name="line.429"></a>
<span class="sourceLineNo">430</span>     * @param message the message to log; the format depends on the message factory.<a name="line.430"></a>
<span class="sourceLineNo">431</span>     * @param p0 parameter to the message.<a name="line.431"></a>
<span class="sourceLineNo">432</span>     * @param p1 parameter to the message.<a name="line.432"></a>
<span class="sourceLineNo">433</span>     * @param p2 parameter to the message.<a name="line.433"></a>
<span class="sourceLineNo">434</span>     * @param p3 parameter to the message.<a name="line.434"></a>
<span class="sourceLineNo">435</span>     * @param p4 parameter to the message.<a name="line.435"></a>
<span class="sourceLineNo">436</span>     * @param p5 parameter to the message.<a name="line.436"></a>
<span class="sourceLineNo">437</span>     * @param p6 parameter to the message.<a name="line.437"></a>
<span class="sourceLineNo">438</span>     */<a name="line.438"></a>
<span class="sourceLineNo">439</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.439"></a>
<span class="sourceLineNo">440</span>            Object p6);<a name="line.440"></a>
<span class="sourceLineNo">441</span><a name="line.441"></a>
<span class="sourceLineNo">442</span>    /**<a name="line.442"></a>
<span class="sourceLineNo">443</span>     * Logs a message with parameters at debug level.<a name="line.443"></a>
<span class="sourceLineNo">444</span>     *<a name="line.444"></a>
<span class="sourceLineNo">445</span>     * @param marker the marker data specific to this log statement<a name="line.445"></a>
<span class="sourceLineNo">446</span>     * @param message the message to log; the format depends on the message factory.<a name="line.446"></a>
<span class="sourceLineNo">447</span>     * @param p0 parameter to the message.<a name="line.447"></a>
<span class="sourceLineNo">448</span>     * @param p1 parameter to the message.<a name="line.448"></a>
<span class="sourceLineNo">449</span>     * @param p2 parameter to the message.<a name="line.449"></a>
<span class="sourceLineNo">450</span>     * @param p3 parameter to the message.<a name="line.450"></a>
<span class="sourceLineNo">451</span>     * @param p4 parameter to the message.<a name="line.451"></a>
<span class="sourceLineNo">452</span>     * @param p5 parameter to the message.<a name="line.452"></a>
<span class="sourceLineNo">453</span>     * @param p6 parameter to the message.<a name="line.453"></a>
<span class="sourceLineNo">454</span>     * @param p7 parameter to the message.<a name="line.454"></a>
<span class="sourceLineNo">455</span>     */<a name="line.455"></a>
<span class="sourceLineNo">456</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.456"></a>
<span class="sourceLineNo">457</span>            Object p7);<a name="line.457"></a>
<span class="sourceLineNo">458</span><a name="line.458"></a>
<span class="sourceLineNo">459</span>    /**<a name="line.459"></a>
<span class="sourceLineNo">460</span>     * Logs a message with parameters at debug level.<a name="line.460"></a>
<span class="sourceLineNo">461</span>     *<a name="line.461"></a>
<span class="sourceLineNo">462</span>     * @param marker the marker data specific to this log statement<a name="line.462"></a>
<span class="sourceLineNo">463</span>     * @param message the message to log; the format depends on the message factory.<a name="line.463"></a>
<span class="sourceLineNo">464</span>     * @param p0 parameter to the message.<a name="line.464"></a>
<span class="sourceLineNo">465</span>     * @param p1 parameter to the message.<a name="line.465"></a>
<span class="sourceLineNo">466</span>     * @param p2 parameter to the message.<a name="line.466"></a>
<span class="sourceLineNo">467</span>     * @param p3 parameter to the message.<a name="line.467"></a>
<span class="sourceLineNo">468</span>     * @param p4 parameter to the message.<a name="line.468"></a>
<span class="sourceLineNo">469</span>     * @param p5 parameter to the message.<a name="line.469"></a>
<span class="sourceLineNo">470</span>     * @param p6 parameter to the message.<a name="line.470"></a>
<span class="sourceLineNo">471</span>     * @param p7 parameter to the message.<a name="line.471"></a>
<span class="sourceLineNo">472</span>     * @param p8 parameter to the message.<a name="line.472"></a>
<span class="sourceLineNo">473</span>     */<a name="line.473"></a>
<span class="sourceLineNo">474</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.474"></a>
<span class="sourceLineNo">475</span>            Object p7, Object p8);<a name="line.475"></a>
<span class="sourceLineNo">476</span><a name="line.476"></a>
<span class="sourceLineNo">477</span>    /**<a name="line.477"></a>
<span class="sourceLineNo">478</span>     * Logs a message with parameters at debug level.<a name="line.478"></a>
<span class="sourceLineNo">479</span>     *<a name="line.479"></a>
<span class="sourceLineNo">480</span>     * @param marker the marker data specific to this log statement<a name="line.480"></a>
<span class="sourceLineNo">481</span>     * @param message the message to log; the format depends on the message factory.<a name="line.481"></a>
<span class="sourceLineNo">482</span>     * @param p0 parameter to the message.<a name="line.482"></a>
<span class="sourceLineNo">483</span>     * @param p1 parameter to the message.<a name="line.483"></a>
<span class="sourceLineNo">484</span>     * @param p2 parameter to the message.<a name="line.484"></a>
<span class="sourceLineNo">485</span>     * @param p3 parameter to the message.<a name="line.485"></a>
<span class="sourceLineNo">486</span>     * @param p4 parameter to the message.<a name="line.486"></a>
<span class="sourceLineNo">487</span>     * @param p5 parameter to the message.<a name="line.487"></a>
<span class="sourceLineNo">488</span>     * @param p6 parameter to the message.<a name="line.488"></a>
<span class="sourceLineNo">489</span>     * @param p7 parameter to the message.<a name="line.489"></a>
<span class="sourceLineNo">490</span>     * @param p8 parameter to the message.<a name="line.490"></a>
<span class="sourceLineNo">491</span>     * @param p9 parameter to the message.<a name="line.491"></a>
<span class="sourceLineNo">492</span>     */<a name="line.492"></a>
<span class="sourceLineNo">493</span>    void debug(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.493"></a>
<span class="sourceLineNo">494</span>            Object p7, Object p8, Object p9);<a name="line.494"></a>
<span class="sourceLineNo">495</span><a name="line.495"></a>
<span class="sourceLineNo">496</span>    /**<a name="line.496"></a>
<span class="sourceLineNo">497</span>     * Logs a message with parameters at debug level.<a name="line.497"></a>
<span class="sourceLineNo">498</span>     *<a name="line.498"></a>
<span class="sourceLineNo">499</span>     * @param message the message to log; the format depends on the message factory.<a name="line.499"></a>
<span class="sourceLineNo">500</span>     * @param p0 parameter to the message.<a name="line.500"></a>
<span class="sourceLineNo">501</span>     */<a name="line.501"></a>
<span class="sourceLineNo">502</span>    void debug(String message, Object p0);<a name="line.502"></a>
<span class="sourceLineNo">503</span><a name="line.503"></a>
<span class="sourceLineNo">504</span>    /**<a name="line.504"></a>
<span class="sourceLineNo">505</span>     * Logs a message with parameters at debug level.<a name="line.505"></a>
<span class="sourceLineNo">506</span>     *<a name="line.506"></a>
<span class="sourceLineNo">507</span>     * @param message the message to log; the format depends on the message factory.<a name="line.507"></a>
<span class="sourceLineNo">508</span>     * @param p0 parameter to the message.<a name="line.508"></a>
<span class="sourceLineNo">509</span>     * @param p1 parameter to the message.<a name="line.509"></a>
<span class="sourceLineNo">510</span>     */<a name="line.510"></a>
<span class="sourceLineNo">511</span>    void debug(String message, Object p0, Object p1);<a name="line.511"></a>
<span class="sourceLineNo">512</span><a name="line.512"></a>
<span class="sourceLineNo">513</span>    /**<a name="line.513"></a>
<span class="sourceLineNo">514</span>     * Logs a message with parameters at debug level.<a name="line.514"></a>
<span class="sourceLineNo">515</span>     *<a name="line.515"></a>
<span class="sourceLineNo">516</span>     * @param message the message to log; the format depends on the message factory.<a name="line.516"></a>
<span class="sourceLineNo">517</span>     * @param p0 parameter to the message.<a name="line.517"></a>
<span class="sourceLineNo">518</span>     * @param p1 parameter to the message.<a name="line.518"></a>
<span class="sourceLineNo">519</span>     * @param p2 parameter to the message.<a name="line.519"></a>
<span class="sourceLineNo">520</span>     */<a name="line.520"></a>
<span class="sourceLineNo">521</span>    void debug(String message, Object p0, Object p1, Object p2);<a name="line.521"></a>
<span class="sourceLineNo">522</span><a name="line.522"></a>
<span class="sourceLineNo">523</span>    /**<a name="line.523"></a>
<span class="sourceLineNo">524</span>     * Logs a message with parameters at debug level.<a name="line.524"></a>
<span class="sourceLineNo">525</span>     *<a name="line.525"></a>
<span class="sourceLineNo">526</span>     * @param message the message to log; the format depends on the message factory.<a name="line.526"></a>
<span class="sourceLineNo">527</span>     * @param p0 parameter to the message.<a name="line.527"></a>
<span class="sourceLineNo">528</span>     * @param p1 parameter to the message.<a name="line.528"></a>
<span class="sourceLineNo">529</span>     * @param p2 parameter to the message.<a name="line.529"></a>
<span class="sourceLineNo">530</span>     * @param p3 parameter to the message.<a name="line.530"></a>
<span class="sourceLineNo">531</span>     */<a name="line.531"></a>
<span class="sourceLineNo">532</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3);<a name="line.532"></a>
<span class="sourceLineNo">533</span><a name="line.533"></a>
<span class="sourceLineNo">534</span>    /**<a name="line.534"></a>
<span class="sourceLineNo">535</span>     * Logs a message with parameters at debug level.<a name="line.535"></a>
<span class="sourceLineNo">536</span>     *<a name="line.536"></a>
<span class="sourceLineNo">537</span>     * @param message the message to log; the format depends on the message factory.<a name="line.537"></a>
<span class="sourceLineNo">538</span>     * @param p0 parameter to the message.<a name="line.538"></a>
<span class="sourceLineNo">539</span>     * @param p1 parameter to the message.<a name="line.539"></a>
<span class="sourceLineNo">540</span>     * @param p2 parameter to the message.<a name="line.540"></a>
<span class="sourceLineNo">541</span>     * @param p3 parameter to the message.<a name="line.541"></a>
<span class="sourceLineNo">542</span>     * @param p4 parameter to the message.<a name="line.542"></a>
<span class="sourceLineNo">543</span>     */<a name="line.543"></a>
<span class="sourceLineNo">544</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.544"></a>
<span class="sourceLineNo">545</span><a name="line.545"></a>
<span class="sourceLineNo">546</span>    /**<a name="line.546"></a>
<span class="sourceLineNo">547</span>     * Logs a message with parameters at debug level.<a name="line.547"></a>
<span class="sourceLineNo">548</span>     *<a name="line.548"></a>
<span class="sourceLineNo">549</span>     * @param message the message to log; the format depends on the message factory.<a name="line.549"></a>
<span class="sourceLineNo">550</span>     * @param p0 parameter to the message.<a name="line.550"></a>
<span class="sourceLineNo">551</span>     * @param p1 parameter to the message.<a name="line.551"></a>
<span class="sourceLineNo">552</span>     * @param p2 parameter to the message.<a name="line.552"></a>
<span class="sourceLineNo">553</span>     * @param p3 parameter to the message.<a name="line.553"></a>
<span class="sourceLineNo">554</span>     * @param p4 parameter to the message.<a name="line.554"></a>
<span class="sourceLineNo">555</span>     * @param p5 parameter to the message.<a name="line.555"></a>
<span class="sourceLineNo">556</span>     */<a name="line.556"></a>
<span class="sourceLineNo">557</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.557"></a>
<span class="sourceLineNo">558</span><a name="line.558"></a>
<span class="sourceLineNo">559</span>    /**<a name="line.559"></a>
<span class="sourceLineNo">560</span>     * Logs a message with parameters at debug level.<a name="line.560"></a>
<span class="sourceLineNo">561</span>     *<a name="line.561"></a>
<span class="sourceLineNo">562</span>     * @param message the message to log; the format depends on the message factory.<a name="line.562"></a>
<span class="sourceLineNo">563</span>     * @param p0 parameter to the message.<a name="line.563"></a>
<span class="sourceLineNo">564</span>     * @param p1 parameter to the message.<a name="line.564"></a>
<span class="sourceLineNo">565</span>     * @param p2 parameter to the message.<a name="line.565"></a>
<span class="sourceLineNo">566</span>     * @param p3 parameter to the message.<a name="line.566"></a>
<span class="sourceLineNo">567</span>     * @param p4 parameter to the message.<a name="line.567"></a>
<span class="sourceLineNo">568</span>     * @param p5 parameter to the message.<a name="line.568"></a>
<span class="sourceLineNo">569</span>     * @param p6 parameter to the message.<a name="line.569"></a>
<span class="sourceLineNo">570</span>     */<a name="line.570"></a>
<span class="sourceLineNo">571</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.571"></a>
<span class="sourceLineNo">572</span><a name="line.572"></a>
<span class="sourceLineNo">573</span>    /**<a name="line.573"></a>
<span class="sourceLineNo">574</span>     * Logs a message with parameters at debug level.<a name="line.574"></a>
<span class="sourceLineNo">575</span>     *<a name="line.575"></a>
<span class="sourceLineNo">576</span>     * @param message the message to log; the format depends on the message factory.<a name="line.576"></a>
<span class="sourceLineNo">577</span>     * @param p0 parameter to the message.<a name="line.577"></a>
<span class="sourceLineNo">578</span>     * @param p1 parameter to the message.<a name="line.578"></a>
<span class="sourceLineNo">579</span>     * @param p2 parameter to the message.<a name="line.579"></a>
<span class="sourceLineNo">580</span>     * @param p3 parameter to the message.<a name="line.580"></a>
<span class="sourceLineNo">581</span>     * @param p4 parameter to the message.<a name="line.581"></a>
<span class="sourceLineNo">582</span>     * @param p5 parameter to the message.<a name="line.582"></a>
<span class="sourceLineNo">583</span>     * @param p6 parameter to the message.<a name="line.583"></a>
<span class="sourceLineNo">584</span>     * @param p7 parameter to the message.<a name="line.584"></a>
<span class="sourceLineNo">585</span>     */<a name="line.585"></a>
<span class="sourceLineNo">586</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.586"></a>
<span class="sourceLineNo">587</span><a name="line.587"></a>
<span class="sourceLineNo">588</span>    /**<a name="line.588"></a>
<span class="sourceLineNo">589</span>     * Logs a message with parameters at debug level.<a name="line.589"></a>
<span class="sourceLineNo">590</span>     *<a name="line.590"></a>
<span class="sourceLineNo">591</span>     * @param message the message to log; the format depends on the message factory.<a name="line.591"></a>
<span class="sourceLineNo">592</span>     * @param p0 parameter to the message.<a name="line.592"></a>
<span class="sourceLineNo">593</span>     * @param p1 parameter to the message.<a name="line.593"></a>
<span class="sourceLineNo">594</span>     * @param p2 parameter to the message.<a name="line.594"></a>
<span class="sourceLineNo">595</span>     * @param p3 parameter to the message.<a name="line.595"></a>
<span class="sourceLineNo">596</span>     * @param p4 parameter to the message.<a name="line.596"></a>
<span class="sourceLineNo">597</span>     * @param p5 parameter to the message.<a name="line.597"></a>
<span class="sourceLineNo">598</span>     * @param p6 parameter to the message.<a name="line.598"></a>
<span class="sourceLineNo">599</span>     * @param p7 parameter to the message.<a name="line.599"></a>
<span class="sourceLineNo">600</span>     * @param p8 parameter to the message.<a name="line.600"></a>
<span class="sourceLineNo">601</span>     */<a name="line.601"></a>
<span class="sourceLineNo">602</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.602"></a>
<span class="sourceLineNo">603</span>            Object p8);<a name="line.603"></a>
<span class="sourceLineNo">604</span><a name="line.604"></a>
<span class="sourceLineNo">605</span>    /**<a name="line.605"></a>
<span class="sourceLineNo">606</span>     * Logs a message with parameters at debug level.<a name="line.606"></a>
<span class="sourceLineNo">607</span>     *<a name="line.607"></a>
<span class="sourceLineNo">608</span>     * @param message the message to log; the format depends on the message factory.<a name="line.608"></a>
<span class="sourceLineNo">609</span>     * @param p0 parameter to the message.<a name="line.609"></a>
<span class="sourceLineNo">610</span>     * @param p1 parameter to the message.<a name="line.610"></a>
<span class="sourceLineNo">611</span>     * @param p2 parameter to the message.<a name="line.611"></a>
<span class="sourceLineNo">612</span>     * @param p3 parameter to the message.<a name="line.612"></a>
<span class="sourceLineNo">613</span>     * @param p4 parameter to the message.<a name="line.613"></a>
<span class="sourceLineNo">614</span>     * @param p5 parameter to the message.<a name="line.614"></a>
<span class="sourceLineNo">615</span>     * @param p6 parameter to the message.<a name="line.615"></a>
<span class="sourceLineNo">616</span>     * @param p7 parameter to the message.<a name="line.616"></a>
<span class="sourceLineNo">617</span>     * @param p8 parameter to the message.<a name="line.617"></a>
<span class="sourceLineNo">618</span>     * @param p9 parameter to the message.<a name="line.618"></a>
<span class="sourceLineNo">619</span>     */<a name="line.619"></a>
<span class="sourceLineNo">620</span>    void debug(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.620"></a>
<span class="sourceLineNo">621</span>            Object p8, Object p9);<a name="line.621"></a>
<span class="sourceLineNo">622</span><a name="line.622"></a>
<span class="sourceLineNo">623</span>    /**<a name="line.623"></a>
<span class="sourceLineNo">624</span>     * Logs entry to a method. Used when the method in question has no parameters or when the parameters should not be<a name="line.624"></a>
<span class="sourceLineNo">625</span>     * logged.<a name="line.625"></a>
<span class="sourceLineNo">626</span>     * @deprecated Use {@link #traceEntry()} instead which performs the same function.<a name="line.626"></a>
<span class="sourceLineNo">627</span>     */<a name="line.627"></a>
<span class="sourceLineNo">628</span>    @Deprecated<a name="line.628"></a>
<span class="sourceLineNo">629</span>    void entry();<a name="line.629"></a>
<span class="sourceLineNo">630</span><a name="line.630"></a>
<span class="sourceLineNo">631</span>    /**<a name="line.631"></a>
<span class="sourceLineNo">632</span>     * Logs entry to a method along with its parameters (consider using one of the {@code traceEntry(...)} methods instead.)<a name="line.632"></a>
<span class="sourceLineNo">633</span>     * &lt;p&gt;<a name="line.633"></a>
<span class="sourceLineNo">634</span>     * For example:<a name="line.634"></a>
<span class="sourceLineNo">635</span>     * &lt;/p&gt;<a name="line.635"></a>
<span class="sourceLineNo">636</span>     * &lt;pre&gt;<a name="line.636"></a>
<span class="sourceLineNo">637</span>     * public void doSomething(String foo, int bar) {<a name="line.637"></a>
<span class="sourceLineNo">638</span>     *     LOGGER.entry(foo, bar);<a name="line.638"></a>
<span class="sourceLineNo">639</span>     *     // do something<a name="line.639"></a>
<span class="sourceLineNo">640</span>     * }<a name="line.640"></a>
<span class="sourceLineNo">641</span>     * &lt;/pre&gt;<a name="line.641"></a>
<span class="sourceLineNo">642</span>     * &lt;p&gt;<a name="line.642"></a>
<span class="sourceLineNo">643</span>     * The use of methods such as this are more effective when combined with aspect-oriented programming or other<a name="line.643"></a>
<span class="sourceLineNo">644</span>     * bytecode manipulation tools. It can be rather tedious (and messy) to use this type of method manually.<a name="line.644"></a>
<span class="sourceLineNo">645</span>     * &lt;/p&gt;<a name="line.645"></a>
<span class="sourceLineNo">646</span>     *<a name="line.646"></a>
<span class="sourceLineNo">647</span>     * @param params The parameters to the method.<a name="line.647"></a>
<span class="sourceLineNo">648</span>     * @deprecated Use {@link #traceEntry(String, Object...)} instead which performs the same function.<a name="line.648"></a>
<span class="sourceLineNo">649</span>     */<a name="line.649"></a>
<span class="sourceLineNo">650</span>    @Deprecated<a name="line.650"></a>
<span class="sourceLineNo">651</span>    void entry(Object... params);<a name="line.651"></a>
<span class="sourceLineNo">652</span><a name="line.652"></a>
<span class="sourceLineNo">653</span>    /**<a name="line.653"></a>
<span class="sourceLineNo">654</span>     * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.<a name="line.654"></a>
<span class="sourceLineNo">655</span>     *<a name="line.655"></a>
<span class="sourceLineNo">656</span>     * @param marker the marker data specific to this log statement<a name="line.656"></a>
<span class="sourceLineNo">657</span>     * @param msg the message string to be logged<a name="line.657"></a>
<span class="sourceLineNo">658</span>     */<a name="line.658"></a>
<span class="sourceLineNo">659</span>    void error(Marker marker, Message msg);<a name="line.659"></a>
<span class="sourceLineNo">660</span><a name="line.660"></a>
<span class="sourceLineNo">661</span>    /**<a name="line.661"></a>
<span class="sourceLineNo">662</span>     * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.<a name="line.662"></a>
<span class="sourceLineNo">663</span>     *<a name="line.663"></a>
<span class="sourceLineNo">664</span>     * @param marker the marker data specific to this log statement<a name="line.664"></a>
<span class="sourceLineNo">665</span>     * @param msg the message string to be logged<a name="line.665"></a>
<span class="sourceLineNo">666</span>     * @param t A Throwable or null.<a name="line.666"></a>
<span class="sourceLineNo">667</span>     */<a name="line.667"></a>
<span class="sourceLineNo">668</span>    void error(Marker marker, Message msg, Throwable t);<a name="line.668"></a>
<span class="sourceLineNo">669</span><a name="line.669"></a>
<span class="sourceLineNo">670</span>    /**<a name="line.670"></a>
<span class="sourceLineNo">671</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level with<a name="line.671"></a>
<span class="sourceLineNo">672</span>     * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.672"></a>
<span class="sourceLineNo">673</span>     * {@code Message}.<a name="line.673"></a>
<span class="sourceLineNo">674</span>     *<a name="line.674"></a>
<span class="sourceLineNo">675</span>     * @param marker the marker data specific to this log statement<a name="line.675"></a>
<span class="sourceLineNo">676</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.676"></a>
<span class="sourceLineNo">677</span>     * @since 2.4<a name="line.677"></a>
<span class="sourceLineNo">678</span>     */<a name="line.678"></a>
<span class="sourceLineNo">679</span>    void error(Marker marker, MessageSupplier msgSupplier);<a name="line.679"></a>
<span class="sourceLineNo">680</span><a name="line.680"></a>
<span class="sourceLineNo">681</span>    /**<a name="line.681"></a>
<span class="sourceLineNo">682</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) with the<a name="line.682"></a>
<span class="sourceLineNo">683</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The<a name="line.683"></a>
<span class="sourceLineNo">684</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.684"></a>
<span class="sourceLineNo">685</span>     *<a name="line.685"></a>
<span class="sourceLineNo">686</span>     * @param marker the marker data specific to this log statement<a name="line.686"></a>
<span class="sourceLineNo">687</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.687"></a>
<span class="sourceLineNo">688</span>     * @param t A Throwable or null.<a name="line.688"></a>
<span class="sourceLineNo">689</span>     * @since 2.4<a name="line.689"></a>
<span class="sourceLineNo">690</span>     */<a name="line.690"></a>
<span class="sourceLineNo">691</span>    void error(Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.691"></a>
<span class="sourceLineNo">692</span><a name="line.692"></a>
<span class="sourceLineNo">693</span>    /**<a name="line.693"></a>
<span class="sourceLineNo">694</span>     * Logs a message CharSequence with the {@link Level#ERROR ERROR} level.<a name="line.694"></a>
<span class="sourceLineNo">695</span>     *<a name="line.695"></a>
<span class="sourceLineNo">696</span>     * @param marker the marker data specific to this log statement.<a name="line.696"></a>
<span class="sourceLineNo">697</span>     * @param message the message CharSequence to log.<a name="line.697"></a>
<span class="sourceLineNo">698</span>     */<a name="line.698"></a>
<span class="sourceLineNo">699</span>    void error(Marker marker, CharSequence message);<a name="line.699"></a>
<span class="sourceLineNo">700</span><a name="line.700"></a>
<span class="sourceLineNo">701</span>    /**<a name="line.701"></a>
<span class="sourceLineNo">702</span>     * Logs a CharSequence at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}<a name="line.702"></a>
<span class="sourceLineNo">703</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.703"></a>
<span class="sourceLineNo">704</span>     *<a name="line.704"></a>
<span class="sourceLineNo">705</span>     * @param marker the marker data specific to this log statement.<a name="line.705"></a>
<span class="sourceLineNo">706</span>     * @param message the message CharSequence to log.<a name="line.706"></a>
<span class="sourceLineNo">707</span>     * @param t the exception to log, including its stack trace.<a name="line.707"></a>
<span class="sourceLineNo">708</span>     */<a name="line.708"></a>
<span class="sourceLineNo">709</span>    void error(Marker marker, CharSequence message, Throwable t);<a name="line.709"></a>
<span class="sourceLineNo">710</span><a name="line.710"></a>
<span class="sourceLineNo">711</span>    /**<a name="line.711"></a>
<span class="sourceLineNo">712</span>     * Logs a message object with the {@link Level#ERROR ERROR} level.<a name="line.712"></a>
<span class="sourceLineNo">713</span>     *<a name="line.713"></a>
<span class="sourceLineNo">714</span>     * @param marker the marker data specific to this log statement.<a name="line.714"></a>
<span class="sourceLineNo">715</span>     * @param message the message object to log.<a name="line.715"></a>
<span class="sourceLineNo">716</span>     */<a name="line.716"></a>
<span class="sourceLineNo">717</span>    void error(Marker marker, Object message);<a name="line.717"></a>
<span class="sourceLineNo">718</span><a name="line.718"></a>
<span class="sourceLineNo">719</span>    /**<a name="line.719"></a>
<span class="sourceLineNo">720</span>     * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}<a name="line.720"></a>
<span class="sourceLineNo">721</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.721"></a>
<span class="sourceLineNo">722</span>     *<a name="line.722"></a>
<span class="sourceLineNo">723</span>     * @param marker the marker data specific to this log statement.<a name="line.723"></a>
<span class="sourceLineNo">724</span>     * @param message the message object to log.<a name="line.724"></a>
<span class="sourceLineNo">725</span>     * @param t the exception to log, including its stack trace.<a name="line.725"></a>
<span class="sourceLineNo">726</span>     */<a name="line.726"></a>
<span class="sourceLineNo">727</span>    void error(Marker marker, Object message, Throwable t);<a name="line.727"></a>
<span class="sourceLineNo">728</span><a name="line.728"></a>
<span class="sourceLineNo">729</span>    /**<a name="line.729"></a>
<span class="sourceLineNo">730</span>     * Logs a message object with the {@link Level#ERROR ERROR} level.<a name="line.730"></a>
<span class="sourceLineNo">731</span>     *<a name="line.731"></a>
<span class="sourceLineNo">732</span>     * @param marker the marker data specific to this log statement.<a name="line.732"></a>
<span class="sourceLineNo">733</span>     * @param message the message object to log.<a name="line.733"></a>
<span class="sourceLineNo">734</span>     */<a name="line.734"></a>
<span class="sourceLineNo">735</span>    void error(Marker marker, String message);<a name="line.735"></a>
<span class="sourceLineNo">736</span><a name="line.736"></a>
<span class="sourceLineNo">737</span>    /**<a name="line.737"></a>
<span class="sourceLineNo">738</span>     * Logs a message with parameters at the {@link Level#ERROR ERROR} level.<a name="line.738"></a>
<span class="sourceLineNo">739</span>     *<a name="line.739"></a>
<span class="sourceLineNo">740</span>     * @param marker the marker data specific to this log statement.<a name="line.740"></a>
<span class="sourceLineNo">741</span>     * @param message the message to log; the format depends on the message factory.<a name="line.741"></a>
<span class="sourceLineNo">742</span>     * @param params parameters to the message.<a name="line.742"></a>
<span class="sourceLineNo">743</span>     * @see #getMessageFactory()<a name="line.743"></a>
<span class="sourceLineNo">744</span>     */<a name="line.744"></a>
<span class="sourceLineNo">745</span>    void error(Marker marker, String message, Object... params);<a name="line.745"></a>
<span class="sourceLineNo">746</span><a name="line.746"></a>
<span class="sourceLineNo">747</span>    /**<a name="line.747"></a>
<span class="sourceLineNo">748</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#ERROR<a name="line.748"></a>
<span class="sourceLineNo">749</span>     * ERROR} level.<a name="line.749"></a>
<span class="sourceLineNo">750</span>     *<a name="line.750"></a>
<span class="sourceLineNo">751</span>     * @param marker the marker data specific to this log statement<a name="line.751"></a>
<span class="sourceLineNo">752</span>     * @param message the message to log; the format depends on the message factory.<a name="line.752"></a>
<span class="sourceLineNo">753</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.753"></a>
<span class="sourceLineNo">754</span>     * @since 2.4<a name="line.754"></a>
<span class="sourceLineNo">755</span>     */<a name="line.755"></a>
<span class="sourceLineNo">756</span>    void error(Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.756"></a>
<span class="sourceLineNo">757</span><a name="line.757"></a>
<span class="sourceLineNo">758</span>    /**<a name="line.758"></a>
<span class="sourceLineNo">759</span>     * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}<a name="line.759"></a>
<span class="sourceLineNo">760</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.760"></a>
<span class="sourceLineNo">761</span>     *<a name="line.761"></a>
<span class="sourceLineNo">762</span>     * @param marker the marker data specific to this log statement.<a name="line.762"></a>
<span class="sourceLineNo">763</span>     * @param message the message object to log.<a name="line.763"></a>
<span class="sourceLineNo">764</span>     * @param t the exception to log, including its stack trace.<a name="line.764"></a>
<span class="sourceLineNo">765</span>     */<a name="line.765"></a>
<span class="sourceLineNo">766</span>    void error(Marker marker, String message, Throwable t);<a name="line.766"></a>
<span class="sourceLineNo">767</span><a name="line.767"></a>
<span class="sourceLineNo">768</span>    /**<a name="line.768"></a>
<span class="sourceLineNo">769</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level with<a name="line.769"></a>
<span class="sourceLineNo">770</span>     * the specified Marker.<a name="line.770"></a>
<span class="sourceLineNo">771</span>     *<a name="line.771"></a>
<span class="sourceLineNo">772</span>     * @param marker the marker data specific to this log statement<a name="line.772"></a>
<span class="sourceLineNo">773</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.773"></a>
<span class="sourceLineNo">774</span>     *            message factory.<a name="line.774"></a>
<span class="sourceLineNo">775</span>     * @since 2.4<a name="line.775"></a>
<span class="sourceLineNo">776</span>     */<a name="line.776"></a>
<span class="sourceLineNo">777</span>    void error(Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.777"></a>
<span class="sourceLineNo">778</span><a name="line.778"></a>
<span class="sourceLineNo">779</span>    /**<a name="line.779"></a>
<span class="sourceLineNo">780</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) with the<a name="line.780"></a>
<span class="sourceLineNo">781</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.781"></a>
<span class="sourceLineNo">782</span>     *<a name="line.782"></a>
<span class="sourceLineNo">783</span>     * @param marker the marker data specific to this log statement<a name="line.783"></a>
<span class="sourceLineNo">784</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.784"></a>
<span class="sourceLineNo">785</span>     *            message factory.<a name="line.785"></a>
<span class="sourceLineNo">786</span>     * @param t A Throwable or null.<a name="line.786"></a>
<span class="sourceLineNo">787</span>     * @since 2.4<a name="line.787"></a>
<span class="sourceLineNo">788</span>     */<a name="line.788"></a>
<span class="sourceLineNo">789</span>    void error(Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.789"></a>
<span class="sourceLineNo">790</span><a name="line.790"></a>
<span class="sourceLineNo">791</span>    /**<a name="line.791"></a>
<span class="sourceLineNo">792</span>     * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.<a name="line.792"></a>
<span class="sourceLineNo">793</span>     *<a name="line.793"></a>
<span class="sourceLineNo">794</span>     * @param msg the message string to be logged<a name="line.794"></a>
<span class="sourceLineNo">795</span>     */<a name="line.795"></a>
<span class="sourceLineNo">796</span>    void error(Message msg);<a name="line.796"></a>
<span class="sourceLineNo">797</span><a name="line.797"></a>
<span class="sourceLineNo">798</span>    /**<a name="line.798"></a>
<span class="sourceLineNo">799</span>     * Logs a message with the specific Marker at the {@link Level#ERROR ERROR} level.<a name="line.799"></a>
<span class="sourceLineNo">800</span>     *<a name="line.800"></a>
<span class="sourceLineNo">801</span>     * @param msg the message string to be logged<a name="line.801"></a>
<span class="sourceLineNo">802</span>     * @param t A Throwable or null.<a name="line.802"></a>
<span class="sourceLineNo">803</span>     */<a name="line.803"></a>
<span class="sourceLineNo">804</span>    void error(Message msg, Throwable t);<a name="line.804"></a>
<span class="sourceLineNo">805</span><a name="line.805"></a>
<span class="sourceLineNo">806</span>    /**<a name="line.806"></a>
<span class="sourceLineNo">807</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level. The<a name="line.807"></a>
<span class="sourceLineNo">808</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.808"></a>
<span class="sourceLineNo">809</span>     *<a name="line.809"></a>
<span class="sourceLineNo">810</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.810"></a>
<span class="sourceLineNo">811</span>     * @since 2.4<a name="line.811"></a>
<span class="sourceLineNo">812</span>     */<a name="line.812"></a>
<span class="sourceLineNo">813</span>    void error(MessageSupplier msgSupplier);<a name="line.813"></a>
<span class="sourceLineNo">814</span><a name="line.814"></a>
<span class="sourceLineNo">815</span>    /**<a name="line.815"></a>
<span class="sourceLineNo">816</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) including the<a name="line.816"></a>
<span class="sourceLineNo">817</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may<a name="line.817"></a>
<span class="sourceLineNo">818</span>     * not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.818"></a>
<span class="sourceLineNo">819</span>     *<a name="line.819"></a>
<span class="sourceLineNo">820</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.820"></a>
<span class="sourceLineNo">821</span>     * @param t the exception to log, including its stack trace.<a name="line.821"></a>
<span class="sourceLineNo">822</span>     * @since 2.4<a name="line.822"></a>
<span class="sourceLineNo">823</span>     */<a name="line.823"></a>
<span class="sourceLineNo">824</span>    void error(MessageSupplier msgSupplier, Throwable t);<a name="line.824"></a>
<span class="sourceLineNo">825</span><a name="line.825"></a>
<span class="sourceLineNo">826</span>    /**<a name="line.826"></a>
<span class="sourceLineNo">827</span>     * Logs a message CharSequence with the {@link Level#ERROR ERROR} level.<a name="line.827"></a>
<span class="sourceLineNo">828</span>     *<a name="line.828"></a>
<span class="sourceLineNo">829</span>     * @param message the message CharSequence to log.<a name="line.829"></a>
<span class="sourceLineNo">830</span>     */<a name="line.830"></a>
<span class="sourceLineNo">831</span>    void error(CharSequence message);<a name="line.831"></a>
<span class="sourceLineNo">832</span><a name="line.832"></a>
<span class="sourceLineNo">833</span>    /**<a name="line.833"></a>
<span class="sourceLineNo">834</span>     * Logs a CharSequence at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}<a name="line.834"></a>
<span class="sourceLineNo">835</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.835"></a>
<span class="sourceLineNo">836</span>     *<a name="line.836"></a>
<span class="sourceLineNo">837</span>     * @param message the message CharSequence to log.<a name="line.837"></a>
<span class="sourceLineNo">838</span>     * @param t the exception to log, including its stack trace.<a name="line.838"></a>
<span class="sourceLineNo">839</span>     */<a name="line.839"></a>
<span class="sourceLineNo">840</span>    void error(CharSequence message, Throwable t);<a name="line.840"></a>
<span class="sourceLineNo">841</span><a name="line.841"></a>
<span class="sourceLineNo">842</span>    /**<a name="line.842"></a>
<span class="sourceLineNo">843</span>     * Logs a message object with the {@link Level#ERROR ERROR} level.<a name="line.843"></a>
<span class="sourceLineNo">844</span>     *<a name="line.844"></a>
<span class="sourceLineNo">845</span>     * @param message the message object to log.<a name="line.845"></a>
<span class="sourceLineNo">846</span>     */<a name="line.846"></a>
<span class="sourceLineNo">847</span>    void error(Object message);<a name="line.847"></a>
<span class="sourceLineNo">848</span><a name="line.848"></a>
<span class="sourceLineNo">849</span>    /**<a name="line.849"></a>
<span class="sourceLineNo">850</span>     * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}<a name="line.850"></a>
<span class="sourceLineNo">851</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.851"></a>
<span class="sourceLineNo">852</span>     *<a name="line.852"></a>
<span class="sourceLineNo">853</span>     * @param message the message object to log.<a name="line.853"></a>
<span class="sourceLineNo">854</span>     * @param t the exception to log, including its stack trace.<a name="line.854"></a>
<span class="sourceLineNo">855</span>     */<a name="line.855"></a>
<span class="sourceLineNo">856</span>    void error(Object message, Throwable t);<a name="line.856"></a>
<span class="sourceLineNo">857</span><a name="line.857"></a>
<span class="sourceLineNo">858</span>    /**<a name="line.858"></a>
<span class="sourceLineNo">859</span>     * Logs a message object with the {@link Level#ERROR ERROR} level.<a name="line.859"></a>
<span class="sourceLineNo">860</span>     *<a name="line.860"></a>
<span class="sourceLineNo">861</span>     * @param message the message string to log.<a name="line.861"></a>
<span class="sourceLineNo">862</span>     */<a name="line.862"></a>
<span class="sourceLineNo">863</span>    void error(String message);<a name="line.863"></a>
<span class="sourceLineNo">864</span><a name="line.864"></a>
<span class="sourceLineNo">865</span>    /**<a name="line.865"></a>
<span class="sourceLineNo">866</span>     * Logs a message with parameters at the {@link Level#ERROR ERROR} level.<a name="line.866"></a>
<span class="sourceLineNo">867</span>     *<a name="line.867"></a>
<span class="sourceLineNo">868</span>     * @param message the message to log; the format depends on the message factory.<a name="line.868"></a>
<span class="sourceLineNo">869</span>     * @param params parameters to the message.<a name="line.869"></a>
<span class="sourceLineNo">870</span>     * @see #getMessageFactory()<a name="line.870"></a>
<span class="sourceLineNo">871</span>     */<a name="line.871"></a>
<span class="sourceLineNo">872</span>    void error(String message, Object... params);<a name="line.872"></a>
<span class="sourceLineNo">873</span><a name="line.873"></a>
<span class="sourceLineNo">874</span>    /**<a name="line.874"></a>
<span class="sourceLineNo">875</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#ERROR<a name="line.875"></a>
<span class="sourceLineNo">876</span>     * ERROR} level.<a name="line.876"></a>
<span class="sourceLineNo">877</span>     *<a name="line.877"></a>
<span class="sourceLineNo">878</span>     * @param message the message to log; the format depends on the message factory.<a name="line.878"></a>
<span class="sourceLineNo">879</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.879"></a>
<span class="sourceLineNo">880</span>     * @since 2.4<a name="line.880"></a>
<span class="sourceLineNo">881</span>     */<a name="line.881"></a>
<span class="sourceLineNo">882</span>    void error(String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.882"></a>
<span class="sourceLineNo">883</span><a name="line.883"></a>
<span class="sourceLineNo">884</span>    /**<a name="line.884"></a>
<span class="sourceLineNo">885</span>     * Logs a message at the {@link Level#ERROR ERROR} level including the stack trace of the {@link Throwable}<a name="line.885"></a>
<span class="sourceLineNo">886</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.886"></a>
<span class="sourceLineNo">887</span>     *<a name="line.887"></a>
<span class="sourceLineNo">888</span>     * @param message the message object to log.<a name="line.888"></a>
<span class="sourceLineNo">889</span>     * @param t the exception to log, including its stack trace.<a name="line.889"></a>
<span class="sourceLineNo">890</span>     */<a name="line.890"></a>
<span class="sourceLineNo">891</span>    void error(String message, Throwable t);<a name="line.891"></a>
<span class="sourceLineNo">892</span><a name="line.892"></a>
<span class="sourceLineNo">893</span>    /**<a name="line.893"></a>
<span class="sourceLineNo">894</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#ERROR ERROR} level.<a name="line.894"></a>
<span class="sourceLineNo">895</span>     *<a name="line.895"></a>
<span class="sourceLineNo">896</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.896"></a>
<span class="sourceLineNo">897</span>     *            message factory.<a name="line.897"></a>
<span class="sourceLineNo">898</span>     * @since 2.4<a name="line.898"></a>
<span class="sourceLineNo">899</span>     */<a name="line.899"></a>
<span class="sourceLineNo">900</span>    void error(Supplier&lt;?&gt; msgSupplier);<a name="line.900"></a>
<span class="sourceLineNo">901</span><a name="line.901"></a>
<span class="sourceLineNo">902</span>    /**<a name="line.902"></a>
<span class="sourceLineNo">903</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#ERROR ERROR} level) including the<a name="line.903"></a>
<span class="sourceLineNo">904</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.904"></a>
<span class="sourceLineNo">905</span>     *<a name="line.905"></a>
<span class="sourceLineNo">906</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.906"></a>
<span class="sourceLineNo">907</span>     *            message factory.<a name="line.907"></a>
<span class="sourceLineNo">908</span>     * @param t the exception to log, including its stack trace.<a name="line.908"></a>
<span class="sourceLineNo">909</span>     * @since 2.4<a name="line.909"></a>
<span class="sourceLineNo">910</span>     */<a name="line.910"></a>
<span class="sourceLineNo">911</span>    void error(Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.911"></a>
<span class="sourceLineNo">912</span><a name="line.912"></a>
<span class="sourceLineNo">913</span>    /**<a name="line.913"></a>
<span class="sourceLineNo">914</span>     * Logs a message with parameters at error level.<a name="line.914"></a>
<span class="sourceLineNo">915</span>     *<a name="line.915"></a>
<span class="sourceLineNo">916</span>     * @param marker the marker data specific to this log statement<a name="line.916"></a>
<span class="sourceLineNo">917</span>     * @param message the message to log; the format depends on the message factory.<a name="line.917"></a>
<span class="sourceLineNo">918</span>     * @param p0 parameter to the message.<a name="line.918"></a>
<span class="sourceLineNo">919</span>     */<a name="line.919"></a>
<span class="sourceLineNo">920</span>    void error(Marker marker, String message, Object p0);<a name="line.920"></a>
<span class="sourceLineNo">921</span><a name="line.921"></a>
<span class="sourceLineNo">922</span>    /**<a name="line.922"></a>
<span class="sourceLineNo">923</span>     * Logs a message with parameters at error level.<a name="line.923"></a>
<span class="sourceLineNo">924</span>     *<a name="line.924"></a>
<span class="sourceLineNo">925</span>     * @param marker the marker data specific to this log statement<a name="line.925"></a>
<span class="sourceLineNo">926</span>     * @param message the message to log; the format depends on the message factory.<a name="line.926"></a>
<span class="sourceLineNo">927</span>     * @param p0 parameter to the message.<a name="line.927"></a>
<span class="sourceLineNo">928</span>     * @param p1 parameter to the message.<a name="line.928"></a>
<span class="sourceLineNo">929</span>     */<a name="line.929"></a>
<span class="sourceLineNo">930</span>    void error(Marker marker, String message, Object p0, Object p1);<a name="line.930"></a>
<span class="sourceLineNo">931</span><a name="line.931"></a>
<span class="sourceLineNo">932</span>    /**<a name="line.932"></a>
<span class="sourceLineNo">933</span>     * Logs a message with parameters at error level.<a name="line.933"></a>
<span class="sourceLineNo">934</span>     *<a name="line.934"></a>
<span class="sourceLineNo">935</span>     * @param marker the marker data specific to this log statement<a name="line.935"></a>
<span class="sourceLineNo">936</span>     * @param message the message to log; the format depends on the message factory.<a name="line.936"></a>
<span class="sourceLineNo">937</span>     * @param p0 parameter to the message.<a name="line.937"></a>
<span class="sourceLineNo">938</span>     * @param p1 parameter to the message.<a name="line.938"></a>
<span class="sourceLineNo">939</span>     * @param p2 parameter to the message.<a name="line.939"></a>
<span class="sourceLineNo">940</span>     */<a name="line.940"></a>
<span class="sourceLineNo">941</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.941"></a>
<span class="sourceLineNo">942</span><a name="line.942"></a>
<span class="sourceLineNo">943</span>    /**<a name="line.943"></a>
<span class="sourceLineNo">944</span>     * Logs a message with parameters at error level.<a name="line.944"></a>
<span class="sourceLineNo">945</span>     *<a name="line.945"></a>
<span class="sourceLineNo">946</span>     * @param marker the marker data specific to this log statement<a name="line.946"></a>
<span class="sourceLineNo">947</span>     * @param message the message to log; the format depends on the message factory.<a name="line.947"></a>
<span class="sourceLineNo">948</span>     * @param p0 parameter to the message.<a name="line.948"></a>
<span class="sourceLineNo">949</span>     * @param p1 parameter to the message.<a name="line.949"></a>
<span class="sourceLineNo">950</span>     * @param p2 parameter to the message.<a name="line.950"></a>
<span class="sourceLineNo">951</span>     * @param p3 parameter to the message.<a name="line.951"></a>
<span class="sourceLineNo">952</span>     */<a name="line.952"></a>
<span class="sourceLineNo">953</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.953"></a>
<span class="sourceLineNo">954</span><a name="line.954"></a>
<span class="sourceLineNo">955</span>    /**<a name="line.955"></a>
<span class="sourceLineNo">956</span>     * Logs a message with parameters at error level.<a name="line.956"></a>
<span class="sourceLineNo">957</span>     *<a name="line.957"></a>
<span class="sourceLineNo">958</span>     * @param marker the marker data specific to this log statement<a name="line.958"></a>
<span class="sourceLineNo">959</span>     * @param message the message to log; the format depends on the message factory.<a name="line.959"></a>
<span class="sourceLineNo">960</span>     * @param p0 parameter to the message.<a name="line.960"></a>
<span class="sourceLineNo">961</span>     * @param p1 parameter to the message.<a name="line.961"></a>
<span class="sourceLineNo">962</span>     * @param p2 parameter to the message.<a name="line.962"></a>
<span class="sourceLineNo">963</span>     * @param p3 parameter to the message.<a name="line.963"></a>
<span class="sourceLineNo">964</span>     * @param p4 parameter to the message.<a name="line.964"></a>
<span class="sourceLineNo">965</span>     */<a name="line.965"></a>
<span class="sourceLineNo">966</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.966"></a>
<span class="sourceLineNo">967</span><a name="line.967"></a>
<span class="sourceLineNo">968</span>    /**<a name="line.968"></a>
<span class="sourceLineNo">969</span>     * Logs a message with parameters at error level.<a name="line.969"></a>
<span class="sourceLineNo">970</span>     *<a name="line.970"></a>
<span class="sourceLineNo">971</span>     * @param marker the marker data specific to this log statement<a name="line.971"></a>
<span class="sourceLineNo">972</span>     * @param message the message to log; the format depends on the message factory.<a name="line.972"></a>
<span class="sourceLineNo">973</span>     * @param p0 parameter to the message.<a name="line.973"></a>
<span class="sourceLineNo">974</span>     * @param p1 parameter to the message.<a name="line.974"></a>
<span class="sourceLineNo">975</span>     * @param p2 parameter to the message.<a name="line.975"></a>
<span class="sourceLineNo">976</span>     * @param p3 parameter to the message.<a name="line.976"></a>
<span class="sourceLineNo">977</span>     * @param p4 parameter to the message.<a name="line.977"></a>
<span class="sourceLineNo">978</span>     * @param p5 parameter to the message.<a name="line.978"></a>
<span class="sourceLineNo">979</span>     */<a name="line.979"></a>
<span class="sourceLineNo">980</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.980"></a>
<span class="sourceLineNo">981</span><a name="line.981"></a>
<span class="sourceLineNo">982</span>    /**<a name="line.982"></a>
<span class="sourceLineNo">983</span>     * Logs a message with parameters at error level.<a name="line.983"></a>
<span class="sourceLineNo">984</span>     *<a name="line.984"></a>
<span class="sourceLineNo">985</span>     * @param marker the marker data specific to this log statement<a name="line.985"></a>
<span class="sourceLineNo">986</span>     * @param message the message to log; the format depends on the message factory.<a name="line.986"></a>
<span class="sourceLineNo">987</span>     * @param p0 parameter to the message.<a name="line.987"></a>
<span class="sourceLineNo">988</span>     * @param p1 parameter to the message.<a name="line.988"></a>
<span class="sourceLineNo">989</span>     * @param p2 parameter to the message.<a name="line.989"></a>
<span class="sourceLineNo">990</span>     * @param p3 parameter to the message.<a name="line.990"></a>
<span class="sourceLineNo">991</span>     * @param p4 parameter to the message.<a name="line.991"></a>
<span class="sourceLineNo">992</span>     * @param p5 parameter to the message.<a name="line.992"></a>
<span class="sourceLineNo">993</span>     * @param p6 parameter to the message.<a name="line.993"></a>
<span class="sourceLineNo">994</span>     */<a name="line.994"></a>
<span class="sourceLineNo">995</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.995"></a>
<span class="sourceLineNo">996</span>            Object p6);<a name="line.996"></a>
<span class="sourceLineNo">997</span><a name="line.997"></a>
<span class="sourceLineNo">998</span>    /**<a name="line.998"></a>
<span class="sourceLineNo">999</span>     * Logs a message with parameters at error level.<a name="line.999"></a>
<span class="sourceLineNo">1000</span>     *<a name="line.1000"></a>
<span class="sourceLineNo">1001</span>     * @param marker the marker data specific to this log statement<a name="line.1001"></a>
<span class="sourceLineNo">1002</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1002"></a>
<span class="sourceLineNo">1003</span>     * @param p0 parameter to the message.<a name="line.1003"></a>
<span class="sourceLineNo">1004</span>     * @param p1 parameter to the message.<a name="line.1004"></a>
<span class="sourceLineNo">1005</span>     * @param p2 parameter to the message.<a name="line.1005"></a>
<span class="sourceLineNo">1006</span>     * @param p3 parameter to the message.<a name="line.1006"></a>
<span class="sourceLineNo">1007</span>     * @param p4 parameter to the message.<a name="line.1007"></a>
<span class="sourceLineNo">1008</span>     * @param p5 parameter to the message.<a name="line.1008"></a>
<span class="sourceLineNo">1009</span>     * @param p6 parameter to the message.<a name="line.1009"></a>
<span class="sourceLineNo">1010</span>     * @param p7 parameter to the message.<a name="line.1010"></a>
<span class="sourceLineNo">1011</span>     */<a name="line.1011"></a>
<span class="sourceLineNo">1012</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.1012"></a>
<span class="sourceLineNo">1013</span>            Object p7);<a name="line.1013"></a>
<span class="sourceLineNo">1014</span><a name="line.1014"></a>
<span class="sourceLineNo">1015</span>    /**<a name="line.1015"></a>
<span class="sourceLineNo">1016</span>     * Logs a message with parameters at error level.<a name="line.1016"></a>
<span class="sourceLineNo">1017</span>     *<a name="line.1017"></a>
<span class="sourceLineNo">1018</span>     * @param marker the marker data specific to this log statement<a name="line.1018"></a>
<span class="sourceLineNo">1019</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1019"></a>
<span class="sourceLineNo">1020</span>     * @param p0 parameter to the message.<a name="line.1020"></a>
<span class="sourceLineNo">1021</span>     * @param p1 parameter to the message.<a name="line.1021"></a>
<span class="sourceLineNo">1022</span>     * @param p2 parameter to the message.<a name="line.1022"></a>
<span class="sourceLineNo">1023</span>     * @param p3 parameter to the message.<a name="line.1023"></a>
<span class="sourceLineNo">1024</span>     * @param p4 parameter to the message.<a name="line.1024"></a>
<span class="sourceLineNo">1025</span>     * @param p5 parameter to the message.<a name="line.1025"></a>
<span class="sourceLineNo">1026</span>     * @param p6 parameter to the message.<a name="line.1026"></a>
<span class="sourceLineNo">1027</span>     * @param p7 parameter to the message.<a name="line.1027"></a>
<span class="sourceLineNo">1028</span>     * @param p8 parameter to the message.<a name="line.1028"></a>
<span class="sourceLineNo">1029</span>     */<a name="line.1029"></a>
<span class="sourceLineNo">1030</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.1030"></a>
<span class="sourceLineNo">1031</span>            Object p7, Object p8);<a name="line.1031"></a>
<span class="sourceLineNo">1032</span><a name="line.1032"></a>
<span class="sourceLineNo">1033</span>    /**<a name="line.1033"></a>
<span class="sourceLineNo">1034</span>     * Logs a message with parameters at error level.<a name="line.1034"></a>
<span class="sourceLineNo">1035</span>     *<a name="line.1035"></a>
<span class="sourceLineNo">1036</span>     * @param marker the marker data specific to this log statement<a name="line.1036"></a>
<span class="sourceLineNo">1037</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1037"></a>
<span class="sourceLineNo">1038</span>     * @param p0 parameter to the message.<a name="line.1038"></a>
<span class="sourceLineNo">1039</span>     * @param p1 parameter to the message.<a name="line.1039"></a>
<span class="sourceLineNo">1040</span>     * @param p2 parameter to the message.<a name="line.1040"></a>
<span class="sourceLineNo">1041</span>     * @param p3 parameter to the message.<a name="line.1041"></a>
<span class="sourceLineNo">1042</span>     * @param p4 parameter to the message.<a name="line.1042"></a>
<span class="sourceLineNo">1043</span>     * @param p5 parameter to the message.<a name="line.1043"></a>
<span class="sourceLineNo">1044</span>     * @param p6 parameter to the message.<a name="line.1044"></a>
<span class="sourceLineNo">1045</span>     * @param p7 parameter to the message.<a name="line.1045"></a>
<span class="sourceLineNo">1046</span>     * @param p8 parameter to the message.<a name="line.1046"></a>
<span class="sourceLineNo">1047</span>     * @param p9 parameter to the message.<a name="line.1047"></a>
<span class="sourceLineNo">1048</span>     */<a name="line.1048"></a>
<span class="sourceLineNo">1049</span>    void error(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.1049"></a>
<span class="sourceLineNo">1050</span>            Object p7, Object p8, Object p9);<a name="line.1050"></a>
<span class="sourceLineNo">1051</span><a name="line.1051"></a>
<span class="sourceLineNo">1052</span>    /**<a name="line.1052"></a>
<span class="sourceLineNo">1053</span>     * Logs a message with parameters at error level.<a name="line.1053"></a>
<span class="sourceLineNo">1054</span>     *<a name="line.1054"></a>
<span class="sourceLineNo">1055</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1055"></a>
<span class="sourceLineNo">1056</span>     * @param p0 parameter to the message.<a name="line.1056"></a>
<span class="sourceLineNo">1057</span>     */<a name="line.1057"></a>
<span class="sourceLineNo">1058</span>    void error(String message, Object p0);<a name="line.1058"></a>
<span class="sourceLineNo">1059</span><a name="line.1059"></a>
<span class="sourceLineNo">1060</span>    /**<a name="line.1060"></a>
<span class="sourceLineNo">1061</span>     * Logs a message with parameters at error level.<a name="line.1061"></a>
<span class="sourceLineNo">1062</span>     *<a name="line.1062"></a>
<span class="sourceLineNo">1063</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1063"></a>
<span class="sourceLineNo">1064</span>     * @param p0 parameter to the message.<a name="line.1064"></a>
<span class="sourceLineNo">1065</span>     * @param p1 parameter to the message.<a name="line.1065"></a>
<span class="sourceLineNo">1066</span>     */<a name="line.1066"></a>
<span class="sourceLineNo">1067</span>    void error(String message, Object p0, Object p1);<a name="line.1067"></a>
<span class="sourceLineNo">1068</span><a name="line.1068"></a>
<span class="sourceLineNo">1069</span>    /**<a name="line.1069"></a>
<span class="sourceLineNo">1070</span>     * Logs a message with parameters at error level.<a name="line.1070"></a>
<span class="sourceLineNo">1071</span>     *<a name="line.1071"></a>
<span class="sourceLineNo">1072</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1072"></a>
<span class="sourceLineNo">1073</span>     * @param p0 parameter to the message.<a name="line.1073"></a>
<span class="sourceLineNo">1074</span>     * @param p1 parameter to the message.<a name="line.1074"></a>
<span class="sourceLineNo">1075</span>     * @param p2 parameter to the message.<a name="line.1075"></a>
<span class="sourceLineNo">1076</span>     */<a name="line.1076"></a>
<span class="sourceLineNo">1077</span>    void error(String message, Object p0, Object p1, Object p2);<a name="line.1077"></a>
<span class="sourceLineNo">1078</span><a name="line.1078"></a>
<span class="sourceLineNo">1079</span>    /**<a name="line.1079"></a>
<span class="sourceLineNo">1080</span>     * Logs a message with parameters at error level.<a name="line.1080"></a>
<span class="sourceLineNo">1081</span>     *<a name="line.1081"></a>
<span class="sourceLineNo">1082</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1082"></a>
<span class="sourceLineNo">1083</span>     * @param p0 parameter to the message.<a name="line.1083"></a>
<span class="sourceLineNo">1084</span>     * @param p1 parameter to the message.<a name="line.1084"></a>
<span class="sourceLineNo">1085</span>     * @param p2 parameter to the message.<a name="line.1085"></a>
<span class="sourceLineNo">1086</span>     * @param p3 parameter to the message.<a name="line.1086"></a>
<span class="sourceLineNo">1087</span>     */<a name="line.1087"></a>
<span class="sourceLineNo">1088</span>    void error(String message, Object p0, Object p1, Object p2, Object p3);<a name="line.1088"></a>
<span class="sourceLineNo">1089</span><a name="line.1089"></a>
<span class="sourceLineNo">1090</span>    /**<a name="line.1090"></a>
<span class="sourceLineNo">1091</span>     * Logs a message with parameters at error level.<a name="line.1091"></a>
<span class="sourceLineNo">1092</span>     *<a name="line.1092"></a>
<span class="sourceLineNo">1093</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1093"></a>
<span class="sourceLineNo">1094</span>     * @param p0 parameter to the message.<a name="line.1094"></a>
<span class="sourceLineNo">1095</span>     * @param p1 parameter to the message.<a name="line.1095"></a>
<span class="sourceLineNo">1096</span>     * @param p2 parameter to the message.<a name="line.1096"></a>
<span class="sourceLineNo">1097</span>     * @param p3 parameter to the message.<a name="line.1097"></a>
<span class="sourceLineNo">1098</span>     * @param p4 parameter to the message.<a name="line.1098"></a>
<span class="sourceLineNo">1099</span>     */<a name="line.1099"></a>
<span class="sourceLineNo">1100</span>    void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.1100"></a>
<span class="sourceLineNo">1101</span><a name="line.1101"></a>
<span class="sourceLineNo">1102</span>    /**<a name="line.1102"></a>
<span class="sourceLineNo">1103</span>     * Logs a message with parameters at error level.<a name="line.1103"></a>
<span class="sourceLineNo">1104</span>     *<a name="line.1104"></a>
<span class="sourceLineNo">1105</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1105"></a>
<span class="sourceLineNo">1106</span>     * @param p0 parameter to the message.<a name="line.1106"></a>
<span class="sourceLineNo">1107</span>     * @param p1 parameter to the message.<a name="line.1107"></a>
<span class="sourceLineNo">1108</span>     * @param p2 parameter to the message.<a name="line.1108"></a>
<span class="sourceLineNo">1109</span>     * @param p3 parameter to the message.<a name="line.1109"></a>
<span class="sourceLineNo">1110</span>     * @param p4 parameter to the message.<a name="line.1110"></a>
<span class="sourceLineNo">1111</span>     * @param p5 parameter to the message.<a name="line.1111"></a>
<span class="sourceLineNo">1112</span>     */<a name="line.1112"></a>
<span class="sourceLineNo">1113</span>    void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.1113"></a>
<span class="sourceLineNo">1114</span><a name="line.1114"></a>
<span class="sourceLineNo">1115</span>    /**<a name="line.1115"></a>
<span class="sourceLineNo">1116</span>     * Logs a message with parameters at error level.<a name="line.1116"></a>
<span class="sourceLineNo">1117</span>     *<a name="line.1117"></a>
<span class="sourceLineNo">1118</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1118"></a>
<span class="sourceLineNo">1119</span>     * @param p0 parameter to the message.<a name="line.1119"></a>
<span class="sourceLineNo">1120</span>     * @param p1 parameter to the message.<a name="line.1120"></a>
<span class="sourceLineNo">1121</span>     * @param p2 parameter to the message.<a name="line.1121"></a>
<span class="sourceLineNo">1122</span>     * @param p3 parameter to the message.<a name="line.1122"></a>
<span class="sourceLineNo">1123</span>     * @param p4 parameter to the message.<a name="line.1123"></a>
<span class="sourceLineNo">1124</span>     * @param p5 parameter to the message.<a name="line.1124"></a>
<span class="sourceLineNo">1125</span>     * @param p6 parameter to the message.<a name="line.1125"></a>
<span class="sourceLineNo">1126</span>     */<a name="line.1126"></a>
<span class="sourceLineNo">1127</span>    void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.1127"></a>
<span class="sourceLineNo">1128</span><a name="line.1128"></a>
<span class="sourceLineNo">1129</span>    /**<a name="line.1129"></a>
<span class="sourceLineNo">1130</span>     * Logs a message with parameters at error level.<a name="line.1130"></a>
<span class="sourceLineNo">1131</span>     *<a name="line.1131"></a>
<span class="sourceLineNo">1132</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1132"></a>
<span class="sourceLineNo">1133</span>     * @param p0 parameter to the message.<a name="line.1133"></a>
<span class="sourceLineNo">1134</span>     * @param p1 parameter to the message.<a name="line.1134"></a>
<span class="sourceLineNo">1135</span>     * @param p2 parameter to the message.<a name="line.1135"></a>
<span class="sourceLineNo">1136</span>     * @param p3 parameter to the message.<a name="line.1136"></a>
<span class="sourceLineNo">1137</span>     * @param p4 parameter to the message.<a name="line.1137"></a>
<span class="sourceLineNo">1138</span>     * @param p5 parameter to the message.<a name="line.1138"></a>
<span class="sourceLineNo">1139</span>     * @param p6 parameter to the message.<a name="line.1139"></a>
<span class="sourceLineNo">1140</span>     * @param p7 parameter to the message.<a name="line.1140"></a>
<span class="sourceLineNo">1141</span>     */<a name="line.1141"></a>
<span class="sourceLineNo">1142</span>    void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.1142"></a>
<span class="sourceLineNo">1143</span><a name="line.1143"></a>
<span class="sourceLineNo">1144</span>    /**<a name="line.1144"></a>
<span class="sourceLineNo">1145</span>     * Logs a message with parameters at error level.<a name="line.1145"></a>
<span class="sourceLineNo">1146</span>     *<a name="line.1146"></a>
<span class="sourceLineNo">1147</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1147"></a>
<span class="sourceLineNo">1148</span>     * @param p0 parameter to the message.<a name="line.1148"></a>
<span class="sourceLineNo">1149</span>     * @param p1 parameter to the message.<a name="line.1149"></a>
<span class="sourceLineNo">1150</span>     * @param p2 parameter to the message.<a name="line.1150"></a>
<span class="sourceLineNo">1151</span>     * @param p3 parameter to the message.<a name="line.1151"></a>
<span class="sourceLineNo">1152</span>     * @param p4 parameter to the message.<a name="line.1152"></a>
<span class="sourceLineNo">1153</span>     * @param p5 parameter to the message.<a name="line.1153"></a>
<span class="sourceLineNo">1154</span>     * @param p6 parameter to the message.<a name="line.1154"></a>
<span class="sourceLineNo">1155</span>     * @param p7 parameter to the message.<a name="line.1155"></a>
<span class="sourceLineNo">1156</span>     * @param p8 parameter to the message.<a name="line.1156"></a>
<span class="sourceLineNo">1157</span>     */<a name="line.1157"></a>
<span class="sourceLineNo">1158</span>    void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.1158"></a>
<span class="sourceLineNo">1159</span>            Object p8);<a name="line.1159"></a>
<span class="sourceLineNo">1160</span><a name="line.1160"></a>
<span class="sourceLineNo">1161</span>    /**<a name="line.1161"></a>
<span class="sourceLineNo">1162</span>     * Logs a message with parameters at error level.<a name="line.1162"></a>
<span class="sourceLineNo">1163</span>     *<a name="line.1163"></a>
<span class="sourceLineNo">1164</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1164"></a>
<span class="sourceLineNo">1165</span>     * @param p0 parameter to the message.<a name="line.1165"></a>
<span class="sourceLineNo">1166</span>     * @param p1 parameter to the message.<a name="line.1166"></a>
<span class="sourceLineNo">1167</span>     * @param p2 parameter to the message.<a name="line.1167"></a>
<span class="sourceLineNo">1168</span>     * @param p3 parameter to the message.<a name="line.1168"></a>
<span class="sourceLineNo">1169</span>     * @param p4 parameter to the message.<a name="line.1169"></a>
<span class="sourceLineNo">1170</span>     * @param p5 parameter to the message.<a name="line.1170"></a>
<span class="sourceLineNo">1171</span>     * @param p6 parameter to the message.<a name="line.1171"></a>
<span class="sourceLineNo">1172</span>     * @param p7 parameter to the message.<a name="line.1172"></a>
<span class="sourceLineNo">1173</span>     * @param p8 parameter to the message.<a name="line.1173"></a>
<span class="sourceLineNo">1174</span>     * @param p9 parameter to the message.<a name="line.1174"></a>
<span class="sourceLineNo">1175</span>     */<a name="line.1175"></a>
<span class="sourceLineNo">1176</span>    void error(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.1176"></a>
<span class="sourceLineNo">1177</span>            Object p8, Object p9);<a name="line.1177"></a>
<span class="sourceLineNo">1178</span><a name="line.1178"></a>
<span class="sourceLineNo">1179</span>    /**<a name="line.1179"></a>
<span class="sourceLineNo">1180</span>     * Logs exit from a method. Used for methods that do not return anything.<a name="line.1180"></a>
<span class="sourceLineNo">1181</span>     * @deprecated Use {@link #traceExit()} instead which performs the same function.<a name="line.1181"></a>
<span class="sourceLineNo">1182</span>     */<a name="line.1182"></a>
<span class="sourceLineNo">1183</span>    @Deprecated<a name="line.1183"></a>
<span class="sourceLineNo">1184</span>    void exit();<a name="line.1184"></a>
<span class="sourceLineNo">1185</span><a name="line.1185"></a>
<span class="sourceLineNo">1186</span>    /**<a name="line.1186"></a>
<span class="sourceLineNo">1187</span>     * Logs exiting from a method with the result. This may be coded as:<a name="line.1187"></a>
<span class="sourceLineNo">1188</span>     *<a name="line.1188"></a>
<span class="sourceLineNo">1189</span>     * &lt;pre&gt;<a name="line.1189"></a>
<span class="sourceLineNo">1190</span>     * return LOGGER.exit(myResult);<a name="line.1190"></a>
<span class="sourceLineNo">1191</span>     * &lt;/pre&gt;<a name="line.1191"></a>
<span class="sourceLineNo">1192</span>     *<a name="line.1192"></a>
<span class="sourceLineNo">1193</span>     * @param &lt;R&gt; The type of the parameter and object being returned.<a name="line.1193"></a>
<span class="sourceLineNo">1194</span>     * @param result The result being returned from the method call.<a name="line.1194"></a>
<span class="sourceLineNo">1195</span>     * @return the result.<a name="line.1195"></a>
<span class="sourceLineNo">1196</span>     * @deprecated Use {@link #traceExit(Object)} instead which performs the same function.<a name="line.1196"></a>
<span class="sourceLineNo">1197</span>     */<a name="line.1197"></a>
<span class="sourceLineNo">1198</span>    @Deprecated<a name="line.1198"></a>
<span class="sourceLineNo">1199</span>    &lt;R&gt; R exit(R result);<a name="line.1199"></a>
<span class="sourceLineNo">1200</span><a name="line.1200"></a>
<span class="sourceLineNo">1201</span>    /**<a name="line.1201"></a>
<span class="sourceLineNo">1202</span>     * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.<a name="line.1202"></a>
<span class="sourceLineNo">1203</span>     *<a name="line.1203"></a>
<span class="sourceLineNo">1204</span>     * @param marker the marker data specific to this log statement<a name="line.1204"></a>
<span class="sourceLineNo">1205</span>     * @param msg the message string to be logged<a name="line.1205"></a>
<span class="sourceLineNo">1206</span>     */<a name="line.1206"></a>
<span class="sourceLineNo">1207</span>    void fatal(Marker marker, Message msg);<a name="line.1207"></a>
<span class="sourceLineNo">1208</span><a name="line.1208"></a>
<span class="sourceLineNo">1209</span>    /**<a name="line.1209"></a>
<span class="sourceLineNo">1210</span>     * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.<a name="line.1210"></a>
<span class="sourceLineNo">1211</span>     *<a name="line.1211"></a>
<span class="sourceLineNo">1212</span>     * @param marker the marker data specific to this log statement<a name="line.1212"></a>
<span class="sourceLineNo">1213</span>     * @param msg the message string to be logged<a name="line.1213"></a>
<span class="sourceLineNo">1214</span>     * @param t A Throwable or null.<a name="line.1214"></a>
<span class="sourceLineNo">1215</span>     */<a name="line.1215"></a>
<span class="sourceLineNo">1216</span>    void fatal(Marker marker, Message msg, Throwable t);<a name="line.1216"></a>
<span class="sourceLineNo">1217</span><a name="line.1217"></a>
<span class="sourceLineNo">1218</span>    /**<a name="line.1218"></a>
<span class="sourceLineNo">1219</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level with<a name="line.1219"></a>
<span class="sourceLineNo">1220</span>     * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.1220"></a>
<span class="sourceLineNo">1221</span>     * {@code Message}.<a name="line.1221"></a>
<span class="sourceLineNo">1222</span>     *<a name="line.1222"></a>
<span class="sourceLineNo">1223</span>     * @param marker the marker data specific to this log statement<a name="line.1223"></a>
<span class="sourceLineNo">1224</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1224"></a>
<span class="sourceLineNo">1225</span>     * @since 2.4<a name="line.1225"></a>
<span class="sourceLineNo">1226</span>     */<a name="line.1226"></a>
<span class="sourceLineNo">1227</span>    void fatal(Marker marker, MessageSupplier msgSupplier);<a name="line.1227"></a>
<span class="sourceLineNo">1228</span><a name="line.1228"></a>
<span class="sourceLineNo">1229</span>    /**<a name="line.1229"></a>
<span class="sourceLineNo">1230</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) with the<a name="line.1230"></a>
<span class="sourceLineNo">1231</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The<a name="line.1231"></a>
<span class="sourceLineNo">1232</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.1232"></a>
<span class="sourceLineNo">1233</span>     *<a name="line.1233"></a>
<span class="sourceLineNo">1234</span>     * @param marker the marker data specific to this log statement<a name="line.1234"></a>
<span class="sourceLineNo">1235</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1235"></a>
<span class="sourceLineNo">1236</span>     * @param t A Throwable or null.<a name="line.1236"></a>
<span class="sourceLineNo">1237</span>     * @since 2.4<a name="line.1237"></a>
<span class="sourceLineNo">1238</span>     */<a name="line.1238"></a>
<span class="sourceLineNo">1239</span>    void fatal(Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.1239"></a>
<span class="sourceLineNo">1240</span><a name="line.1240"></a>
<span class="sourceLineNo">1241</span>    /**<a name="line.1241"></a>
<span class="sourceLineNo">1242</span>     * Logs a message CharSequence with the {@link Level#FATAL FATAL} level.<a name="line.1242"></a>
<span class="sourceLineNo">1243</span>     *<a name="line.1243"></a>
<span class="sourceLineNo">1244</span>     * @param marker The marker data specific to this log statement.<a name="line.1244"></a>
<span class="sourceLineNo">1245</span>     * @param message the message CharSequence to log.<a name="line.1245"></a>
<span class="sourceLineNo">1246</span>     */<a name="line.1246"></a>
<span class="sourceLineNo">1247</span>    void fatal(Marker marker, CharSequence message);<a name="line.1247"></a>
<span class="sourceLineNo">1248</span><a name="line.1248"></a>
<span class="sourceLineNo">1249</span>    /**<a name="line.1249"></a>
<span class="sourceLineNo">1250</span>     * Logs a CharSequence at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}<a name="line.1250"></a>
<span class="sourceLineNo">1251</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1251"></a>
<span class="sourceLineNo">1252</span>     *<a name="line.1252"></a>
<span class="sourceLineNo">1253</span>     * @param marker The marker data specific to this log statement.<a name="line.1253"></a>
<span class="sourceLineNo">1254</span>     * @param message the message CharSequence to log.<a name="line.1254"></a>
<span class="sourceLineNo">1255</span>     * @param t the exception to log, including its stack trace.<a name="line.1255"></a>
<span class="sourceLineNo">1256</span>     */<a name="line.1256"></a>
<span class="sourceLineNo">1257</span>    void fatal(Marker marker, CharSequence message, Throwable t);<a name="line.1257"></a>
<span class="sourceLineNo">1258</span><a name="line.1258"></a>
<span class="sourceLineNo">1259</span>    /**<a name="line.1259"></a>
<span class="sourceLineNo">1260</span>     * Logs a message object with the {@link Level#FATAL FATAL} level.<a name="line.1260"></a>
<span class="sourceLineNo">1261</span>     *<a name="line.1261"></a>
<span class="sourceLineNo">1262</span>     * @param marker The marker data specific to this log statement.<a name="line.1262"></a>
<span class="sourceLineNo">1263</span>     * @param message the message object to log.<a name="line.1263"></a>
<span class="sourceLineNo">1264</span>     */<a name="line.1264"></a>
<span class="sourceLineNo">1265</span>    void fatal(Marker marker, Object message);<a name="line.1265"></a>
<span class="sourceLineNo">1266</span><a name="line.1266"></a>
<span class="sourceLineNo">1267</span>    /**<a name="line.1267"></a>
<span class="sourceLineNo">1268</span>     * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}<a name="line.1268"></a>
<span class="sourceLineNo">1269</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1269"></a>
<span class="sourceLineNo">1270</span>     *<a name="line.1270"></a>
<span class="sourceLineNo">1271</span>     * @param marker The marker data specific to this log statement.<a name="line.1271"></a>
<span class="sourceLineNo">1272</span>     * @param message the message object to log.<a name="line.1272"></a>
<span class="sourceLineNo">1273</span>     * @param t the exception to log, including its stack trace.<a name="line.1273"></a>
<span class="sourceLineNo">1274</span>     */<a name="line.1274"></a>
<span class="sourceLineNo">1275</span>    void fatal(Marker marker, Object message, Throwable t);<a name="line.1275"></a>
<span class="sourceLineNo">1276</span><a name="line.1276"></a>
<span class="sourceLineNo">1277</span>    /**<a name="line.1277"></a>
<span class="sourceLineNo">1278</span>     * Logs a message object with the {@link Level#FATAL FATAL} level.<a name="line.1278"></a>
<span class="sourceLineNo">1279</span>     *<a name="line.1279"></a>
<span class="sourceLineNo">1280</span>     * @param marker The marker data specific to this log statement.<a name="line.1280"></a>
<span class="sourceLineNo">1281</span>     * @param message the message object to log.<a name="line.1281"></a>
<span class="sourceLineNo">1282</span>     */<a name="line.1282"></a>
<span class="sourceLineNo">1283</span>    void fatal(Marker marker, String message);<a name="line.1283"></a>
<span class="sourceLineNo">1284</span><a name="line.1284"></a>
<span class="sourceLineNo">1285</span>    /**<a name="line.1285"></a>
<span class="sourceLineNo">1286</span>     * Logs a message with parameters at the {@link Level#FATAL FATAL} level.<a name="line.1286"></a>
<span class="sourceLineNo">1287</span>     *<a name="line.1287"></a>
<span class="sourceLineNo">1288</span>     * @param marker The marker data specific to this log statement.<a name="line.1288"></a>
<span class="sourceLineNo">1289</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1289"></a>
<span class="sourceLineNo">1290</span>     * @param params parameters to the message.<a name="line.1290"></a>
<span class="sourceLineNo">1291</span>     * @see #getMessageFactory()<a name="line.1291"></a>
<span class="sourceLineNo">1292</span>     */<a name="line.1292"></a>
<span class="sourceLineNo">1293</span>    void fatal(Marker marker, String message, Object... params);<a name="line.1293"></a>
<span class="sourceLineNo">1294</span><a name="line.1294"></a>
<span class="sourceLineNo">1295</span>    /**<a name="line.1295"></a>
<span class="sourceLineNo">1296</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#FATAL<a name="line.1296"></a>
<span class="sourceLineNo">1297</span>     * FATAL} level.<a name="line.1297"></a>
<span class="sourceLineNo">1298</span>     *<a name="line.1298"></a>
<span class="sourceLineNo">1299</span>     * @param marker the marker data specific to this log statement<a name="line.1299"></a>
<span class="sourceLineNo">1300</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1300"></a>
<span class="sourceLineNo">1301</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.1301"></a>
<span class="sourceLineNo">1302</span>     * @since 2.4<a name="line.1302"></a>
<span class="sourceLineNo">1303</span>     */<a name="line.1303"></a>
<span class="sourceLineNo">1304</span>    void fatal(Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.1304"></a>
<span class="sourceLineNo">1305</span><a name="line.1305"></a>
<span class="sourceLineNo">1306</span>    /**<a name="line.1306"></a>
<span class="sourceLineNo">1307</span>     * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}<a name="line.1307"></a>
<span class="sourceLineNo">1308</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1308"></a>
<span class="sourceLineNo">1309</span>     *<a name="line.1309"></a>
<span class="sourceLineNo">1310</span>     * @param marker The marker data specific to this log statement.<a name="line.1310"></a>
<span class="sourceLineNo">1311</span>     * @param message the message object to log.<a name="line.1311"></a>
<span class="sourceLineNo">1312</span>     * @param t the exception to log, including its stack trace.<a name="line.1312"></a>
<span class="sourceLineNo">1313</span>     */<a name="line.1313"></a>
<span class="sourceLineNo">1314</span>    void fatal(Marker marker, String message, Throwable t);<a name="line.1314"></a>
<span class="sourceLineNo">1315</span><a name="line.1315"></a>
<span class="sourceLineNo">1316</span>    /**<a name="line.1316"></a>
<span class="sourceLineNo">1317</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level with<a name="line.1317"></a>
<span class="sourceLineNo">1318</span>     * the specified Marker.<a name="line.1318"></a>
<span class="sourceLineNo">1319</span>     *<a name="line.1319"></a>
<span class="sourceLineNo">1320</span>     * @param marker the marker data specific to this log statement<a name="line.1320"></a>
<span class="sourceLineNo">1321</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1321"></a>
<span class="sourceLineNo">1322</span>     *            message factory.<a name="line.1322"></a>
<span class="sourceLineNo">1323</span>     * @since 2.4<a name="line.1323"></a>
<span class="sourceLineNo">1324</span>     */<a name="line.1324"></a>
<span class="sourceLineNo">1325</span>    void fatal(Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.1325"></a>
<span class="sourceLineNo">1326</span><a name="line.1326"></a>
<span class="sourceLineNo">1327</span>    /**<a name="line.1327"></a>
<span class="sourceLineNo">1328</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) with the<a name="line.1328"></a>
<span class="sourceLineNo">1329</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1329"></a>
<span class="sourceLineNo">1330</span>     *<a name="line.1330"></a>
<span class="sourceLineNo">1331</span>     * @param marker the marker data specific to this log statement<a name="line.1331"></a>
<span class="sourceLineNo">1332</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1332"></a>
<span class="sourceLineNo">1333</span>     *            message factory.<a name="line.1333"></a>
<span class="sourceLineNo">1334</span>     * @param t A Throwable or null.<a name="line.1334"></a>
<span class="sourceLineNo">1335</span>     * @since 2.4<a name="line.1335"></a>
<span class="sourceLineNo">1336</span>     */<a name="line.1336"></a>
<span class="sourceLineNo">1337</span>    void fatal(Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.1337"></a>
<span class="sourceLineNo">1338</span><a name="line.1338"></a>
<span class="sourceLineNo">1339</span>    /**<a name="line.1339"></a>
<span class="sourceLineNo">1340</span>     * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.<a name="line.1340"></a>
<span class="sourceLineNo">1341</span>     *<a name="line.1341"></a>
<span class="sourceLineNo">1342</span>     * @param msg the message string to be logged<a name="line.1342"></a>
<span class="sourceLineNo">1343</span>     */<a name="line.1343"></a>
<span class="sourceLineNo">1344</span>    void fatal(Message msg);<a name="line.1344"></a>
<span class="sourceLineNo">1345</span><a name="line.1345"></a>
<span class="sourceLineNo">1346</span>    /**<a name="line.1346"></a>
<span class="sourceLineNo">1347</span>     * Logs a message with the specific Marker at the {@link Level#FATAL FATAL} level.<a name="line.1347"></a>
<span class="sourceLineNo">1348</span>     *<a name="line.1348"></a>
<span class="sourceLineNo">1349</span>     * @param msg the message string to be logged<a name="line.1349"></a>
<span class="sourceLineNo">1350</span>     * @param t A Throwable or null.<a name="line.1350"></a>
<span class="sourceLineNo">1351</span>     */<a name="line.1351"></a>
<span class="sourceLineNo">1352</span>    void fatal(Message msg, Throwable t);<a name="line.1352"></a>
<span class="sourceLineNo">1353</span><a name="line.1353"></a>
<span class="sourceLineNo">1354</span>    /**<a name="line.1354"></a>
<span class="sourceLineNo">1355</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level. The<a name="line.1355"></a>
<span class="sourceLineNo">1356</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.1356"></a>
<span class="sourceLineNo">1357</span>     *<a name="line.1357"></a>
<span class="sourceLineNo">1358</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1358"></a>
<span class="sourceLineNo">1359</span>     * @since 2.4<a name="line.1359"></a>
<span class="sourceLineNo">1360</span>     */<a name="line.1360"></a>
<span class="sourceLineNo">1361</span>    void fatal(MessageSupplier msgSupplier);<a name="line.1361"></a>
<span class="sourceLineNo">1362</span><a name="line.1362"></a>
<span class="sourceLineNo">1363</span>    /**<a name="line.1363"></a>
<span class="sourceLineNo">1364</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) including the<a name="line.1364"></a>
<span class="sourceLineNo">1365</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may<a name="line.1365"></a>
<span class="sourceLineNo">1366</span>     * not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.1366"></a>
<span class="sourceLineNo">1367</span>     *<a name="line.1367"></a>
<span class="sourceLineNo">1368</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1368"></a>
<span class="sourceLineNo">1369</span>     * @param t the exception to log, including its stack trace.<a name="line.1369"></a>
<span class="sourceLineNo">1370</span>     * @since 2.4<a name="line.1370"></a>
<span class="sourceLineNo">1371</span>     */<a name="line.1371"></a>
<span class="sourceLineNo">1372</span>    void fatal(MessageSupplier msgSupplier, Throwable t);<a name="line.1372"></a>
<span class="sourceLineNo">1373</span><a name="line.1373"></a>
<span class="sourceLineNo">1374</span>    /**<a name="line.1374"></a>
<span class="sourceLineNo">1375</span>     * Logs a message CharSequence with the {@link Level#FATAL FATAL} level.<a name="line.1375"></a>
<span class="sourceLineNo">1376</span>     *<a name="line.1376"></a>
<span class="sourceLineNo">1377</span>     * @param message the message CharSequence to log.<a name="line.1377"></a>
<span class="sourceLineNo">1378</span>     */<a name="line.1378"></a>
<span class="sourceLineNo">1379</span>    void fatal(CharSequence message);<a name="line.1379"></a>
<span class="sourceLineNo">1380</span><a name="line.1380"></a>
<span class="sourceLineNo">1381</span>    /**<a name="line.1381"></a>
<span class="sourceLineNo">1382</span>     * Logs a CharSequence at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}<a name="line.1382"></a>
<span class="sourceLineNo">1383</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1383"></a>
<span class="sourceLineNo">1384</span>     *<a name="line.1384"></a>
<span class="sourceLineNo">1385</span>     * @param message the message CharSequence to log.<a name="line.1385"></a>
<span class="sourceLineNo">1386</span>     * @param t the exception to log, including its stack trace.<a name="line.1386"></a>
<span class="sourceLineNo">1387</span>     */<a name="line.1387"></a>
<span class="sourceLineNo">1388</span>    void fatal(CharSequence message, Throwable t);<a name="line.1388"></a>
<span class="sourceLineNo">1389</span><a name="line.1389"></a>
<span class="sourceLineNo">1390</span>    /**<a name="line.1390"></a>
<span class="sourceLineNo">1391</span>     * Logs a message object with the {@link Level#FATAL FATAL} level.<a name="line.1391"></a>
<span class="sourceLineNo">1392</span>     *<a name="line.1392"></a>
<span class="sourceLineNo">1393</span>     * @param message the message object to log.<a name="line.1393"></a>
<span class="sourceLineNo">1394</span>     */<a name="line.1394"></a>
<span class="sourceLineNo">1395</span>    void fatal(Object message);<a name="line.1395"></a>
<span class="sourceLineNo">1396</span><a name="line.1396"></a>
<span class="sourceLineNo">1397</span>    /**<a name="line.1397"></a>
<span class="sourceLineNo">1398</span>     * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}<a name="line.1398"></a>
<span class="sourceLineNo">1399</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1399"></a>
<span class="sourceLineNo">1400</span>     *<a name="line.1400"></a>
<span class="sourceLineNo">1401</span>     * @param message the message object to log.<a name="line.1401"></a>
<span class="sourceLineNo">1402</span>     * @param t the exception to log, including its stack trace.<a name="line.1402"></a>
<span class="sourceLineNo">1403</span>     */<a name="line.1403"></a>
<span class="sourceLineNo">1404</span>    void fatal(Object message, Throwable t);<a name="line.1404"></a>
<span class="sourceLineNo">1405</span><a name="line.1405"></a>
<span class="sourceLineNo">1406</span>    /**<a name="line.1406"></a>
<span class="sourceLineNo">1407</span>     * Logs a message object with the {@link Level#FATAL FATAL} level.<a name="line.1407"></a>
<span class="sourceLineNo">1408</span>     *<a name="line.1408"></a>
<span class="sourceLineNo">1409</span>     * @param message the message string to log.<a name="line.1409"></a>
<span class="sourceLineNo">1410</span>     */<a name="line.1410"></a>
<span class="sourceLineNo">1411</span>    void fatal(String message);<a name="line.1411"></a>
<span class="sourceLineNo">1412</span><a name="line.1412"></a>
<span class="sourceLineNo">1413</span>    /**<a name="line.1413"></a>
<span class="sourceLineNo">1414</span>     * Logs a message with parameters at the {@link Level#FATAL FATAL} level.<a name="line.1414"></a>
<span class="sourceLineNo">1415</span>     *<a name="line.1415"></a>
<span class="sourceLineNo">1416</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1416"></a>
<span class="sourceLineNo">1417</span>     * @param params parameters to the message.<a name="line.1417"></a>
<span class="sourceLineNo">1418</span>     * @see #getMessageFactory()<a name="line.1418"></a>
<span class="sourceLineNo">1419</span>     */<a name="line.1419"></a>
<span class="sourceLineNo">1420</span>    void fatal(String message, Object... params);<a name="line.1420"></a>
<span class="sourceLineNo">1421</span><a name="line.1421"></a>
<span class="sourceLineNo">1422</span>    /**<a name="line.1422"></a>
<span class="sourceLineNo">1423</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#FATAL<a name="line.1423"></a>
<span class="sourceLineNo">1424</span>     * FATAL} level.<a name="line.1424"></a>
<span class="sourceLineNo">1425</span>     *<a name="line.1425"></a>
<span class="sourceLineNo">1426</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1426"></a>
<span class="sourceLineNo">1427</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.1427"></a>
<span class="sourceLineNo">1428</span>     * @since 2.4<a name="line.1428"></a>
<span class="sourceLineNo">1429</span>     */<a name="line.1429"></a>
<span class="sourceLineNo">1430</span>    void fatal(String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.1430"></a>
<span class="sourceLineNo">1431</span><a name="line.1431"></a>
<span class="sourceLineNo">1432</span>    /**<a name="line.1432"></a>
<span class="sourceLineNo">1433</span>     * Logs a message at the {@link Level#FATAL FATAL} level including the stack trace of the {@link Throwable}<a name="line.1433"></a>
<span class="sourceLineNo">1434</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1434"></a>
<span class="sourceLineNo">1435</span>     *<a name="line.1435"></a>
<span class="sourceLineNo">1436</span>     * @param message the message object to log.<a name="line.1436"></a>
<span class="sourceLineNo">1437</span>     * @param t the exception to log, including its stack trace.<a name="line.1437"></a>
<span class="sourceLineNo">1438</span>     */<a name="line.1438"></a>
<span class="sourceLineNo">1439</span>    void fatal(String message, Throwable t);<a name="line.1439"></a>
<span class="sourceLineNo">1440</span><a name="line.1440"></a>
<span class="sourceLineNo">1441</span>    /**<a name="line.1441"></a>
<span class="sourceLineNo">1442</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#FATAL FATAL} level.<a name="line.1442"></a>
<span class="sourceLineNo">1443</span>     *<a name="line.1443"></a>
<span class="sourceLineNo">1444</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1444"></a>
<span class="sourceLineNo">1445</span>     *            message factory.<a name="line.1445"></a>
<span class="sourceLineNo">1446</span>     * @since 2.4<a name="line.1446"></a>
<span class="sourceLineNo">1447</span>     */<a name="line.1447"></a>
<span class="sourceLineNo">1448</span>    void fatal(Supplier&lt;?&gt; msgSupplier);<a name="line.1448"></a>
<span class="sourceLineNo">1449</span><a name="line.1449"></a>
<span class="sourceLineNo">1450</span>    /**<a name="line.1450"></a>
<span class="sourceLineNo">1451</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#FATAL FATAL} level) including the<a name="line.1451"></a>
<span class="sourceLineNo">1452</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1452"></a>
<span class="sourceLineNo">1453</span>     *<a name="line.1453"></a>
<span class="sourceLineNo">1454</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1454"></a>
<span class="sourceLineNo">1455</span>     *            message factory.<a name="line.1455"></a>
<span class="sourceLineNo">1456</span>     * @param t the exception to log, including its stack trace.<a name="line.1456"></a>
<span class="sourceLineNo">1457</span>     * @since 2.4<a name="line.1457"></a>
<span class="sourceLineNo">1458</span>     */<a name="line.1458"></a>
<span class="sourceLineNo">1459</span>    void fatal(Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.1459"></a>
<span class="sourceLineNo">1460</span><a name="line.1460"></a>
<span class="sourceLineNo">1461</span>    /**<a name="line.1461"></a>
<span class="sourceLineNo">1462</span>     * Logs a message with parameters at fatal level.<a name="line.1462"></a>
<span class="sourceLineNo">1463</span>     *<a name="line.1463"></a>
<span class="sourceLineNo">1464</span>     * @param marker the marker data specific to this log statement<a name="line.1464"></a>
<span class="sourceLineNo">1465</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1465"></a>
<span class="sourceLineNo">1466</span>     * @param p0 parameter to the message.<a name="line.1466"></a>
<span class="sourceLineNo">1467</span>     */<a name="line.1467"></a>
<span class="sourceLineNo">1468</span>    void fatal(Marker marker, String message, Object p0);<a name="line.1468"></a>
<span class="sourceLineNo">1469</span><a name="line.1469"></a>
<span class="sourceLineNo">1470</span>    /**<a name="line.1470"></a>
<span class="sourceLineNo">1471</span>     * Logs a message with parameters at fatal level.<a name="line.1471"></a>
<span class="sourceLineNo">1472</span>     *<a name="line.1472"></a>
<span class="sourceLineNo">1473</span>     * @param marker the marker data specific to this log statement<a name="line.1473"></a>
<span class="sourceLineNo">1474</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1474"></a>
<span class="sourceLineNo">1475</span>     * @param p0 parameter to the message.<a name="line.1475"></a>
<span class="sourceLineNo">1476</span>     * @param p1 parameter to the message.<a name="line.1476"></a>
<span class="sourceLineNo">1477</span>     */<a name="line.1477"></a>
<span class="sourceLineNo">1478</span>    void fatal(Marker marker, String message, Object p0, Object p1);<a name="line.1478"></a>
<span class="sourceLineNo">1479</span><a name="line.1479"></a>
<span class="sourceLineNo">1480</span>    /**<a name="line.1480"></a>
<span class="sourceLineNo">1481</span>     * Logs a message with parameters at fatal level.<a name="line.1481"></a>
<span class="sourceLineNo">1482</span>     *<a name="line.1482"></a>
<span class="sourceLineNo">1483</span>     * @param marker the marker data specific to this log statement<a name="line.1483"></a>
<span class="sourceLineNo">1484</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1484"></a>
<span class="sourceLineNo">1485</span>     * @param p0 parameter to the message.<a name="line.1485"></a>
<span class="sourceLineNo">1486</span>     * @param p1 parameter to the message.<a name="line.1486"></a>
<span class="sourceLineNo">1487</span>     * @param p2 parameter to the message.<a name="line.1487"></a>
<span class="sourceLineNo">1488</span>     */<a name="line.1488"></a>
<span class="sourceLineNo">1489</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.1489"></a>
<span class="sourceLineNo">1490</span><a name="line.1490"></a>
<span class="sourceLineNo">1491</span>    /**<a name="line.1491"></a>
<span class="sourceLineNo">1492</span>     * Logs a message with parameters at fatal level.<a name="line.1492"></a>
<span class="sourceLineNo">1493</span>     *<a name="line.1493"></a>
<span class="sourceLineNo">1494</span>     * @param marker the marker data specific to this log statement<a name="line.1494"></a>
<span class="sourceLineNo">1495</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1495"></a>
<span class="sourceLineNo">1496</span>     * @param p0 parameter to the message.<a name="line.1496"></a>
<span class="sourceLineNo">1497</span>     * @param p1 parameter to the message.<a name="line.1497"></a>
<span class="sourceLineNo">1498</span>     * @param p2 parameter to the message.<a name="line.1498"></a>
<span class="sourceLineNo">1499</span>     * @param p3 parameter to the message.<a name="line.1499"></a>
<span class="sourceLineNo">1500</span>     */<a name="line.1500"></a>
<span class="sourceLineNo">1501</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.1501"></a>
<span class="sourceLineNo">1502</span><a name="line.1502"></a>
<span class="sourceLineNo">1503</span>    /**<a name="line.1503"></a>
<span class="sourceLineNo">1504</span>     * Logs a message with parameters at fatal level.<a name="line.1504"></a>
<span class="sourceLineNo">1505</span>     *<a name="line.1505"></a>
<span class="sourceLineNo">1506</span>     * @param marker the marker data specific to this log statement<a name="line.1506"></a>
<span class="sourceLineNo">1507</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1507"></a>
<span class="sourceLineNo">1508</span>     * @param p0 parameter to the message.<a name="line.1508"></a>
<span class="sourceLineNo">1509</span>     * @param p1 parameter to the message.<a name="line.1509"></a>
<span class="sourceLineNo">1510</span>     * @param p2 parameter to the message.<a name="line.1510"></a>
<span class="sourceLineNo">1511</span>     * @param p3 parameter to the message.<a name="line.1511"></a>
<span class="sourceLineNo">1512</span>     * @param p4 parameter to the message.<a name="line.1512"></a>
<span class="sourceLineNo">1513</span>     */<a name="line.1513"></a>
<span class="sourceLineNo">1514</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.1514"></a>
<span class="sourceLineNo">1515</span><a name="line.1515"></a>
<span class="sourceLineNo">1516</span>    /**<a name="line.1516"></a>
<span class="sourceLineNo">1517</span>     * Logs a message with parameters at fatal level.<a name="line.1517"></a>
<span class="sourceLineNo">1518</span>     *<a name="line.1518"></a>
<span class="sourceLineNo">1519</span>     * @param marker the marker data specific to this log statement<a name="line.1519"></a>
<span class="sourceLineNo">1520</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1520"></a>
<span class="sourceLineNo">1521</span>     * @param p0 parameter to the message.<a name="line.1521"></a>
<span class="sourceLineNo">1522</span>     * @param p1 parameter to the message.<a name="line.1522"></a>
<span class="sourceLineNo">1523</span>     * @param p2 parameter to the message.<a name="line.1523"></a>
<span class="sourceLineNo">1524</span>     * @param p3 parameter to the message.<a name="line.1524"></a>
<span class="sourceLineNo">1525</span>     * @param p4 parameter to the message.<a name="line.1525"></a>
<span class="sourceLineNo">1526</span>     * @param p5 parameter to the message.<a name="line.1526"></a>
<span class="sourceLineNo">1527</span>     */<a name="line.1527"></a>
<span class="sourceLineNo">1528</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.1528"></a>
<span class="sourceLineNo">1529</span><a name="line.1529"></a>
<span class="sourceLineNo">1530</span>    /**<a name="line.1530"></a>
<span class="sourceLineNo">1531</span>     * Logs a message with parameters at fatal level.<a name="line.1531"></a>
<span class="sourceLineNo">1532</span>     *<a name="line.1532"></a>
<span class="sourceLineNo">1533</span>     * @param marker the marker data specific to this log statement<a name="line.1533"></a>
<span class="sourceLineNo">1534</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1534"></a>
<span class="sourceLineNo">1535</span>     * @param p0 parameter to the message.<a name="line.1535"></a>
<span class="sourceLineNo">1536</span>     * @param p1 parameter to the message.<a name="line.1536"></a>
<span class="sourceLineNo">1537</span>     * @param p2 parameter to the message.<a name="line.1537"></a>
<span class="sourceLineNo">1538</span>     * @param p3 parameter to the message.<a name="line.1538"></a>
<span class="sourceLineNo">1539</span>     * @param p4 parameter to the message.<a name="line.1539"></a>
<span class="sourceLineNo">1540</span>     * @param p5 parameter to the message.<a name="line.1540"></a>
<span class="sourceLineNo">1541</span>     * @param p6 parameter to the message.<a name="line.1541"></a>
<span class="sourceLineNo">1542</span>     */<a name="line.1542"></a>
<span class="sourceLineNo">1543</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.1543"></a>
<span class="sourceLineNo">1544</span>            Object p6);<a name="line.1544"></a>
<span class="sourceLineNo">1545</span><a name="line.1545"></a>
<span class="sourceLineNo">1546</span>    /**<a name="line.1546"></a>
<span class="sourceLineNo">1547</span>     * Logs a message with parameters at fatal level.<a name="line.1547"></a>
<span class="sourceLineNo">1548</span>     *<a name="line.1548"></a>
<span class="sourceLineNo">1549</span>     * @param marker the marker data specific to this log statement<a name="line.1549"></a>
<span class="sourceLineNo">1550</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1550"></a>
<span class="sourceLineNo">1551</span>     * @param p0 parameter to the message.<a name="line.1551"></a>
<span class="sourceLineNo">1552</span>     * @param p1 parameter to the message.<a name="line.1552"></a>
<span class="sourceLineNo">1553</span>     * @param p2 parameter to the message.<a name="line.1553"></a>
<span class="sourceLineNo">1554</span>     * @param p3 parameter to the message.<a name="line.1554"></a>
<span class="sourceLineNo">1555</span>     * @param p4 parameter to the message.<a name="line.1555"></a>
<span class="sourceLineNo">1556</span>     * @param p5 parameter to the message.<a name="line.1556"></a>
<span class="sourceLineNo">1557</span>     * @param p6 parameter to the message.<a name="line.1557"></a>
<span class="sourceLineNo">1558</span>     * @param p7 parameter to the message.<a name="line.1558"></a>
<span class="sourceLineNo">1559</span>     */<a name="line.1559"></a>
<span class="sourceLineNo">1560</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.1560"></a>
<span class="sourceLineNo">1561</span>            Object p7);<a name="line.1561"></a>
<span class="sourceLineNo">1562</span><a name="line.1562"></a>
<span class="sourceLineNo">1563</span>    /**<a name="line.1563"></a>
<span class="sourceLineNo">1564</span>     * Logs a message with parameters at fatal level.<a name="line.1564"></a>
<span class="sourceLineNo">1565</span>     *<a name="line.1565"></a>
<span class="sourceLineNo">1566</span>     * @param marker the marker data specific to this log statement<a name="line.1566"></a>
<span class="sourceLineNo">1567</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1567"></a>
<span class="sourceLineNo">1568</span>     * @param p0 parameter to the message.<a name="line.1568"></a>
<span class="sourceLineNo">1569</span>     * @param p1 parameter to the message.<a name="line.1569"></a>
<span class="sourceLineNo">1570</span>     * @param p2 parameter to the message.<a name="line.1570"></a>
<span class="sourceLineNo">1571</span>     * @param p3 parameter to the message.<a name="line.1571"></a>
<span class="sourceLineNo">1572</span>     * @param p4 parameter to the message.<a name="line.1572"></a>
<span class="sourceLineNo">1573</span>     * @param p5 parameter to the message.<a name="line.1573"></a>
<span class="sourceLineNo">1574</span>     * @param p6 parameter to the message.<a name="line.1574"></a>
<span class="sourceLineNo">1575</span>     * @param p7 parameter to the message.<a name="line.1575"></a>
<span class="sourceLineNo">1576</span>     * @param p8 parameter to the message.<a name="line.1576"></a>
<span class="sourceLineNo">1577</span>     */<a name="line.1577"></a>
<span class="sourceLineNo">1578</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.1578"></a>
<span class="sourceLineNo">1579</span>            Object p7, Object p8);<a name="line.1579"></a>
<span class="sourceLineNo">1580</span><a name="line.1580"></a>
<span class="sourceLineNo">1581</span>    /**<a name="line.1581"></a>
<span class="sourceLineNo">1582</span>     * Logs a message with parameters at fatal level.<a name="line.1582"></a>
<span class="sourceLineNo">1583</span>     *<a name="line.1583"></a>
<span class="sourceLineNo">1584</span>     * @param marker the marker data specific to this log statement<a name="line.1584"></a>
<span class="sourceLineNo">1585</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1585"></a>
<span class="sourceLineNo">1586</span>     * @param p0 parameter to the message.<a name="line.1586"></a>
<span class="sourceLineNo">1587</span>     * @param p1 parameter to the message.<a name="line.1587"></a>
<span class="sourceLineNo">1588</span>     * @param p2 parameter to the message.<a name="line.1588"></a>
<span class="sourceLineNo">1589</span>     * @param p3 parameter to the message.<a name="line.1589"></a>
<span class="sourceLineNo">1590</span>     * @param p4 parameter to the message.<a name="line.1590"></a>
<span class="sourceLineNo">1591</span>     * @param p5 parameter to the message.<a name="line.1591"></a>
<span class="sourceLineNo">1592</span>     * @param p6 parameter to the message.<a name="line.1592"></a>
<span class="sourceLineNo">1593</span>     * @param p7 parameter to the message.<a name="line.1593"></a>
<span class="sourceLineNo">1594</span>     * @param p8 parameter to the message.<a name="line.1594"></a>
<span class="sourceLineNo">1595</span>     * @param p9 parameter to the message.<a name="line.1595"></a>
<span class="sourceLineNo">1596</span>     */<a name="line.1596"></a>
<span class="sourceLineNo">1597</span>    void fatal(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.1597"></a>
<span class="sourceLineNo">1598</span>            Object p7, Object p8, Object p9);<a name="line.1598"></a>
<span class="sourceLineNo">1599</span><a name="line.1599"></a>
<span class="sourceLineNo">1600</span>    /**<a name="line.1600"></a>
<span class="sourceLineNo">1601</span>     * Logs a message with parameters at fatal level.<a name="line.1601"></a>
<span class="sourceLineNo">1602</span>     *<a name="line.1602"></a>
<span class="sourceLineNo">1603</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1603"></a>
<span class="sourceLineNo">1604</span>     * @param p0 parameter to the message.<a name="line.1604"></a>
<span class="sourceLineNo">1605</span>     */<a name="line.1605"></a>
<span class="sourceLineNo">1606</span>    void fatal(String message, Object p0);<a name="line.1606"></a>
<span class="sourceLineNo">1607</span><a name="line.1607"></a>
<span class="sourceLineNo">1608</span>    /**<a name="line.1608"></a>
<span class="sourceLineNo">1609</span>     * Logs a message with parameters at fatal level.<a name="line.1609"></a>
<span class="sourceLineNo">1610</span>     *<a name="line.1610"></a>
<span class="sourceLineNo">1611</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1611"></a>
<span class="sourceLineNo">1612</span>     * @param p0 parameter to the message.<a name="line.1612"></a>
<span class="sourceLineNo">1613</span>     * @param p1 parameter to the message.<a name="line.1613"></a>
<span class="sourceLineNo">1614</span>     */<a name="line.1614"></a>
<span class="sourceLineNo">1615</span>    void fatal(String message, Object p0, Object p1);<a name="line.1615"></a>
<span class="sourceLineNo">1616</span><a name="line.1616"></a>
<span class="sourceLineNo">1617</span>    /**<a name="line.1617"></a>
<span class="sourceLineNo">1618</span>     * Logs a message with parameters at fatal level.<a name="line.1618"></a>
<span class="sourceLineNo">1619</span>     *<a name="line.1619"></a>
<span class="sourceLineNo">1620</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1620"></a>
<span class="sourceLineNo">1621</span>     * @param p0 parameter to the message.<a name="line.1621"></a>
<span class="sourceLineNo">1622</span>     * @param p1 parameter to the message.<a name="line.1622"></a>
<span class="sourceLineNo">1623</span>     * @param p2 parameter to the message.<a name="line.1623"></a>
<span class="sourceLineNo">1624</span>     */<a name="line.1624"></a>
<span class="sourceLineNo">1625</span>    void fatal(String message, Object p0, Object p1, Object p2);<a name="line.1625"></a>
<span class="sourceLineNo">1626</span><a name="line.1626"></a>
<span class="sourceLineNo">1627</span>    /**<a name="line.1627"></a>
<span class="sourceLineNo">1628</span>     * Logs a message with parameters at fatal level.<a name="line.1628"></a>
<span class="sourceLineNo">1629</span>     *<a name="line.1629"></a>
<span class="sourceLineNo">1630</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1630"></a>
<span class="sourceLineNo">1631</span>     * @param p0 parameter to the message.<a name="line.1631"></a>
<span class="sourceLineNo">1632</span>     * @param p1 parameter to the message.<a name="line.1632"></a>
<span class="sourceLineNo">1633</span>     * @param p2 parameter to the message.<a name="line.1633"></a>
<span class="sourceLineNo">1634</span>     * @param p3 parameter to the message.<a name="line.1634"></a>
<span class="sourceLineNo">1635</span>     */<a name="line.1635"></a>
<span class="sourceLineNo">1636</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3);<a name="line.1636"></a>
<span class="sourceLineNo">1637</span><a name="line.1637"></a>
<span class="sourceLineNo">1638</span>    /**<a name="line.1638"></a>
<span class="sourceLineNo">1639</span>     * Logs a message with parameters at fatal level.<a name="line.1639"></a>
<span class="sourceLineNo">1640</span>     *<a name="line.1640"></a>
<span class="sourceLineNo">1641</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1641"></a>
<span class="sourceLineNo">1642</span>     * @param p0 parameter to the message.<a name="line.1642"></a>
<span class="sourceLineNo">1643</span>     * @param p1 parameter to the message.<a name="line.1643"></a>
<span class="sourceLineNo">1644</span>     * @param p2 parameter to the message.<a name="line.1644"></a>
<span class="sourceLineNo">1645</span>     * @param p3 parameter to the message.<a name="line.1645"></a>
<span class="sourceLineNo">1646</span>     * @param p4 parameter to the message.<a name="line.1646"></a>
<span class="sourceLineNo">1647</span>     */<a name="line.1647"></a>
<span class="sourceLineNo">1648</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.1648"></a>
<span class="sourceLineNo">1649</span><a name="line.1649"></a>
<span class="sourceLineNo">1650</span>    /**<a name="line.1650"></a>
<span class="sourceLineNo">1651</span>     * Logs a message with parameters at fatal level.<a name="line.1651"></a>
<span class="sourceLineNo">1652</span>     *<a name="line.1652"></a>
<span class="sourceLineNo">1653</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1653"></a>
<span class="sourceLineNo">1654</span>     * @param p0 parameter to the message.<a name="line.1654"></a>
<span class="sourceLineNo">1655</span>     * @param p1 parameter to the message.<a name="line.1655"></a>
<span class="sourceLineNo">1656</span>     * @param p2 parameter to the message.<a name="line.1656"></a>
<span class="sourceLineNo">1657</span>     * @param p3 parameter to the message.<a name="line.1657"></a>
<span class="sourceLineNo">1658</span>     * @param p4 parameter to the message.<a name="line.1658"></a>
<span class="sourceLineNo">1659</span>     * @param p5 parameter to the message.<a name="line.1659"></a>
<span class="sourceLineNo">1660</span>     */<a name="line.1660"></a>
<span class="sourceLineNo">1661</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.1661"></a>
<span class="sourceLineNo">1662</span><a name="line.1662"></a>
<span class="sourceLineNo">1663</span>    /**<a name="line.1663"></a>
<span class="sourceLineNo">1664</span>     * Logs a message with parameters at fatal level.<a name="line.1664"></a>
<span class="sourceLineNo">1665</span>     *<a name="line.1665"></a>
<span class="sourceLineNo">1666</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1666"></a>
<span class="sourceLineNo">1667</span>     * @param p0 parameter to the message.<a name="line.1667"></a>
<span class="sourceLineNo">1668</span>     * @param p1 parameter to the message.<a name="line.1668"></a>
<span class="sourceLineNo">1669</span>     * @param p2 parameter to the message.<a name="line.1669"></a>
<span class="sourceLineNo">1670</span>     * @param p3 parameter to the message.<a name="line.1670"></a>
<span class="sourceLineNo">1671</span>     * @param p4 parameter to the message.<a name="line.1671"></a>
<span class="sourceLineNo">1672</span>     * @param p5 parameter to the message.<a name="line.1672"></a>
<span class="sourceLineNo">1673</span>     * @param p6 parameter to the message.<a name="line.1673"></a>
<span class="sourceLineNo">1674</span>     */<a name="line.1674"></a>
<span class="sourceLineNo">1675</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.1675"></a>
<span class="sourceLineNo">1676</span><a name="line.1676"></a>
<span class="sourceLineNo">1677</span>    /**<a name="line.1677"></a>
<span class="sourceLineNo">1678</span>     * Logs a message with parameters at fatal level.<a name="line.1678"></a>
<span class="sourceLineNo">1679</span>     *<a name="line.1679"></a>
<span class="sourceLineNo">1680</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1680"></a>
<span class="sourceLineNo">1681</span>     * @param p0 parameter to the message.<a name="line.1681"></a>
<span class="sourceLineNo">1682</span>     * @param p1 parameter to the message.<a name="line.1682"></a>
<span class="sourceLineNo">1683</span>     * @param p2 parameter to the message.<a name="line.1683"></a>
<span class="sourceLineNo">1684</span>     * @param p3 parameter to the message.<a name="line.1684"></a>
<span class="sourceLineNo">1685</span>     * @param p4 parameter to the message.<a name="line.1685"></a>
<span class="sourceLineNo">1686</span>     * @param p5 parameter to the message.<a name="line.1686"></a>
<span class="sourceLineNo">1687</span>     * @param p6 parameter to the message.<a name="line.1687"></a>
<span class="sourceLineNo">1688</span>     * @param p7 parameter to the message.<a name="line.1688"></a>
<span class="sourceLineNo">1689</span>     */<a name="line.1689"></a>
<span class="sourceLineNo">1690</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.1690"></a>
<span class="sourceLineNo">1691</span><a name="line.1691"></a>
<span class="sourceLineNo">1692</span>    /**<a name="line.1692"></a>
<span class="sourceLineNo">1693</span>     * Logs a message with parameters at fatal level.<a name="line.1693"></a>
<span class="sourceLineNo">1694</span>     *<a name="line.1694"></a>
<span class="sourceLineNo">1695</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1695"></a>
<span class="sourceLineNo">1696</span>     * @param p0 parameter to the message.<a name="line.1696"></a>
<span class="sourceLineNo">1697</span>     * @param p1 parameter to the message.<a name="line.1697"></a>
<span class="sourceLineNo">1698</span>     * @param p2 parameter to the message.<a name="line.1698"></a>
<span class="sourceLineNo">1699</span>     * @param p3 parameter to the message.<a name="line.1699"></a>
<span class="sourceLineNo">1700</span>     * @param p4 parameter to the message.<a name="line.1700"></a>
<span class="sourceLineNo">1701</span>     * @param p5 parameter to the message.<a name="line.1701"></a>
<span class="sourceLineNo">1702</span>     * @param p6 parameter to the message.<a name="line.1702"></a>
<span class="sourceLineNo">1703</span>     * @param p7 parameter to the message.<a name="line.1703"></a>
<span class="sourceLineNo">1704</span>     * @param p8 parameter to the message.<a name="line.1704"></a>
<span class="sourceLineNo">1705</span>     */<a name="line.1705"></a>
<span class="sourceLineNo">1706</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.1706"></a>
<span class="sourceLineNo">1707</span>            Object p8);<a name="line.1707"></a>
<span class="sourceLineNo">1708</span><a name="line.1708"></a>
<span class="sourceLineNo">1709</span>    /**<a name="line.1709"></a>
<span class="sourceLineNo">1710</span>     * Logs a message with parameters at fatal level.<a name="line.1710"></a>
<span class="sourceLineNo">1711</span>     *<a name="line.1711"></a>
<span class="sourceLineNo">1712</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1712"></a>
<span class="sourceLineNo">1713</span>     * @param p0 parameter to the message.<a name="line.1713"></a>
<span class="sourceLineNo">1714</span>     * @param p1 parameter to the message.<a name="line.1714"></a>
<span class="sourceLineNo">1715</span>     * @param p2 parameter to the message.<a name="line.1715"></a>
<span class="sourceLineNo">1716</span>     * @param p3 parameter to the message.<a name="line.1716"></a>
<span class="sourceLineNo">1717</span>     * @param p4 parameter to the message.<a name="line.1717"></a>
<span class="sourceLineNo">1718</span>     * @param p5 parameter to the message.<a name="line.1718"></a>
<span class="sourceLineNo">1719</span>     * @param p6 parameter to the message.<a name="line.1719"></a>
<span class="sourceLineNo">1720</span>     * @param p7 parameter to the message.<a name="line.1720"></a>
<span class="sourceLineNo">1721</span>     * @param p8 parameter to the message.<a name="line.1721"></a>
<span class="sourceLineNo">1722</span>     * @param p9 parameter to the message.<a name="line.1722"></a>
<span class="sourceLineNo">1723</span>     */<a name="line.1723"></a>
<span class="sourceLineNo">1724</span>    void fatal(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.1724"></a>
<span class="sourceLineNo">1725</span>            Object p8, Object p9);<a name="line.1725"></a>
<span class="sourceLineNo">1726</span><a name="line.1726"></a>
<span class="sourceLineNo">1727</span>    /**<a name="line.1727"></a>
<span class="sourceLineNo">1728</span>     * Gets the Level associated with the Logger.<a name="line.1728"></a>
<span class="sourceLineNo">1729</span>     *<a name="line.1729"></a>
<span class="sourceLineNo">1730</span>     * @return the Level associate with the Logger.<a name="line.1730"></a>
<span class="sourceLineNo">1731</span>     */<a name="line.1731"></a>
<span class="sourceLineNo">1732</span>    Level getLevel();<a name="line.1732"></a>
<span class="sourceLineNo">1733</span><a name="line.1733"></a>
<span class="sourceLineNo">1734</span>    /**<a name="line.1734"></a>
<span class="sourceLineNo">1735</span>     * Gets the message factory used to convert message Objects and Strings/CharSequences into actual log Messages.<a name="line.1735"></a>
<span class="sourceLineNo">1736</span>     *<a name="line.1736"></a>
<span class="sourceLineNo">1737</span>     * Since version 2.6, Log4j internally uses message factories that implement the {@link MessageFactory2} interface.<a name="line.1737"></a>
<span class="sourceLineNo">1738</span>     * From version 2.6.2, the return type of this method was changed from {@link MessageFactory} to<a name="line.1738"></a>
<span class="sourceLineNo">1739</span>     * {@code &lt;MF extends MessageFactory&gt; MF}. The returned factory will always implement {@link MessageFactory2},<a name="line.1739"></a>
<span class="sourceLineNo">1740</span>     * but the return type of this method could not be changed to {@link MessageFactory2} without breaking binary<a name="line.1740"></a>
<span class="sourceLineNo">1741</span>     * compatibility.<a name="line.1741"></a>
<span class="sourceLineNo">1742</span>     *<a name="line.1742"></a>
<span class="sourceLineNo">1743</span>     * @return the message factory, as an instance of {@link MessageFactory2}<a name="line.1743"></a>
<span class="sourceLineNo">1744</span>     */<a name="line.1744"></a>
<span class="sourceLineNo">1745</span>    &lt;MF extends MessageFactory&gt; MF getMessageFactory();<a name="line.1745"></a>
<span class="sourceLineNo">1746</span><a name="line.1746"></a>
<span class="sourceLineNo">1747</span>    /**<a name="line.1747"></a>
<span class="sourceLineNo">1748</span>     * Gets the logger name.<a name="line.1748"></a>
<span class="sourceLineNo">1749</span>     *<a name="line.1749"></a>
<span class="sourceLineNo">1750</span>     * @return the logger name.<a name="line.1750"></a>
<span class="sourceLineNo">1751</span>     */<a name="line.1751"></a>
<span class="sourceLineNo">1752</span>    String getName();<a name="line.1752"></a>
<span class="sourceLineNo">1753</span><a name="line.1753"></a>
<span class="sourceLineNo">1754</span>    /**<a name="line.1754"></a>
<span class="sourceLineNo">1755</span>     * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.<a name="line.1755"></a>
<span class="sourceLineNo">1756</span>     *<a name="line.1756"></a>
<span class="sourceLineNo">1757</span>     * @param marker the marker data specific to this log statement<a name="line.1757"></a>
<span class="sourceLineNo">1758</span>     * @param msg the message string to be logged<a name="line.1758"></a>
<span class="sourceLineNo">1759</span>     */<a name="line.1759"></a>
<span class="sourceLineNo">1760</span>    void info(Marker marker, Message msg);<a name="line.1760"></a>
<span class="sourceLineNo">1761</span><a name="line.1761"></a>
<span class="sourceLineNo">1762</span>    /**<a name="line.1762"></a>
<span class="sourceLineNo">1763</span>     * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.<a name="line.1763"></a>
<span class="sourceLineNo">1764</span>     *<a name="line.1764"></a>
<span class="sourceLineNo">1765</span>     * @param marker the marker data specific to this log statement<a name="line.1765"></a>
<span class="sourceLineNo">1766</span>     * @param msg the message string to be logged<a name="line.1766"></a>
<span class="sourceLineNo">1767</span>     * @param t A Throwable or null.<a name="line.1767"></a>
<span class="sourceLineNo">1768</span>     */<a name="line.1768"></a>
<span class="sourceLineNo">1769</span>    void info(Marker marker, Message msg, Throwable t);<a name="line.1769"></a>
<span class="sourceLineNo">1770</span><a name="line.1770"></a>
<span class="sourceLineNo">1771</span>    /**<a name="line.1771"></a>
<span class="sourceLineNo">1772</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level with the<a name="line.1772"></a>
<span class="sourceLineNo">1773</span>     * specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.1773"></a>
<span class="sourceLineNo">1774</span>     * {@code Message}.<a name="line.1774"></a>
<span class="sourceLineNo">1775</span>     *<a name="line.1775"></a>
<span class="sourceLineNo">1776</span>     * @param marker the marker data specific to this log statement<a name="line.1776"></a>
<span class="sourceLineNo">1777</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1777"></a>
<span class="sourceLineNo">1778</span>     * @since 2.4<a name="line.1778"></a>
<span class="sourceLineNo">1779</span>     */<a name="line.1779"></a>
<span class="sourceLineNo">1780</span>    void info(Marker marker, MessageSupplier msgSupplier);<a name="line.1780"></a>
<span class="sourceLineNo">1781</span><a name="line.1781"></a>
<span class="sourceLineNo">1782</span>    /**<a name="line.1782"></a>
<span class="sourceLineNo">1783</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) with the<a name="line.1783"></a>
<span class="sourceLineNo">1784</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The<a name="line.1784"></a>
<span class="sourceLineNo">1785</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.1785"></a>
<span class="sourceLineNo">1786</span>     *<a name="line.1786"></a>
<span class="sourceLineNo">1787</span>     * @param marker the marker data specific to this log statement<a name="line.1787"></a>
<span class="sourceLineNo">1788</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1788"></a>
<span class="sourceLineNo">1789</span>     * @param t A Throwable or null.<a name="line.1789"></a>
<span class="sourceLineNo">1790</span>     * @since 2.4<a name="line.1790"></a>
<span class="sourceLineNo">1791</span>     */<a name="line.1791"></a>
<span class="sourceLineNo">1792</span>    void info(Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.1792"></a>
<span class="sourceLineNo">1793</span><a name="line.1793"></a>
<span class="sourceLineNo">1794</span>    /**<a name="line.1794"></a>
<span class="sourceLineNo">1795</span>     * Logs a message CharSequence with the {@link Level#INFO INFO} level.<a name="line.1795"></a>
<span class="sourceLineNo">1796</span>     *<a name="line.1796"></a>
<span class="sourceLineNo">1797</span>     * @param marker the marker data specific to this log statement<a name="line.1797"></a>
<span class="sourceLineNo">1798</span>     * @param message the message CharSequence to log.<a name="line.1798"></a>
<span class="sourceLineNo">1799</span>     */<a name="line.1799"></a>
<span class="sourceLineNo">1800</span>    void info(Marker marker, CharSequence message);<a name="line.1800"></a>
<span class="sourceLineNo">1801</span><a name="line.1801"></a>
<span class="sourceLineNo">1802</span>    /**<a name="line.1802"></a>
<span class="sourceLineNo">1803</span>     * Logs a CharSequence at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}<a name="line.1803"></a>
<span class="sourceLineNo">1804</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1804"></a>
<span class="sourceLineNo">1805</span>     *<a name="line.1805"></a>
<span class="sourceLineNo">1806</span>     * @param marker the marker data specific to this log statement<a name="line.1806"></a>
<span class="sourceLineNo">1807</span>     * @param message the message CharSequence to log.<a name="line.1807"></a>
<span class="sourceLineNo">1808</span>     * @param t the exception to log, including its stack trace.<a name="line.1808"></a>
<span class="sourceLineNo">1809</span>     */<a name="line.1809"></a>
<span class="sourceLineNo">1810</span>    void info(Marker marker, CharSequence message, Throwable t);<a name="line.1810"></a>
<span class="sourceLineNo">1811</span><a name="line.1811"></a>
<span class="sourceLineNo">1812</span>    /**<a name="line.1812"></a>
<span class="sourceLineNo">1813</span>     * Logs a message object with the {@link Level#INFO INFO} level.<a name="line.1813"></a>
<span class="sourceLineNo">1814</span>     *<a name="line.1814"></a>
<span class="sourceLineNo">1815</span>     * @param marker the marker data specific to this log statement<a name="line.1815"></a>
<span class="sourceLineNo">1816</span>     * @param message the message object to log.<a name="line.1816"></a>
<span class="sourceLineNo">1817</span>     */<a name="line.1817"></a>
<span class="sourceLineNo">1818</span>    void info(Marker marker, Object message);<a name="line.1818"></a>
<span class="sourceLineNo">1819</span><a name="line.1819"></a>
<span class="sourceLineNo">1820</span>    /**<a name="line.1820"></a>
<span class="sourceLineNo">1821</span>     * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}<a name="line.1821"></a>
<span class="sourceLineNo">1822</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1822"></a>
<span class="sourceLineNo">1823</span>     *<a name="line.1823"></a>
<span class="sourceLineNo">1824</span>     * @param marker the marker data specific to this log statement<a name="line.1824"></a>
<span class="sourceLineNo">1825</span>     * @param message the message object to log.<a name="line.1825"></a>
<span class="sourceLineNo">1826</span>     * @param t the exception to log, including its stack trace.<a name="line.1826"></a>
<span class="sourceLineNo">1827</span>     */<a name="line.1827"></a>
<span class="sourceLineNo">1828</span>    void info(Marker marker, Object message, Throwable t);<a name="line.1828"></a>
<span class="sourceLineNo">1829</span><a name="line.1829"></a>
<span class="sourceLineNo">1830</span>    /**<a name="line.1830"></a>
<span class="sourceLineNo">1831</span>     * Logs a message object with the {@link Level#INFO INFO} level.<a name="line.1831"></a>
<span class="sourceLineNo">1832</span>     *<a name="line.1832"></a>
<span class="sourceLineNo">1833</span>     * @param marker the marker data specific to this log statement<a name="line.1833"></a>
<span class="sourceLineNo">1834</span>     * @param message the message object to log.<a name="line.1834"></a>
<span class="sourceLineNo">1835</span>     */<a name="line.1835"></a>
<span class="sourceLineNo">1836</span>    void info(Marker marker, String message);<a name="line.1836"></a>
<span class="sourceLineNo">1837</span><a name="line.1837"></a>
<span class="sourceLineNo">1838</span>    /**<a name="line.1838"></a>
<span class="sourceLineNo">1839</span>     * Logs a message with parameters at the {@link Level#INFO INFO} level.<a name="line.1839"></a>
<span class="sourceLineNo">1840</span>     *<a name="line.1840"></a>
<span class="sourceLineNo">1841</span>     * @param marker the marker data specific to this log statement<a name="line.1841"></a>
<span class="sourceLineNo">1842</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1842"></a>
<span class="sourceLineNo">1843</span>     * @param params parameters to the message.<a name="line.1843"></a>
<span class="sourceLineNo">1844</span>     * @see #getMessageFactory()<a name="line.1844"></a>
<span class="sourceLineNo">1845</span>     */<a name="line.1845"></a>
<span class="sourceLineNo">1846</span>    void info(Marker marker, String message, Object... params);<a name="line.1846"></a>
<span class="sourceLineNo">1847</span><a name="line.1847"></a>
<span class="sourceLineNo">1848</span>    /**<a name="line.1848"></a>
<span class="sourceLineNo">1849</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#INFO<a name="line.1849"></a>
<span class="sourceLineNo">1850</span>     * INFO} level.<a name="line.1850"></a>
<span class="sourceLineNo">1851</span>     *<a name="line.1851"></a>
<span class="sourceLineNo">1852</span>     * @param marker the marker data specific to this log statement<a name="line.1852"></a>
<span class="sourceLineNo">1853</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1853"></a>
<span class="sourceLineNo">1854</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.1854"></a>
<span class="sourceLineNo">1855</span>     * @since 2.4<a name="line.1855"></a>
<span class="sourceLineNo">1856</span>     */<a name="line.1856"></a>
<span class="sourceLineNo">1857</span>    void info(Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.1857"></a>
<span class="sourceLineNo">1858</span><a name="line.1858"></a>
<span class="sourceLineNo">1859</span>    /**<a name="line.1859"></a>
<span class="sourceLineNo">1860</span>     * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}<a name="line.1860"></a>
<span class="sourceLineNo">1861</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1861"></a>
<span class="sourceLineNo">1862</span>     *<a name="line.1862"></a>
<span class="sourceLineNo">1863</span>     * @param marker the marker data specific to this log statement<a name="line.1863"></a>
<span class="sourceLineNo">1864</span>     * @param message the message object to log.<a name="line.1864"></a>
<span class="sourceLineNo">1865</span>     * @param t the exception to log, including its stack trace.<a name="line.1865"></a>
<span class="sourceLineNo">1866</span>     */<a name="line.1866"></a>
<span class="sourceLineNo">1867</span>    void info(Marker marker, String message, Throwable t);<a name="line.1867"></a>
<span class="sourceLineNo">1868</span><a name="line.1868"></a>
<span class="sourceLineNo">1869</span>    /**<a name="line.1869"></a>
<span class="sourceLineNo">1870</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level with the<a name="line.1870"></a>
<span class="sourceLineNo">1871</span>     * specified Marker.<a name="line.1871"></a>
<span class="sourceLineNo">1872</span>     *<a name="line.1872"></a>
<span class="sourceLineNo">1873</span>     * @param marker the marker data specific to this log statement<a name="line.1873"></a>
<span class="sourceLineNo">1874</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1874"></a>
<span class="sourceLineNo">1875</span>     *            message factory.<a name="line.1875"></a>
<span class="sourceLineNo">1876</span>     * @since 2.4<a name="line.1876"></a>
<span class="sourceLineNo">1877</span>     */<a name="line.1877"></a>
<span class="sourceLineNo">1878</span>    void info(Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.1878"></a>
<span class="sourceLineNo">1879</span><a name="line.1879"></a>
<span class="sourceLineNo">1880</span>    /**<a name="line.1880"></a>
<span class="sourceLineNo">1881</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) with the<a name="line.1881"></a>
<span class="sourceLineNo">1882</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1882"></a>
<span class="sourceLineNo">1883</span>     *<a name="line.1883"></a>
<span class="sourceLineNo">1884</span>     * @param marker the marker data specific to this log statement<a name="line.1884"></a>
<span class="sourceLineNo">1885</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1885"></a>
<span class="sourceLineNo">1886</span>     *            message factory.<a name="line.1886"></a>
<span class="sourceLineNo">1887</span>     * @param t A Throwable or null.<a name="line.1887"></a>
<span class="sourceLineNo">1888</span>     * @since 2.4<a name="line.1888"></a>
<span class="sourceLineNo">1889</span>     */<a name="line.1889"></a>
<span class="sourceLineNo">1890</span>    void info(Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.1890"></a>
<span class="sourceLineNo">1891</span><a name="line.1891"></a>
<span class="sourceLineNo">1892</span>    /**<a name="line.1892"></a>
<span class="sourceLineNo">1893</span>     * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.<a name="line.1893"></a>
<span class="sourceLineNo">1894</span>     *<a name="line.1894"></a>
<span class="sourceLineNo">1895</span>     * @param msg the message string to be logged<a name="line.1895"></a>
<span class="sourceLineNo">1896</span>     */<a name="line.1896"></a>
<span class="sourceLineNo">1897</span>    void info(Message msg);<a name="line.1897"></a>
<span class="sourceLineNo">1898</span><a name="line.1898"></a>
<span class="sourceLineNo">1899</span>    /**<a name="line.1899"></a>
<span class="sourceLineNo">1900</span>     * Logs a message with the specific Marker at the {@link Level#INFO INFO} level.<a name="line.1900"></a>
<span class="sourceLineNo">1901</span>     *<a name="line.1901"></a>
<span class="sourceLineNo">1902</span>     * @param msg the message string to be logged<a name="line.1902"></a>
<span class="sourceLineNo">1903</span>     * @param t A Throwable or null.<a name="line.1903"></a>
<span class="sourceLineNo">1904</span>     */<a name="line.1904"></a>
<span class="sourceLineNo">1905</span>    void info(Message msg, Throwable t);<a name="line.1905"></a>
<span class="sourceLineNo">1906</span><a name="line.1906"></a>
<span class="sourceLineNo">1907</span>    /**<a name="line.1907"></a>
<span class="sourceLineNo">1908</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level. The<a name="line.1908"></a>
<span class="sourceLineNo">1909</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.1909"></a>
<span class="sourceLineNo">1910</span>     *<a name="line.1910"></a>
<span class="sourceLineNo">1911</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1911"></a>
<span class="sourceLineNo">1912</span>     * @since 2.4<a name="line.1912"></a>
<span class="sourceLineNo">1913</span>     */<a name="line.1913"></a>
<span class="sourceLineNo">1914</span>    void info(MessageSupplier msgSupplier);<a name="line.1914"></a>
<span class="sourceLineNo">1915</span><a name="line.1915"></a>
<span class="sourceLineNo">1916</span>    /**<a name="line.1916"></a>
<span class="sourceLineNo">1917</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) including the<a name="line.1917"></a>
<span class="sourceLineNo">1918</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may<a name="line.1918"></a>
<span class="sourceLineNo">1919</span>     * not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.1919"></a>
<span class="sourceLineNo">1920</span>     *<a name="line.1920"></a>
<span class="sourceLineNo">1921</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.1921"></a>
<span class="sourceLineNo">1922</span>     * @param t the exception to log, including its stack trace.<a name="line.1922"></a>
<span class="sourceLineNo">1923</span>     * @since 2.4<a name="line.1923"></a>
<span class="sourceLineNo">1924</span>     */<a name="line.1924"></a>
<span class="sourceLineNo">1925</span>    void info(MessageSupplier msgSupplier, Throwable t);<a name="line.1925"></a>
<span class="sourceLineNo">1926</span><a name="line.1926"></a>
<span class="sourceLineNo">1927</span>    /**<a name="line.1927"></a>
<span class="sourceLineNo">1928</span>     * Logs a message CharSequence with the {@link Level#INFO INFO} level.<a name="line.1928"></a>
<span class="sourceLineNo">1929</span>     *<a name="line.1929"></a>
<span class="sourceLineNo">1930</span>     * @param message the message CharSequence to log.<a name="line.1930"></a>
<span class="sourceLineNo">1931</span>     */<a name="line.1931"></a>
<span class="sourceLineNo">1932</span>    void info(CharSequence message);<a name="line.1932"></a>
<span class="sourceLineNo">1933</span><a name="line.1933"></a>
<span class="sourceLineNo">1934</span>    /**<a name="line.1934"></a>
<span class="sourceLineNo">1935</span>     * Logs a CharSequence at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}<a name="line.1935"></a>
<span class="sourceLineNo">1936</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1936"></a>
<span class="sourceLineNo">1937</span>     *<a name="line.1937"></a>
<span class="sourceLineNo">1938</span>     * @param message the message CharSequence to log.<a name="line.1938"></a>
<span class="sourceLineNo">1939</span>     * @param t the exception to log, including its stack trace.<a name="line.1939"></a>
<span class="sourceLineNo">1940</span>     */<a name="line.1940"></a>
<span class="sourceLineNo">1941</span>    void info(CharSequence message, Throwable t);<a name="line.1941"></a>
<span class="sourceLineNo">1942</span><a name="line.1942"></a>
<span class="sourceLineNo">1943</span>    /**<a name="line.1943"></a>
<span class="sourceLineNo">1944</span>     * Logs a message object with the {@link Level#INFO INFO} level.<a name="line.1944"></a>
<span class="sourceLineNo">1945</span>     *<a name="line.1945"></a>
<span class="sourceLineNo">1946</span>     * @param message the message object to log.<a name="line.1946"></a>
<span class="sourceLineNo">1947</span>     */<a name="line.1947"></a>
<span class="sourceLineNo">1948</span>    void info(Object message);<a name="line.1948"></a>
<span class="sourceLineNo">1949</span><a name="line.1949"></a>
<span class="sourceLineNo">1950</span>    /**<a name="line.1950"></a>
<span class="sourceLineNo">1951</span>     * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}<a name="line.1951"></a>
<span class="sourceLineNo">1952</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1952"></a>
<span class="sourceLineNo">1953</span>     *<a name="line.1953"></a>
<span class="sourceLineNo">1954</span>     * @param message the message object to log.<a name="line.1954"></a>
<span class="sourceLineNo">1955</span>     * @param t the exception to log, including its stack trace.<a name="line.1955"></a>
<span class="sourceLineNo">1956</span>     */<a name="line.1956"></a>
<span class="sourceLineNo">1957</span>    void info(Object message, Throwable t);<a name="line.1957"></a>
<span class="sourceLineNo">1958</span><a name="line.1958"></a>
<span class="sourceLineNo">1959</span>    /**<a name="line.1959"></a>
<span class="sourceLineNo">1960</span>     * Logs a message object with the {@link Level#INFO INFO} level.<a name="line.1960"></a>
<span class="sourceLineNo">1961</span>     *<a name="line.1961"></a>
<span class="sourceLineNo">1962</span>     * @param message the message string to log.<a name="line.1962"></a>
<span class="sourceLineNo">1963</span>     */<a name="line.1963"></a>
<span class="sourceLineNo">1964</span>    void info(String message);<a name="line.1964"></a>
<span class="sourceLineNo">1965</span><a name="line.1965"></a>
<span class="sourceLineNo">1966</span>    /**<a name="line.1966"></a>
<span class="sourceLineNo">1967</span>     * Logs a message with parameters at the {@link Level#INFO INFO} level.<a name="line.1967"></a>
<span class="sourceLineNo">1968</span>     *<a name="line.1968"></a>
<span class="sourceLineNo">1969</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1969"></a>
<span class="sourceLineNo">1970</span>     * @param params parameters to the message.<a name="line.1970"></a>
<span class="sourceLineNo">1971</span>     * @see #getMessageFactory()<a name="line.1971"></a>
<span class="sourceLineNo">1972</span>     */<a name="line.1972"></a>
<span class="sourceLineNo">1973</span>    void info(String message, Object... params);<a name="line.1973"></a>
<span class="sourceLineNo">1974</span><a name="line.1974"></a>
<span class="sourceLineNo">1975</span>    /**<a name="line.1975"></a>
<span class="sourceLineNo">1976</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#INFO<a name="line.1976"></a>
<span class="sourceLineNo">1977</span>     * INFO} level.<a name="line.1977"></a>
<span class="sourceLineNo">1978</span>     *<a name="line.1978"></a>
<span class="sourceLineNo">1979</span>     * @param message the message to log; the format depends on the message factory.<a name="line.1979"></a>
<span class="sourceLineNo">1980</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.1980"></a>
<span class="sourceLineNo">1981</span>     * @since 2.4<a name="line.1981"></a>
<span class="sourceLineNo">1982</span>     */<a name="line.1982"></a>
<span class="sourceLineNo">1983</span>    void info(String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.1983"></a>
<span class="sourceLineNo">1984</span><a name="line.1984"></a>
<span class="sourceLineNo">1985</span>    /**<a name="line.1985"></a>
<span class="sourceLineNo">1986</span>     * Logs a message at the {@link Level#INFO INFO} level including the stack trace of the {@link Throwable}<a name="line.1986"></a>
<span class="sourceLineNo">1987</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.1987"></a>
<span class="sourceLineNo">1988</span>     *<a name="line.1988"></a>
<span class="sourceLineNo">1989</span>     * @param message the message object to log.<a name="line.1989"></a>
<span class="sourceLineNo">1990</span>     * @param t the exception to log, including its stack trace.<a name="line.1990"></a>
<span class="sourceLineNo">1991</span>     */<a name="line.1991"></a>
<span class="sourceLineNo">1992</span>    void info(String message, Throwable t);<a name="line.1992"></a>
<span class="sourceLineNo">1993</span><a name="line.1993"></a>
<span class="sourceLineNo">1994</span>    /**<a name="line.1994"></a>
<span class="sourceLineNo">1995</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#INFO INFO} level.<a name="line.1995"></a>
<span class="sourceLineNo">1996</span>     *<a name="line.1996"></a>
<span class="sourceLineNo">1997</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.1997"></a>
<span class="sourceLineNo">1998</span>     *            message factory.<a name="line.1998"></a>
<span class="sourceLineNo">1999</span>     * @since 2.4<a name="line.1999"></a>
<span class="sourceLineNo">2000</span>     */<a name="line.2000"></a>
<span class="sourceLineNo">2001</span>    void info(Supplier&lt;?&gt; msgSupplier);<a name="line.2001"></a>
<span class="sourceLineNo">2002</span><a name="line.2002"></a>
<span class="sourceLineNo">2003</span>    /**<a name="line.2003"></a>
<span class="sourceLineNo">2004</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#INFO INFO} level) including the<a name="line.2004"></a>
<span class="sourceLineNo">2005</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.2005"></a>
<span class="sourceLineNo">2006</span>     *<a name="line.2006"></a>
<span class="sourceLineNo">2007</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.2007"></a>
<span class="sourceLineNo">2008</span>     *            message factory.<a name="line.2008"></a>
<span class="sourceLineNo">2009</span>     * @param t the exception to log, including its stack trace.<a name="line.2009"></a>
<span class="sourceLineNo">2010</span>     * @since 2.4<a name="line.2010"></a>
<span class="sourceLineNo">2011</span>     */<a name="line.2011"></a>
<span class="sourceLineNo">2012</span>    void info(Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.2012"></a>
<span class="sourceLineNo">2013</span><a name="line.2013"></a>
<span class="sourceLineNo">2014</span>    /**<a name="line.2014"></a>
<span class="sourceLineNo">2015</span>     * Logs a message with parameters at info level.<a name="line.2015"></a>
<span class="sourceLineNo">2016</span>     *<a name="line.2016"></a>
<span class="sourceLineNo">2017</span>     * @param marker the marker data specific to this log statement<a name="line.2017"></a>
<span class="sourceLineNo">2018</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2018"></a>
<span class="sourceLineNo">2019</span>     * @param p0 parameter to the message.<a name="line.2019"></a>
<span class="sourceLineNo">2020</span>     */<a name="line.2020"></a>
<span class="sourceLineNo">2021</span>    void info(Marker marker, String message, Object p0);<a name="line.2021"></a>
<span class="sourceLineNo">2022</span><a name="line.2022"></a>
<span class="sourceLineNo">2023</span>    /**<a name="line.2023"></a>
<span class="sourceLineNo">2024</span>     * Logs a message with parameters at info level.<a name="line.2024"></a>
<span class="sourceLineNo">2025</span>     *<a name="line.2025"></a>
<span class="sourceLineNo">2026</span>     * @param marker the marker data specific to this log statement<a name="line.2026"></a>
<span class="sourceLineNo">2027</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2027"></a>
<span class="sourceLineNo">2028</span>     * @param p0 parameter to the message.<a name="line.2028"></a>
<span class="sourceLineNo">2029</span>     * @param p1 parameter to the message.<a name="line.2029"></a>
<span class="sourceLineNo">2030</span>     */<a name="line.2030"></a>
<span class="sourceLineNo">2031</span>    void info(Marker marker, String message, Object p0, Object p1);<a name="line.2031"></a>
<span class="sourceLineNo">2032</span><a name="line.2032"></a>
<span class="sourceLineNo">2033</span>    /**<a name="line.2033"></a>
<span class="sourceLineNo">2034</span>     * Logs a message with parameters at info level.<a name="line.2034"></a>
<span class="sourceLineNo">2035</span>     *<a name="line.2035"></a>
<span class="sourceLineNo">2036</span>     * @param marker the marker data specific to this log statement<a name="line.2036"></a>
<span class="sourceLineNo">2037</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2037"></a>
<span class="sourceLineNo">2038</span>     * @param p0 parameter to the message.<a name="line.2038"></a>
<span class="sourceLineNo">2039</span>     * @param p1 parameter to the message.<a name="line.2039"></a>
<span class="sourceLineNo">2040</span>     * @param p2 parameter to the message.<a name="line.2040"></a>
<span class="sourceLineNo">2041</span>     */<a name="line.2041"></a>
<span class="sourceLineNo">2042</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.2042"></a>
<span class="sourceLineNo">2043</span><a name="line.2043"></a>
<span class="sourceLineNo">2044</span>    /**<a name="line.2044"></a>
<span class="sourceLineNo">2045</span>     * Logs a message with parameters at info level.<a name="line.2045"></a>
<span class="sourceLineNo">2046</span>     *<a name="line.2046"></a>
<span class="sourceLineNo">2047</span>     * @param marker the marker data specific to this log statement<a name="line.2047"></a>
<span class="sourceLineNo">2048</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2048"></a>
<span class="sourceLineNo">2049</span>     * @param p0 parameter to the message.<a name="line.2049"></a>
<span class="sourceLineNo">2050</span>     * @param p1 parameter to the message.<a name="line.2050"></a>
<span class="sourceLineNo">2051</span>     * @param p2 parameter to the message.<a name="line.2051"></a>
<span class="sourceLineNo">2052</span>     * @param p3 parameter to the message.<a name="line.2052"></a>
<span class="sourceLineNo">2053</span>     */<a name="line.2053"></a>
<span class="sourceLineNo">2054</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.2054"></a>
<span class="sourceLineNo">2055</span><a name="line.2055"></a>
<span class="sourceLineNo">2056</span>    /**<a name="line.2056"></a>
<span class="sourceLineNo">2057</span>     * Logs a message with parameters at info level.<a name="line.2057"></a>
<span class="sourceLineNo">2058</span>     *<a name="line.2058"></a>
<span class="sourceLineNo">2059</span>     * @param marker the marker data specific to this log statement<a name="line.2059"></a>
<span class="sourceLineNo">2060</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2060"></a>
<span class="sourceLineNo">2061</span>     * @param p0 parameter to the message.<a name="line.2061"></a>
<span class="sourceLineNo">2062</span>     * @param p1 parameter to the message.<a name="line.2062"></a>
<span class="sourceLineNo">2063</span>     * @param p2 parameter to the message.<a name="line.2063"></a>
<span class="sourceLineNo">2064</span>     * @param p3 parameter to the message.<a name="line.2064"></a>
<span class="sourceLineNo">2065</span>     * @param p4 parameter to the message.<a name="line.2065"></a>
<span class="sourceLineNo">2066</span>     */<a name="line.2066"></a>
<span class="sourceLineNo">2067</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.2067"></a>
<span class="sourceLineNo">2068</span><a name="line.2068"></a>
<span class="sourceLineNo">2069</span>    /**<a name="line.2069"></a>
<span class="sourceLineNo">2070</span>     * Logs a message with parameters at info level.<a name="line.2070"></a>
<span class="sourceLineNo">2071</span>     *<a name="line.2071"></a>
<span class="sourceLineNo">2072</span>     * @param marker the marker data specific to this log statement<a name="line.2072"></a>
<span class="sourceLineNo">2073</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2073"></a>
<span class="sourceLineNo">2074</span>     * @param p0 parameter to the message.<a name="line.2074"></a>
<span class="sourceLineNo">2075</span>     * @param p1 parameter to the message.<a name="line.2075"></a>
<span class="sourceLineNo">2076</span>     * @param p2 parameter to the message.<a name="line.2076"></a>
<span class="sourceLineNo">2077</span>     * @param p3 parameter to the message.<a name="line.2077"></a>
<span class="sourceLineNo">2078</span>     * @param p4 parameter to the message.<a name="line.2078"></a>
<span class="sourceLineNo">2079</span>     * @param p5 parameter to the message.<a name="line.2079"></a>
<span class="sourceLineNo">2080</span>     */<a name="line.2080"></a>
<span class="sourceLineNo">2081</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.2081"></a>
<span class="sourceLineNo">2082</span><a name="line.2082"></a>
<span class="sourceLineNo">2083</span>    /**<a name="line.2083"></a>
<span class="sourceLineNo">2084</span>     * Logs a message with parameters at info level.<a name="line.2084"></a>
<span class="sourceLineNo">2085</span>     *<a name="line.2085"></a>
<span class="sourceLineNo">2086</span>     * @param marker the marker data specific to this log statement<a name="line.2086"></a>
<span class="sourceLineNo">2087</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2087"></a>
<span class="sourceLineNo">2088</span>     * @param p0 parameter to the message.<a name="line.2088"></a>
<span class="sourceLineNo">2089</span>     * @param p1 parameter to the message.<a name="line.2089"></a>
<span class="sourceLineNo">2090</span>     * @param p2 parameter to the message.<a name="line.2090"></a>
<span class="sourceLineNo">2091</span>     * @param p3 parameter to the message.<a name="line.2091"></a>
<span class="sourceLineNo">2092</span>     * @param p4 parameter to the message.<a name="line.2092"></a>
<span class="sourceLineNo">2093</span>     * @param p5 parameter to the message.<a name="line.2093"></a>
<span class="sourceLineNo">2094</span>     * @param p6 parameter to the message.<a name="line.2094"></a>
<span class="sourceLineNo">2095</span>     */<a name="line.2095"></a>
<span class="sourceLineNo">2096</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.2096"></a>
<span class="sourceLineNo">2097</span>            Object p6);<a name="line.2097"></a>
<span class="sourceLineNo">2098</span><a name="line.2098"></a>
<span class="sourceLineNo">2099</span>    /**<a name="line.2099"></a>
<span class="sourceLineNo">2100</span>     * Logs a message with parameters at info level.<a name="line.2100"></a>
<span class="sourceLineNo">2101</span>     *<a name="line.2101"></a>
<span class="sourceLineNo">2102</span>     * @param marker the marker data specific to this log statement<a name="line.2102"></a>
<span class="sourceLineNo">2103</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2103"></a>
<span class="sourceLineNo">2104</span>     * @param p0 parameter to the message.<a name="line.2104"></a>
<span class="sourceLineNo">2105</span>     * @param p1 parameter to the message.<a name="line.2105"></a>
<span class="sourceLineNo">2106</span>     * @param p2 parameter to the message.<a name="line.2106"></a>
<span class="sourceLineNo">2107</span>     * @param p3 parameter to the message.<a name="line.2107"></a>
<span class="sourceLineNo">2108</span>     * @param p4 parameter to the message.<a name="line.2108"></a>
<span class="sourceLineNo">2109</span>     * @param p5 parameter to the message.<a name="line.2109"></a>
<span class="sourceLineNo">2110</span>     * @param p6 parameter to the message.<a name="line.2110"></a>
<span class="sourceLineNo">2111</span>     * @param p7 parameter to the message.<a name="line.2111"></a>
<span class="sourceLineNo">2112</span>     */<a name="line.2112"></a>
<span class="sourceLineNo">2113</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.2113"></a>
<span class="sourceLineNo">2114</span>            Object p7);<a name="line.2114"></a>
<span class="sourceLineNo">2115</span><a name="line.2115"></a>
<span class="sourceLineNo">2116</span>    /**<a name="line.2116"></a>
<span class="sourceLineNo">2117</span>     * Logs a message with parameters at info level.<a name="line.2117"></a>
<span class="sourceLineNo">2118</span>     *<a name="line.2118"></a>
<span class="sourceLineNo">2119</span>     * @param marker the marker data specific to this log statement<a name="line.2119"></a>
<span class="sourceLineNo">2120</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2120"></a>
<span class="sourceLineNo">2121</span>     * @param p0 parameter to the message.<a name="line.2121"></a>
<span class="sourceLineNo">2122</span>     * @param p1 parameter to the message.<a name="line.2122"></a>
<span class="sourceLineNo">2123</span>     * @param p2 parameter to the message.<a name="line.2123"></a>
<span class="sourceLineNo">2124</span>     * @param p3 parameter to the message.<a name="line.2124"></a>
<span class="sourceLineNo">2125</span>     * @param p4 parameter to the message.<a name="line.2125"></a>
<span class="sourceLineNo">2126</span>     * @param p5 parameter to the message.<a name="line.2126"></a>
<span class="sourceLineNo">2127</span>     * @param p6 parameter to the message.<a name="line.2127"></a>
<span class="sourceLineNo">2128</span>     * @param p7 parameter to the message.<a name="line.2128"></a>
<span class="sourceLineNo">2129</span>     * @param p8 parameter to the message.<a name="line.2129"></a>
<span class="sourceLineNo">2130</span>     */<a name="line.2130"></a>
<span class="sourceLineNo">2131</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.2131"></a>
<span class="sourceLineNo">2132</span>            Object p7, Object p8);<a name="line.2132"></a>
<span class="sourceLineNo">2133</span><a name="line.2133"></a>
<span class="sourceLineNo">2134</span>    /**<a name="line.2134"></a>
<span class="sourceLineNo">2135</span>     * Logs a message with parameters at info level.<a name="line.2135"></a>
<span class="sourceLineNo">2136</span>     *<a name="line.2136"></a>
<span class="sourceLineNo">2137</span>     * @param marker the marker data specific to this log statement<a name="line.2137"></a>
<span class="sourceLineNo">2138</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2138"></a>
<span class="sourceLineNo">2139</span>     * @param p0 parameter to the message.<a name="line.2139"></a>
<span class="sourceLineNo">2140</span>     * @param p1 parameter to the message.<a name="line.2140"></a>
<span class="sourceLineNo">2141</span>     * @param p2 parameter to the message.<a name="line.2141"></a>
<span class="sourceLineNo">2142</span>     * @param p3 parameter to the message.<a name="line.2142"></a>
<span class="sourceLineNo">2143</span>     * @param p4 parameter to the message.<a name="line.2143"></a>
<span class="sourceLineNo">2144</span>     * @param p5 parameter to the message.<a name="line.2144"></a>
<span class="sourceLineNo">2145</span>     * @param p6 parameter to the message.<a name="line.2145"></a>
<span class="sourceLineNo">2146</span>     * @param p7 parameter to the message.<a name="line.2146"></a>
<span class="sourceLineNo">2147</span>     * @param p8 parameter to the message.<a name="line.2147"></a>
<span class="sourceLineNo">2148</span>     * @param p9 parameter to the message.<a name="line.2148"></a>
<span class="sourceLineNo">2149</span>     */<a name="line.2149"></a>
<span class="sourceLineNo">2150</span>    void info(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.2150"></a>
<span class="sourceLineNo">2151</span>            Object p7, Object p8, Object p9);<a name="line.2151"></a>
<span class="sourceLineNo">2152</span><a name="line.2152"></a>
<span class="sourceLineNo">2153</span>    /**<a name="line.2153"></a>
<span class="sourceLineNo">2154</span>     * Logs a message with parameters at info level.<a name="line.2154"></a>
<span class="sourceLineNo">2155</span>     *<a name="line.2155"></a>
<span class="sourceLineNo">2156</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2156"></a>
<span class="sourceLineNo">2157</span>     * @param p0 parameter to the message.<a name="line.2157"></a>
<span class="sourceLineNo">2158</span>     */<a name="line.2158"></a>
<span class="sourceLineNo">2159</span>    void info(String message, Object p0);<a name="line.2159"></a>
<span class="sourceLineNo">2160</span><a name="line.2160"></a>
<span class="sourceLineNo">2161</span>    /**<a name="line.2161"></a>
<span class="sourceLineNo">2162</span>     * Logs a message with parameters at info level.<a name="line.2162"></a>
<span class="sourceLineNo">2163</span>     *<a name="line.2163"></a>
<span class="sourceLineNo">2164</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2164"></a>
<span class="sourceLineNo">2165</span>     * @param p0 parameter to the message.<a name="line.2165"></a>
<span class="sourceLineNo">2166</span>     * @param p1 parameter to the message.<a name="line.2166"></a>
<span class="sourceLineNo">2167</span>     */<a name="line.2167"></a>
<span class="sourceLineNo">2168</span>    void info(String message, Object p0, Object p1);<a name="line.2168"></a>
<span class="sourceLineNo">2169</span><a name="line.2169"></a>
<span class="sourceLineNo">2170</span>    /**<a name="line.2170"></a>
<span class="sourceLineNo">2171</span>     * Logs a message with parameters at info level.<a name="line.2171"></a>
<span class="sourceLineNo">2172</span>     *<a name="line.2172"></a>
<span class="sourceLineNo">2173</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2173"></a>
<span class="sourceLineNo">2174</span>     * @param p0 parameter to the message.<a name="line.2174"></a>
<span class="sourceLineNo">2175</span>     * @param p1 parameter to the message.<a name="line.2175"></a>
<span class="sourceLineNo">2176</span>     * @param p2 parameter to the message.<a name="line.2176"></a>
<span class="sourceLineNo">2177</span>     */<a name="line.2177"></a>
<span class="sourceLineNo">2178</span>    void info(String message, Object p0, Object p1, Object p2);<a name="line.2178"></a>
<span class="sourceLineNo">2179</span><a name="line.2179"></a>
<span class="sourceLineNo">2180</span>    /**<a name="line.2180"></a>
<span class="sourceLineNo">2181</span>     * Logs a message with parameters at info level.<a name="line.2181"></a>
<span class="sourceLineNo">2182</span>     *<a name="line.2182"></a>
<span class="sourceLineNo">2183</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2183"></a>
<span class="sourceLineNo">2184</span>     * @param p0 parameter to the message.<a name="line.2184"></a>
<span class="sourceLineNo">2185</span>     * @param p1 parameter to the message.<a name="line.2185"></a>
<span class="sourceLineNo">2186</span>     * @param p2 parameter to the message.<a name="line.2186"></a>
<span class="sourceLineNo">2187</span>     * @param p3 parameter to the message.<a name="line.2187"></a>
<span class="sourceLineNo">2188</span>     */<a name="line.2188"></a>
<span class="sourceLineNo">2189</span>    void info(String message, Object p0, Object p1, Object p2, Object p3);<a name="line.2189"></a>
<span class="sourceLineNo">2190</span><a name="line.2190"></a>
<span class="sourceLineNo">2191</span>    /**<a name="line.2191"></a>
<span class="sourceLineNo">2192</span>     * Logs a message with parameters at info level.<a name="line.2192"></a>
<span class="sourceLineNo">2193</span>     *<a name="line.2193"></a>
<span class="sourceLineNo">2194</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2194"></a>
<span class="sourceLineNo">2195</span>     * @param p0 parameter to the message.<a name="line.2195"></a>
<span class="sourceLineNo">2196</span>     * @param p1 parameter to the message.<a name="line.2196"></a>
<span class="sourceLineNo">2197</span>     * @param p2 parameter to the message.<a name="line.2197"></a>
<span class="sourceLineNo">2198</span>     * @param p3 parameter to the message.<a name="line.2198"></a>
<span class="sourceLineNo">2199</span>     * @param p4 parameter to the message.<a name="line.2199"></a>
<span class="sourceLineNo">2200</span>     */<a name="line.2200"></a>
<span class="sourceLineNo">2201</span>    void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.2201"></a>
<span class="sourceLineNo">2202</span><a name="line.2202"></a>
<span class="sourceLineNo">2203</span>    /**<a name="line.2203"></a>
<span class="sourceLineNo">2204</span>     * Logs a message with parameters at info level.<a name="line.2204"></a>
<span class="sourceLineNo">2205</span>     *<a name="line.2205"></a>
<span class="sourceLineNo">2206</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2206"></a>
<span class="sourceLineNo">2207</span>     * @param p0 parameter to the message.<a name="line.2207"></a>
<span class="sourceLineNo">2208</span>     * @param p1 parameter to the message.<a name="line.2208"></a>
<span class="sourceLineNo">2209</span>     * @param p2 parameter to the message.<a name="line.2209"></a>
<span class="sourceLineNo">2210</span>     * @param p3 parameter to the message.<a name="line.2210"></a>
<span class="sourceLineNo">2211</span>     * @param p4 parameter to the message.<a name="line.2211"></a>
<span class="sourceLineNo">2212</span>     * @param p5 parameter to the message.<a name="line.2212"></a>
<span class="sourceLineNo">2213</span>     */<a name="line.2213"></a>
<span class="sourceLineNo">2214</span>    void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.2214"></a>
<span class="sourceLineNo">2215</span><a name="line.2215"></a>
<span class="sourceLineNo">2216</span>    /**<a name="line.2216"></a>
<span class="sourceLineNo">2217</span>     * Logs a message with parameters at info level.<a name="line.2217"></a>
<span class="sourceLineNo">2218</span>     *<a name="line.2218"></a>
<span class="sourceLineNo">2219</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2219"></a>
<span class="sourceLineNo">2220</span>     * @param p0 parameter to the message.<a name="line.2220"></a>
<span class="sourceLineNo">2221</span>     * @param p1 parameter to the message.<a name="line.2221"></a>
<span class="sourceLineNo">2222</span>     * @param p2 parameter to the message.<a name="line.2222"></a>
<span class="sourceLineNo">2223</span>     * @param p3 parameter to the message.<a name="line.2223"></a>
<span class="sourceLineNo">2224</span>     * @param p4 parameter to the message.<a name="line.2224"></a>
<span class="sourceLineNo">2225</span>     * @param p5 parameter to the message.<a name="line.2225"></a>
<span class="sourceLineNo">2226</span>     * @param p6 parameter to the message.<a name="line.2226"></a>
<span class="sourceLineNo">2227</span>     */<a name="line.2227"></a>
<span class="sourceLineNo">2228</span>    void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.2228"></a>
<span class="sourceLineNo">2229</span><a name="line.2229"></a>
<span class="sourceLineNo">2230</span>    /**<a name="line.2230"></a>
<span class="sourceLineNo">2231</span>     * Logs a message with parameters at info level.<a name="line.2231"></a>
<span class="sourceLineNo">2232</span>     *<a name="line.2232"></a>
<span class="sourceLineNo">2233</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2233"></a>
<span class="sourceLineNo">2234</span>     * @param p0 parameter to the message.<a name="line.2234"></a>
<span class="sourceLineNo">2235</span>     * @param p1 parameter to the message.<a name="line.2235"></a>
<span class="sourceLineNo">2236</span>     * @param p2 parameter to the message.<a name="line.2236"></a>
<span class="sourceLineNo">2237</span>     * @param p3 parameter to the message.<a name="line.2237"></a>
<span class="sourceLineNo">2238</span>     * @param p4 parameter to the message.<a name="line.2238"></a>
<span class="sourceLineNo">2239</span>     * @param p5 parameter to the message.<a name="line.2239"></a>
<span class="sourceLineNo">2240</span>     * @param p6 parameter to the message.<a name="line.2240"></a>
<span class="sourceLineNo">2241</span>     * @param p7 parameter to the message.<a name="line.2241"></a>
<span class="sourceLineNo">2242</span>     */<a name="line.2242"></a>
<span class="sourceLineNo">2243</span>    void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.2243"></a>
<span class="sourceLineNo">2244</span><a name="line.2244"></a>
<span class="sourceLineNo">2245</span>    /**<a name="line.2245"></a>
<span class="sourceLineNo">2246</span>     * Logs a message with parameters at info level.<a name="line.2246"></a>
<span class="sourceLineNo">2247</span>     *<a name="line.2247"></a>
<span class="sourceLineNo">2248</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2248"></a>
<span class="sourceLineNo">2249</span>     * @param p0 parameter to the message.<a name="line.2249"></a>
<span class="sourceLineNo">2250</span>     * @param p1 parameter to the message.<a name="line.2250"></a>
<span class="sourceLineNo">2251</span>     * @param p2 parameter to the message.<a name="line.2251"></a>
<span class="sourceLineNo">2252</span>     * @param p3 parameter to the message.<a name="line.2252"></a>
<span class="sourceLineNo">2253</span>     * @param p4 parameter to the message.<a name="line.2253"></a>
<span class="sourceLineNo">2254</span>     * @param p5 parameter to the message.<a name="line.2254"></a>
<span class="sourceLineNo">2255</span>     * @param p6 parameter to the message.<a name="line.2255"></a>
<span class="sourceLineNo">2256</span>     * @param p7 parameter to the message.<a name="line.2256"></a>
<span class="sourceLineNo">2257</span>     * @param p8 parameter to the message.<a name="line.2257"></a>
<span class="sourceLineNo">2258</span>     */<a name="line.2258"></a>
<span class="sourceLineNo">2259</span>    void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.2259"></a>
<span class="sourceLineNo">2260</span>            Object p8);<a name="line.2260"></a>
<span class="sourceLineNo">2261</span><a name="line.2261"></a>
<span class="sourceLineNo">2262</span>    /**<a name="line.2262"></a>
<span class="sourceLineNo">2263</span>     * Logs a message with parameters at info level.<a name="line.2263"></a>
<span class="sourceLineNo">2264</span>     *<a name="line.2264"></a>
<span class="sourceLineNo">2265</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2265"></a>
<span class="sourceLineNo">2266</span>     * @param p0 parameter to the message.<a name="line.2266"></a>
<span class="sourceLineNo">2267</span>     * @param p1 parameter to the message.<a name="line.2267"></a>
<span class="sourceLineNo">2268</span>     * @param p2 parameter to the message.<a name="line.2268"></a>
<span class="sourceLineNo">2269</span>     * @param p3 parameter to the message.<a name="line.2269"></a>
<span class="sourceLineNo">2270</span>     * @param p4 parameter to the message.<a name="line.2270"></a>
<span class="sourceLineNo">2271</span>     * @param p5 parameter to the message.<a name="line.2271"></a>
<span class="sourceLineNo">2272</span>     * @param p6 parameter to the message.<a name="line.2272"></a>
<span class="sourceLineNo">2273</span>     * @param p7 parameter to the message.<a name="line.2273"></a>
<span class="sourceLineNo">2274</span>     * @param p8 parameter to the message.<a name="line.2274"></a>
<span class="sourceLineNo">2275</span>     * @param p9 parameter to the message.<a name="line.2275"></a>
<span class="sourceLineNo">2276</span>     */<a name="line.2276"></a>
<span class="sourceLineNo">2277</span>    void info(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.2277"></a>
<span class="sourceLineNo">2278</span>            Object p8, Object p9);<a name="line.2278"></a>
<span class="sourceLineNo">2279</span><a name="line.2279"></a>
<span class="sourceLineNo">2280</span>    /**<a name="line.2280"></a>
<span class="sourceLineNo">2281</span>     * Checks whether this Logger is enabled for the {@link Level#DEBUG DEBUG} Level.<a name="line.2281"></a>
<span class="sourceLineNo">2282</span>     *<a name="line.2282"></a>
<span class="sourceLineNo">2283</span>     * @return boolean - {@code true} if this Logger is enabled for level DEBUG, {@code false} otherwise.<a name="line.2283"></a>
<span class="sourceLineNo">2284</span>     */<a name="line.2284"></a>
<span class="sourceLineNo">2285</span>    boolean isDebugEnabled();<a name="line.2285"></a>
<span class="sourceLineNo">2286</span><a name="line.2286"></a>
<span class="sourceLineNo">2287</span>    /**<a name="line.2287"></a>
<span class="sourceLineNo">2288</span>     * Checks whether this Logger is enabled for the {@link Level#DEBUG DEBUG} Level.<a name="line.2288"></a>
<span class="sourceLineNo">2289</span>     *<a name="line.2289"></a>
<span class="sourceLineNo">2290</span>     * @param marker The Marker to check<a name="line.2290"></a>
<span class="sourceLineNo">2291</span>     * @return boolean - {@code true} if this Logger is enabled for level DEBUG, {@code false} otherwise.<a name="line.2291"></a>
<span class="sourceLineNo">2292</span>     */<a name="line.2292"></a>
<span class="sourceLineNo">2293</span>    boolean isDebugEnabled(Marker marker);<a name="line.2293"></a>
<span class="sourceLineNo">2294</span><a name="line.2294"></a>
<span class="sourceLineNo">2295</span>    /**<a name="line.2295"></a>
<span class="sourceLineNo">2296</span>     * Checks whether this Logger is enabled for the given Level.<a name="line.2296"></a>
<span class="sourceLineNo">2297</span>     * &lt;p&gt;<a name="line.2297"></a>
<span class="sourceLineNo">2298</span>     * Note that passing in {@link Level#OFF OFF} always returns {@code true}.<a name="line.2298"></a>
<span class="sourceLineNo">2299</span>     * &lt;/p&gt;<a name="line.2299"></a>
<span class="sourceLineNo">2300</span>     *<a name="line.2300"></a>
<span class="sourceLineNo">2301</span>     * @param level the Level to check<a name="line.2301"></a>
<span class="sourceLineNo">2302</span>     * @return boolean - {@code true} if this Logger is enabled for level, {@code false} otherwise.<a name="line.2302"></a>
<span class="sourceLineNo">2303</span>     */<a name="line.2303"></a>
<span class="sourceLineNo">2304</span>    boolean isEnabled(Level level);<a name="line.2304"></a>
<span class="sourceLineNo">2305</span><a name="line.2305"></a>
<span class="sourceLineNo">2306</span>    /**<a name="line.2306"></a>
<span class="sourceLineNo">2307</span>     * Checks whether this Logger is enabled for the given Level and Marker.<a name="line.2307"></a>
<span class="sourceLineNo">2308</span>     *<a name="line.2308"></a>
<span class="sourceLineNo">2309</span>     * @param level The Level to check<a name="line.2309"></a>
<span class="sourceLineNo">2310</span>     * @param marker The Marker to check<a name="line.2310"></a>
<span class="sourceLineNo">2311</span>     * @return boolean - {@code true} if this Logger is enabled for level and marker, {@code false} otherwise.<a name="line.2311"></a>
<span class="sourceLineNo">2312</span>     */<a name="line.2312"></a>
<span class="sourceLineNo">2313</span>    boolean isEnabled(Level level, Marker marker);<a name="line.2313"></a>
<span class="sourceLineNo">2314</span><a name="line.2314"></a>
<span class="sourceLineNo">2315</span>    /**<a name="line.2315"></a>
<span class="sourceLineNo">2316</span>     * Checks whether this Logger is enabled for the {@link Level#ERROR ERROR} Level.<a name="line.2316"></a>
<span class="sourceLineNo">2317</span>     *<a name="line.2317"></a>
<span class="sourceLineNo">2318</span>     * @return boolean - {@code true} if this Logger is enabled for level {@link Level#ERROR ERROR}, {@code false}<a name="line.2318"></a>
<span class="sourceLineNo">2319</span>     *         otherwise.<a name="line.2319"></a>
<span class="sourceLineNo">2320</span>     */<a name="line.2320"></a>
<span class="sourceLineNo">2321</span>    boolean isErrorEnabled();<a name="line.2321"></a>
<span class="sourceLineNo">2322</span><a name="line.2322"></a>
<span class="sourceLineNo">2323</span>    /**<a name="line.2323"></a>
<span class="sourceLineNo">2324</span>     * Checks whether this Logger is enabled for the {@link Level#ERROR ERROR} Level.<a name="line.2324"></a>
<span class="sourceLineNo">2325</span>     *<a name="line.2325"></a>
<span class="sourceLineNo">2326</span>     * @param marker The Marker to check<a name="line.2326"></a>
<span class="sourceLineNo">2327</span>     * @return boolean - {@code true} if this Logger is enabled for level {@link Level#ERROR ERROR}, {@code false}<a name="line.2327"></a>
<span class="sourceLineNo">2328</span>     *         otherwise.<a name="line.2328"></a>
<span class="sourceLineNo">2329</span>     */<a name="line.2329"></a>
<span class="sourceLineNo">2330</span>    boolean isErrorEnabled(Marker marker);<a name="line.2330"></a>
<span class="sourceLineNo">2331</span><a name="line.2331"></a>
<span class="sourceLineNo">2332</span>    /**<a name="line.2332"></a>
<span class="sourceLineNo">2333</span>     * Checks whether this Logger is enabled for the {@link Level#FATAL FATAL} Level.<a name="line.2333"></a>
<span class="sourceLineNo">2334</span>     *<a name="line.2334"></a>
<span class="sourceLineNo">2335</span>     * @return boolean - {@code true} if this Logger is enabled for level {@link Level#FATAL FATAL}, {@code false}<a name="line.2335"></a>
<span class="sourceLineNo">2336</span>     *         otherwise.<a name="line.2336"></a>
<span class="sourceLineNo">2337</span>     */<a name="line.2337"></a>
<span class="sourceLineNo">2338</span>    boolean isFatalEnabled();<a name="line.2338"></a>
<span class="sourceLineNo">2339</span><a name="line.2339"></a>
<span class="sourceLineNo">2340</span>    /**<a name="line.2340"></a>
<span class="sourceLineNo">2341</span>     * Checks whether this Logger is enabled for the {@link Level#FATAL FATAL} Level.<a name="line.2341"></a>
<span class="sourceLineNo">2342</span>     *<a name="line.2342"></a>
<span class="sourceLineNo">2343</span>     * @param marker The Marker to check<a name="line.2343"></a>
<span class="sourceLineNo">2344</span>     * @return boolean - {@code true} if this Logger is enabled for level {@link Level#FATAL FATAL}, {@code false}<a name="line.2344"></a>
<span class="sourceLineNo">2345</span>     *         otherwise.<a name="line.2345"></a>
<span class="sourceLineNo">2346</span>     */<a name="line.2346"></a>
<span class="sourceLineNo">2347</span>    boolean isFatalEnabled(Marker marker);<a name="line.2347"></a>
<span class="sourceLineNo">2348</span><a name="line.2348"></a>
<span class="sourceLineNo">2349</span>    /**<a name="line.2349"></a>
<span class="sourceLineNo">2350</span>     * Checks whether this Logger is enabled for the {@link Level#INFO INFO} Level.<a name="line.2350"></a>
<span class="sourceLineNo">2351</span>     *<a name="line.2351"></a>
<span class="sourceLineNo">2352</span>     * @return boolean - {@code true} if this Logger is enabled for level INFO, {@code false} otherwise.<a name="line.2352"></a>
<span class="sourceLineNo">2353</span>     */<a name="line.2353"></a>
<span class="sourceLineNo">2354</span>    boolean isInfoEnabled();<a name="line.2354"></a>
<span class="sourceLineNo">2355</span><a name="line.2355"></a>
<span class="sourceLineNo">2356</span>    /**<a name="line.2356"></a>
<span class="sourceLineNo">2357</span>     * Checks whether this Logger is enabled for the {@link Level#INFO INFO} Level.<a name="line.2357"></a>
<span class="sourceLineNo">2358</span>     *<a name="line.2358"></a>
<span class="sourceLineNo">2359</span>     * @param marker The Marker to check<a name="line.2359"></a>
<span class="sourceLineNo">2360</span>     * @return boolean - {@code true} if this Logger is enabled for level INFO, {@code false} otherwise.<a name="line.2360"></a>
<span class="sourceLineNo">2361</span>     */<a name="line.2361"></a>
<span class="sourceLineNo">2362</span>    boolean isInfoEnabled(Marker marker);<a name="line.2362"></a>
<span class="sourceLineNo">2363</span><a name="line.2363"></a>
<span class="sourceLineNo">2364</span>    /**<a name="line.2364"></a>
<span class="sourceLineNo">2365</span>     * Checks whether this Logger is enabled for the {@link Level#TRACE TRACE} level.<a name="line.2365"></a>
<span class="sourceLineNo">2366</span>     *<a name="line.2366"></a>
<span class="sourceLineNo">2367</span>     * @return boolean - {@code true} if this Logger is enabled for level TRACE, {@code false} otherwise.<a name="line.2367"></a>
<span class="sourceLineNo">2368</span>     */<a name="line.2368"></a>
<span class="sourceLineNo">2369</span>    boolean isTraceEnabled();<a name="line.2369"></a>
<span class="sourceLineNo">2370</span><a name="line.2370"></a>
<span class="sourceLineNo">2371</span>    /**<a name="line.2371"></a>
<span class="sourceLineNo">2372</span>     * Checks whether this Logger is enabled for the {@link Level#TRACE TRACE} level.<a name="line.2372"></a>
<span class="sourceLineNo">2373</span>     *<a name="line.2373"></a>
<span class="sourceLineNo">2374</span>     * @param marker The Marker to check<a name="line.2374"></a>
<span class="sourceLineNo">2375</span>     * @return boolean - {@code true} if this Logger is enabled for level TRACE, {@code false} otherwise.<a name="line.2375"></a>
<span class="sourceLineNo">2376</span>     */<a name="line.2376"></a>
<span class="sourceLineNo">2377</span>    boolean isTraceEnabled(Marker marker);<a name="line.2377"></a>
<span class="sourceLineNo">2378</span><a name="line.2378"></a>
<span class="sourceLineNo">2379</span>    /**<a name="line.2379"></a>
<span class="sourceLineNo">2380</span>     * Checks whether this Logger is enabled for the {@link Level#WARN WARN} Level.<a name="line.2380"></a>
<span class="sourceLineNo">2381</span>     *<a name="line.2381"></a>
<span class="sourceLineNo">2382</span>     * @return boolean - {@code true} if this Logger is enabled for level {@link Level#WARN WARN}, {@code false}<a name="line.2382"></a>
<span class="sourceLineNo">2383</span>     *         otherwise.<a name="line.2383"></a>
<span class="sourceLineNo">2384</span>     */<a name="line.2384"></a>
<span class="sourceLineNo">2385</span>    boolean isWarnEnabled();<a name="line.2385"></a>
<span class="sourceLineNo">2386</span><a name="line.2386"></a>
<span class="sourceLineNo">2387</span>    /**<a name="line.2387"></a>
<span class="sourceLineNo">2388</span>     * Checks whether this Logger is enabled for the {@link Level#WARN WARN} Level.<a name="line.2388"></a>
<span class="sourceLineNo">2389</span>     *<a name="line.2389"></a>
<span class="sourceLineNo">2390</span>     * @param marker The Marker to check<a name="line.2390"></a>
<span class="sourceLineNo">2391</span>     * @return boolean - {@code true} if this Logger is enabled for level {@link Level#WARN WARN}, {@code false}<a name="line.2391"></a>
<span class="sourceLineNo">2392</span>     *         otherwise.<a name="line.2392"></a>
<span class="sourceLineNo">2393</span>     */<a name="line.2393"></a>
<span class="sourceLineNo">2394</span>    boolean isWarnEnabled(Marker marker);<a name="line.2394"></a>
<span class="sourceLineNo">2395</span><a name="line.2395"></a>
<span class="sourceLineNo">2396</span>    /**<a name="line.2396"></a>
<span class="sourceLineNo">2397</span>     * Logs a message with the specific Marker at the given level.<a name="line.2397"></a>
<span class="sourceLineNo">2398</span>     *<a name="line.2398"></a>
<span class="sourceLineNo">2399</span>     * @param level the logging level<a name="line.2399"></a>
<span class="sourceLineNo">2400</span>     * @param marker the marker data specific to this log statement<a name="line.2400"></a>
<span class="sourceLineNo">2401</span>     * @param msg the message string to be logged<a name="line.2401"></a>
<span class="sourceLineNo">2402</span>     */<a name="line.2402"></a>
<span class="sourceLineNo">2403</span>    void log(Level level, Marker marker, Message msg);<a name="line.2403"></a>
<span class="sourceLineNo">2404</span><a name="line.2404"></a>
<span class="sourceLineNo">2405</span>    /**<a name="line.2405"></a>
<span class="sourceLineNo">2406</span>     * Logs a message with the specific Marker at the given level.<a name="line.2406"></a>
<span class="sourceLineNo">2407</span>     *<a name="line.2407"></a>
<span class="sourceLineNo">2408</span>     * @param level the logging level<a name="line.2408"></a>
<span class="sourceLineNo">2409</span>     * @param marker the marker data specific to this log statement<a name="line.2409"></a>
<span class="sourceLineNo">2410</span>     * @param msg the message string to be logged<a name="line.2410"></a>
<span class="sourceLineNo">2411</span>     * @param t A Throwable or null.<a name="line.2411"></a>
<span class="sourceLineNo">2412</span>     */<a name="line.2412"></a>
<span class="sourceLineNo">2413</span>    void log(Level level, Marker marker, Message msg, Throwable t);<a name="line.2413"></a>
<span class="sourceLineNo">2414</span><a name="line.2414"></a>
<span class="sourceLineNo">2415</span>    /**<a name="line.2415"></a>
<span class="sourceLineNo">2416</span>     * Logs a message which is only to be constructed if the logging level is the specified level with the specified<a name="line.2416"></a>
<span class="sourceLineNo">2417</span>     * Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.2417"></a>
<span class="sourceLineNo">2418</span>     * {@code Message}.<a name="line.2418"></a>
<span class="sourceLineNo">2419</span>     *<a name="line.2419"></a>
<span class="sourceLineNo">2420</span>     * @param level the logging level<a name="line.2420"></a>
<span class="sourceLineNo">2421</span>     * @param marker the marker data specific to this log statement<a name="line.2421"></a>
<span class="sourceLineNo">2422</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.2422"></a>
<span class="sourceLineNo">2423</span>     * @since 2.4<a name="line.2423"></a>
<span class="sourceLineNo">2424</span>     */<a name="line.2424"></a>
<span class="sourceLineNo">2425</span>    void log(Level level, Marker marker, MessageSupplier msgSupplier);<a name="line.2425"></a>
<span class="sourceLineNo">2426</span><a name="line.2426"></a>
<span class="sourceLineNo">2427</span>    /**<a name="line.2427"></a>
<span class="sourceLineNo">2428</span>     * Logs a message (only to be constructed if the logging level is the specified level) with the specified Marker and<a name="line.2428"></a>
<span class="sourceLineNo">2429</span>     * including the stack log of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier}<a name="line.2429"></a>
<span class="sourceLineNo">2430</span>     * may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.2430"></a>
<span class="sourceLineNo">2431</span>     *<a name="line.2431"></a>
<span class="sourceLineNo">2432</span>     * @param level the logging level<a name="line.2432"></a>
<span class="sourceLineNo">2433</span>     * @param marker the marker data specific to this log statement<a name="line.2433"></a>
<span class="sourceLineNo">2434</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.2434"></a>
<span class="sourceLineNo">2435</span>     * @param t A Throwable or null.<a name="line.2435"></a>
<span class="sourceLineNo">2436</span>     * @since 2.4<a name="line.2436"></a>
<span class="sourceLineNo">2437</span>     */<a name="line.2437"></a>
<span class="sourceLineNo">2438</span>    void log(Level level, Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.2438"></a>
<span class="sourceLineNo">2439</span><a name="line.2439"></a>
<span class="sourceLineNo">2440</span>    /**<a name="line.2440"></a>
<span class="sourceLineNo">2441</span>     * Logs a message CharSequence with the given level.<a name="line.2441"></a>
<span class="sourceLineNo">2442</span>     *<a name="line.2442"></a>
<span class="sourceLineNo">2443</span>     * @param level the logging level<a name="line.2443"></a>
<span class="sourceLineNo">2444</span>     * @param marker the marker data specific to this log statement<a name="line.2444"></a>
<span class="sourceLineNo">2445</span>     * @param message the message CharSequence to log.<a name="line.2445"></a>
<span class="sourceLineNo">2446</span>     */<a name="line.2446"></a>
<span class="sourceLineNo">2447</span>    void log(Level level, Marker marker, CharSequence message);<a name="line.2447"></a>
<span class="sourceLineNo">2448</span><a name="line.2448"></a>
<span class="sourceLineNo">2449</span>    /**<a name="line.2449"></a>
<span class="sourceLineNo">2450</span>     * Logs a CharSequence at the given level including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as<a name="line.2450"></a>
<span class="sourceLineNo">2451</span>     * parameter.<a name="line.2451"></a>
<span class="sourceLineNo">2452</span>     *<a name="line.2452"></a>
<span class="sourceLineNo">2453</span>     * @param level the logging level<a name="line.2453"></a>
<span class="sourceLineNo">2454</span>     * @param marker the marker data specific to this log statement<a name="line.2454"></a>
<span class="sourceLineNo">2455</span>     * @param message the message CharSequence to log.<a name="line.2455"></a>
<span class="sourceLineNo">2456</span>     * @param t the exception to log, including its stack trace.<a name="line.2456"></a>
<span class="sourceLineNo">2457</span>     */<a name="line.2457"></a>
<span class="sourceLineNo">2458</span>    void log(Level level, Marker marker, CharSequence message, Throwable t);<a name="line.2458"></a>
<span class="sourceLineNo">2459</span><a name="line.2459"></a>
<span class="sourceLineNo">2460</span>    /**<a name="line.2460"></a>
<span class="sourceLineNo">2461</span>     * Logs a message object with the given level.<a name="line.2461"></a>
<span class="sourceLineNo">2462</span>     *<a name="line.2462"></a>
<span class="sourceLineNo">2463</span>     * @param level the logging level<a name="line.2463"></a>
<span class="sourceLineNo">2464</span>     * @param marker the marker data specific to this log statement<a name="line.2464"></a>
<span class="sourceLineNo">2465</span>     * @param message the message object to log.<a name="line.2465"></a>
<span class="sourceLineNo">2466</span>     */<a name="line.2466"></a>
<span class="sourceLineNo">2467</span>    void log(Level level, Marker marker, Object message);<a name="line.2467"></a>
<span class="sourceLineNo">2468</span><a name="line.2468"></a>
<span class="sourceLineNo">2469</span>    /**<a name="line.2469"></a>
<span class="sourceLineNo">2470</span>     * Logs a message at the given level including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as<a name="line.2470"></a>
<span class="sourceLineNo">2471</span>     * parameter.<a name="line.2471"></a>
<span class="sourceLineNo">2472</span>     *<a name="line.2472"></a>
<span class="sourceLineNo">2473</span>     * @param level the logging level<a name="line.2473"></a>
<span class="sourceLineNo">2474</span>     * @param marker the marker data specific to this log statement<a name="line.2474"></a>
<span class="sourceLineNo">2475</span>     * @param message the message to log.<a name="line.2475"></a>
<span class="sourceLineNo">2476</span>     * @param t the exception to log, including its stack trace.<a name="line.2476"></a>
<span class="sourceLineNo">2477</span>     */<a name="line.2477"></a>
<span class="sourceLineNo">2478</span>    void log(Level level, Marker marker, Object message, Throwable t);<a name="line.2478"></a>
<span class="sourceLineNo">2479</span><a name="line.2479"></a>
<span class="sourceLineNo">2480</span>    /**<a name="line.2480"></a>
<span class="sourceLineNo">2481</span>     * Logs a message object with the given level.<a name="line.2481"></a>
<span class="sourceLineNo">2482</span>     *<a name="line.2482"></a>
<span class="sourceLineNo">2483</span>     * @param level the logging level<a name="line.2483"></a>
<span class="sourceLineNo">2484</span>     * @param marker the marker data specific to this log statement<a name="line.2484"></a>
<span class="sourceLineNo">2485</span>     * @param message the message object to log.<a name="line.2485"></a>
<span class="sourceLineNo">2486</span>     */<a name="line.2486"></a>
<span class="sourceLineNo">2487</span>    void log(Level level, Marker marker, String message);<a name="line.2487"></a>
<span class="sourceLineNo">2488</span><a name="line.2488"></a>
<span class="sourceLineNo">2489</span>    /**<a name="line.2489"></a>
<span class="sourceLineNo">2490</span>     * Logs a message with parameters at the given level.<a name="line.2490"></a>
<span class="sourceLineNo">2491</span>     *<a name="line.2491"></a>
<span class="sourceLineNo">2492</span>     * @param level the logging level<a name="line.2492"></a>
<span class="sourceLineNo">2493</span>     * @param marker the marker data specific to this log statement<a name="line.2493"></a>
<span class="sourceLineNo">2494</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2494"></a>
<span class="sourceLineNo">2495</span>     * @param params parameters to the message.<a name="line.2495"></a>
<span class="sourceLineNo">2496</span>     * @see #getMessageFactory()<a name="line.2496"></a>
<span class="sourceLineNo">2497</span>     */<a name="line.2497"></a>
<span class="sourceLineNo">2498</span>    void log(Level level, Marker marker, String message, Object... params);<a name="line.2498"></a>
<span class="sourceLineNo">2499</span><a name="line.2499"></a>
<span class="sourceLineNo">2500</span>    /**<a name="line.2500"></a>
<span class="sourceLineNo">2501</span>     * Logs a message with parameters which are only to be constructed if the logging level is the specified level.<a name="line.2501"></a>
<span class="sourceLineNo">2502</span>     *<a name="line.2502"></a>
<span class="sourceLineNo">2503</span>     * @param level the logging level<a name="line.2503"></a>
<span class="sourceLineNo">2504</span>     * @param marker the marker data specific to this log statement<a name="line.2504"></a>
<span class="sourceLineNo">2505</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2505"></a>
<span class="sourceLineNo">2506</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.2506"></a>
<span class="sourceLineNo">2507</span>     * @since 2.4<a name="line.2507"></a>
<span class="sourceLineNo">2508</span>     */<a name="line.2508"></a>
<span class="sourceLineNo">2509</span>    void log(Level level, Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.2509"></a>
<span class="sourceLineNo">2510</span><a name="line.2510"></a>
<span class="sourceLineNo">2511</span>    /**<a name="line.2511"></a>
<span class="sourceLineNo">2512</span>     * Logs a message at the given level including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as<a name="line.2512"></a>
<span class="sourceLineNo">2513</span>     * parameter.<a name="line.2513"></a>
<span class="sourceLineNo">2514</span>     *<a name="line.2514"></a>
<span class="sourceLineNo">2515</span>     * @param level the logging level<a name="line.2515"></a>
<span class="sourceLineNo">2516</span>     * @param marker the marker data specific to this log statement<a name="line.2516"></a>
<span class="sourceLineNo">2517</span>     * @param message the message to log.<a name="line.2517"></a>
<span class="sourceLineNo">2518</span>     * @param t the exception to log, including its stack trace.<a name="line.2518"></a>
<span class="sourceLineNo">2519</span>     */<a name="line.2519"></a>
<span class="sourceLineNo">2520</span>    void log(Level level, Marker marker, String message, Throwable t);<a name="line.2520"></a>
<span class="sourceLineNo">2521</span><a name="line.2521"></a>
<span class="sourceLineNo">2522</span>    /**<a name="line.2522"></a>
<span class="sourceLineNo">2523</span>     * Logs a message (only to be constructed if the logging level is the specified level) with the specified Marker.<a name="line.2523"></a>
<span class="sourceLineNo">2524</span>     *<a name="line.2524"></a>
<span class="sourceLineNo">2525</span>     * @param level the logging level<a name="line.2525"></a>
<span class="sourceLineNo">2526</span>     * @param marker the marker data specific to this log statement<a name="line.2526"></a>
<span class="sourceLineNo">2527</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.2527"></a>
<span class="sourceLineNo">2528</span>     *            message factory.<a name="line.2528"></a>
<span class="sourceLineNo">2529</span>     * @since 2.4<a name="line.2529"></a>
<span class="sourceLineNo">2530</span>     */<a name="line.2530"></a>
<span class="sourceLineNo">2531</span>    void log(Level level, Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.2531"></a>
<span class="sourceLineNo">2532</span><a name="line.2532"></a>
<span class="sourceLineNo">2533</span>    /**<a name="line.2533"></a>
<span class="sourceLineNo">2534</span>     * Logs a message (only to be constructed if the logging level is the specified level) with the specified Marker and<a name="line.2534"></a>
<span class="sourceLineNo">2535</span>     * including the stack log of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.2535"></a>
<span class="sourceLineNo">2536</span>     *<a name="line.2536"></a>
<span class="sourceLineNo">2537</span>     * @param level the logging level<a name="line.2537"></a>
<span class="sourceLineNo">2538</span>     * @param marker the marker data specific to this log statement<a name="line.2538"></a>
<span class="sourceLineNo">2539</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.2539"></a>
<span class="sourceLineNo">2540</span>     *            message factory.<a name="line.2540"></a>
<span class="sourceLineNo">2541</span>     * @param t A Throwable or null.<a name="line.2541"></a>
<span class="sourceLineNo">2542</span>     * @since 2.4<a name="line.2542"></a>
<span class="sourceLineNo">2543</span>     */<a name="line.2543"></a>
<span class="sourceLineNo">2544</span>    void log(Level level, Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.2544"></a>
<span class="sourceLineNo">2545</span><a name="line.2545"></a>
<span class="sourceLineNo">2546</span>    /**<a name="line.2546"></a>
<span class="sourceLineNo">2547</span>     * Logs a message with the specific Marker at the given level.<a name="line.2547"></a>
<span class="sourceLineNo">2548</span>     *<a name="line.2548"></a>
<span class="sourceLineNo">2549</span>     * @param level the logging level<a name="line.2549"></a>
<span class="sourceLineNo">2550</span>     * @param msg the message string to be logged<a name="line.2550"></a>
<span class="sourceLineNo">2551</span>     */<a name="line.2551"></a>
<span class="sourceLineNo">2552</span>    void log(Level level, Message msg);<a name="line.2552"></a>
<span class="sourceLineNo">2553</span><a name="line.2553"></a>
<span class="sourceLineNo">2554</span>    /**<a name="line.2554"></a>
<span class="sourceLineNo">2555</span>     * Logs a message with the specific Marker at the given level.<a name="line.2555"></a>
<span class="sourceLineNo">2556</span>     *<a name="line.2556"></a>
<span class="sourceLineNo">2557</span>     * @param level the logging level<a name="line.2557"></a>
<span class="sourceLineNo">2558</span>     * @param msg the message string to be logged<a name="line.2558"></a>
<span class="sourceLineNo">2559</span>     * @param t A Throwable or null.<a name="line.2559"></a>
<span class="sourceLineNo">2560</span>     */<a name="line.2560"></a>
<span class="sourceLineNo">2561</span>    void log(Level level, Message msg, Throwable t);<a name="line.2561"></a>
<span class="sourceLineNo">2562</span><a name="line.2562"></a>
<span class="sourceLineNo">2563</span>    /**<a name="line.2563"></a>
<span class="sourceLineNo">2564</span>     * Logs a message which is only to be constructed if the logging level is the specified level. The<a name="line.2564"></a>
<span class="sourceLineNo">2565</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.2565"></a>
<span class="sourceLineNo">2566</span>     *<a name="line.2566"></a>
<span class="sourceLineNo">2567</span>     * @param level the logging level<a name="line.2567"></a>
<span class="sourceLineNo">2568</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.2568"></a>
<span class="sourceLineNo">2569</span>     * @since 2.4<a name="line.2569"></a>
<span class="sourceLineNo">2570</span>     */<a name="line.2570"></a>
<span class="sourceLineNo">2571</span>    void log(Level level, MessageSupplier msgSupplier);<a name="line.2571"></a>
<span class="sourceLineNo">2572</span><a name="line.2572"></a>
<span class="sourceLineNo">2573</span>    /**<a name="line.2573"></a>
<span class="sourceLineNo">2574</span>     * Logs a message (only to be constructed if the logging level is the specified level) including the stack log of<a name="line.2574"></a>
<span class="sourceLineNo">2575</span>     * the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may not use the<a name="line.2575"></a>
<span class="sourceLineNo">2576</span>     * {@link MessageFactory} to construct the {@code Message}.<a name="line.2576"></a>
<span class="sourceLineNo">2577</span>     *<a name="line.2577"></a>
<span class="sourceLineNo">2578</span>     * @param level the logging level<a name="line.2578"></a>
<span class="sourceLineNo">2579</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.2579"></a>
<span class="sourceLineNo">2580</span>     * @param t the exception to log, including its stack log.<a name="line.2580"></a>
<span class="sourceLineNo">2581</span>     * @since 2.4<a name="line.2581"></a>
<span class="sourceLineNo">2582</span>     */<a name="line.2582"></a>
<span class="sourceLineNo">2583</span>    void log(Level level, MessageSupplier msgSupplier, Throwable t);<a name="line.2583"></a>
<span class="sourceLineNo">2584</span><a name="line.2584"></a>
<span class="sourceLineNo">2585</span>    /**<a name="line.2585"></a>
<span class="sourceLineNo">2586</span>     * Logs a message CharSequence with the given level.<a name="line.2586"></a>
<span class="sourceLineNo">2587</span>     *<a name="line.2587"></a>
<span class="sourceLineNo">2588</span>     * @param level the logging level<a name="line.2588"></a>
<span class="sourceLineNo">2589</span>     * @param message the message CharSequence to log.<a name="line.2589"></a>
<span class="sourceLineNo">2590</span>     */<a name="line.2590"></a>
<span class="sourceLineNo">2591</span>    void log(Level level, CharSequence message);<a name="line.2591"></a>
<span class="sourceLineNo">2592</span><a name="line.2592"></a>
<span class="sourceLineNo">2593</span>    /**<a name="line.2593"></a>
<span class="sourceLineNo">2594</span>     * Logs a CharSequence at the given level including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as<a name="line.2594"></a>
<span class="sourceLineNo">2595</span>     * parameter.<a name="line.2595"></a>
<span class="sourceLineNo">2596</span>     *<a name="line.2596"></a>
<span class="sourceLineNo">2597</span>     * @param level the logging level<a name="line.2597"></a>
<span class="sourceLineNo">2598</span>     * @param message the message CharSequence to log.<a name="line.2598"></a>
<span class="sourceLineNo">2599</span>     * @param t the exception to log, including its stack trace.<a name="line.2599"></a>
<span class="sourceLineNo">2600</span>     */<a name="line.2600"></a>
<span class="sourceLineNo">2601</span>    void log(Level level, CharSequence message, Throwable t);<a name="line.2601"></a>
<span class="sourceLineNo">2602</span><a name="line.2602"></a>
<span class="sourceLineNo">2603</span>    /**<a name="line.2603"></a>
<span class="sourceLineNo">2604</span>     * Logs a message object with the given level.<a name="line.2604"></a>
<span class="sourceLineNo">2605</span>     *<a name="line.2605"></a>
<span class="sourceLineNo">2606</span>     * @param level the logging level<a name="line.2606"></a>
<span class="sourceLineNo">2607</span>     * @param message the message object to log.<a name="line.2607"></a>
<span class="sourceLineNo">2608</span>     */<a name="line.2608"></a>
<span class="sourceLineNo">2609</span>    void log(Level level, Object message);<a name="line.2609"></a>
<span class="sourceLineNo">2610</span><a name="line.2610"></a>
<span class="sourceLineNo">2611</span>    /**<a name="line.2611"></a>
<span class="sourceLineNo">2612</span>     * Logs a message at the given level including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as<a name="line.2612"></a>
<span class="sourceLineNo">2613</span>     * parameter.<a name="line.2613"></a>
<span class="sourceLineNo">2614</span>     *<a name="line.2614"></a>
<span class="sourceLineNo">2615</span>     * @param level the logging level<a name="line.2615"></a>
<span class="sourceLineNo">2616</span>     * @param message the message to log.<a name="line.2616"></a>
<span class="sourceLineNo">2617</span>     * @param t the exception to log, including its stack trace.<a name="line.2617"></a>
<span class="sourceLineNo">2618</span>     */<a name="line.2618"></a>
<span class="sourceLineNo">2619</span>    void log(Level level, Object message, Throwable t);<a name="line.2619"></a>
<span class="sourceLineNo">2620</span><a name="line.2620"></a>
<span class="sourceLineNo">2621</span>    /**<a name="line.2621"></a>
<span class="sourceLineNo">2622</span>     * Logs a message object with the given level.<a name="line.2622"></a>
<span class="sourceLineNo">2623</span>     *<a name="line.2623"></a>
<span class="sourceLineNo">2624</span>     * @param level the logging level<a name="line.2624"></a>
<span class="sourceLineNo">2625</span>     * @param message the message string to log.<a name="line.2625"></a>
<span class="sourceLineNo">2626</span>     */<a name="line.2626"></a>
<span class="sourceLineNo">2627</span>    void log(Level level, String message);<a name="line.2627"></a>
<span class="sourceLineNo">2628</span><a name="line.2628"></a>
<span class="sourceLineNo">2629</span>    /**<a name="line.2629"></a>
<span class="sourceLineNo">2630</span>     * Logs a message with parameters at the given level.<a name="line.2630"></a>
<span class="sourceLineNo">2631</span>     *<a name="line.2631"></a>
<span class="sourceLineNo">2632</span>     * @param level the logging level<a name="line.2632"></a>
<span class="sourceLineNo">2633</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2633"></a>
<span class="sourceLineNo">2634</span>     * @param params parameters to the message.<a name="line.2634"></a>
<span class="sourceLineNo">2635</span>     * @see #getMessageFactory()<a name="line.2635"></a>
<span class="sourceLineNo">2636</span>     */<a name="line.2636"></a>
<span class="sourceLineNo">2637</span>    void log(Level level, String message, Object... params);<a name="line.2637"></a>
<span class="sourceLineNo">2638</span><a name="line.2638"></a>
<span class="sourceLineNo">2639</span>    /**<a name="line.2639"></a>
<span class="sourceLineNo">2640</span>     * Logs a message with parameters which are only to be constructed if the logging level is the specified level.<a name="line.2640"></a>
<span class="sourceLineNo">2641</span>     *<a name="line.2641"></a>
<span class="sourceLineNo">2642</span>     * @param level the logging level<a name="line.2642"></a>
<span class="sourceLineNo">2643</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2643"></a>
<span class="sourceLineNo">2644</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.2644"></a>
<span class="sourceLineNo">2645</span>     * @since 2.4<a name="line.2645"></a>
<span class="sourceLineNo">2646</span>     */<a name="line.2646"></a>
<span class="sourceLineNo">2647</span>    void log(Level level, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.2647"></a>
<span class="sourceLineNo">2648</span><a name="line.2648"></a>
<span class="sourceLineNo">2649</span>    /**<a name="line.2649"></a>
<span class="sourceLineNo">2650</span>     * Logs a message at the given level including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as<a name="line.2650"></a>
<span class="sourceLineNo">2651</span>     * parameter.<a name="line.2651"></a>
<span class="sourceLineNo">2652</span>     *<a name="line.2652"></a>
<span class="sourceLineNo">2653</span>     * @param level the logging level<a name="line.2653"></a>
<span class="sourceLineNo">2654</span>     * @param message the message to log.<a name="line.2654"></a>
<span class="sourceLineNo">2655</span>     * @param t the exception to log, including its stack trace.<a name="line.2655"></a>
<span class="sourceLineNo">2656</span>     */<a name="line.2656"></a>
<span class="sourceLineNo">2657</span>    void log(Level level, String message, Throwable t);<a name="line.2657"></a>
<span class="sourceLineNo">2658</span><a name="line.2658"></a>
<span class="sourceLineNo">2659</span>    /**<a name="line.2659"></a>
<span class="sourceLineNo">2660</span>     * Logs a message which is only to be constructed if the logging level is the specified level.<a name="line.2660"></a>
<span class="sourceLineNo">2661</span>     *<a name="line.2661"></a>
<span class="sourceLineNo">2662</span>     * @param level the logging level<a name="line.2662"></a>
<span class="sourceLineNo">2663</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.2663"></a>
<span class="sourceLineNo">2664</span>     *            message factory.<a name="line.2664"></a>
<span class="sourceLineNo">2665</span>     * @since 2.4<a name="line.2665"></a>
<span class="sourceLineNo">2666</span>     */<a name="line.2666"></a>
<span class="sourceLineNo">2667</span>    void log(Level level, Supplier&lt;?&gt; msgSupplier);<a name="line.2667"></a>
<span class="sourceLineNo">2668</span><a name="line.2668"></a>
<span class="sourceLineNo">2669</span>    /**<a name="line.2669"></a>
<span class="sourceLineNo">2670</span>     * Logs a message (only to be constructed if the logging level is the specified level) including the stack log of<a name="line.2670"></a>
<span class="sourceLineNo">2671</span>     * the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.2671"></a>
<span class="sourceLineNo">2672</span>     *<a name="line.2672"></a>
<span class="sourceLineNo">2673</span>     * @param level the logging level<a name="line.2673"></a>
<span class="sourceLineNo">2674</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.2674"></a>
<span class="sourceLineNo">2675</span>     *            message factory.<a name="line.2675"></a>
<span class="sourceLineNo">2676</span>     * @param t the exception to log, including its stack log.<a name="line.2676"></a>
<span class="sourceLineNo">2677</span>     * @since 2.4<a name="line.2677"></a>
<span class="sourceLineNo">2678</span>     */<a name="line.2678"></a>
<span class="sourceLineNo">2679</span>    void log(Level level, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.2679"></a>
<span class="sourceLineNo">2680</span><a name="line.2680"></a>
<span class="sourceLineNo">2681</span>    /**<a name="line.2681"></a>
<span class="sourceLineNo">2682</span>     * Logs a message with parameters at the specified level.<a name="line.2682"></a>
<span class="sourceLineNo">2683</span>     *<a name="line.2683"></a>
<span class="sourceLineNo">2684</span>     * @param level the logging level<a name="line.2684"></a>
<span class="sourceLineNo">2685</span>     * @param marker the marker data specific to this log statement<a name="line.2685"></a>
<span class="sourceLineNo">2686</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2686"></a>
<span class="sourceLineNo">2687</span>     * @param p0 parameter to the message.<a name="line.2687"></a>
<span class="sourceLineNo">2688</span>     */<a name="line.2688"></a>
<span class="sourceLineNo">2689</span>    void log(Level level, Marker marker, String message, Object p0);<a name="line.2689"></a>
<span class="sourceLineNo">2690</span><a name="line.2690"></a>
<span class="sourceLineNo">2691</span>    /**<a name="line.2691"></a>
<span class="sourceLineNo">2692</span>     * Logs a message with parameters at the specified level.<a name="line.2692"></a>
<span class="sourceLineNo">2693</span>     *<a name="line.2693"></a>
<span class="sourceLineNo">2694</span>     * @param level the logging level<a name="line.2694"></a>
<span class="sourceLineNo">2695</span>     * @param marker the marker data specific to this log statement<a name="line.2695"></a>
<span class="sourceLineNo">2696</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2696"></a>
<span class="sourceLineNo">2697</span>     * @param p0 parameter to the message.<a name="line.2697"></a>
<span class="sourceLineNo">2698</span>     * @param p1 parameter to the message.<a name="line.2698"></a>
<span class="sourceLineNo">2699</span>     */<a name="line.2699"></a>
<span class="sourceLineNo">2700</span>    void log(Level level, Marker marker, String message, Object p0, Object p1);<a name="line.2700"></a>
<span class="sourceLineNo">2701</span><a name="line.2701"></a>
<span class="sourceLineNo">2702</span>    /**<a name="line.2702"></a>
<span class="sourceLineNo">2703</span>     * Logs a message with parameters at the specified level.<a name="line.2703"></a>
<span class="sourceLineNo">2704</span>     *<a name="line.2704"></a>
<span class="sourceLineNo">2705</span>     * @param level the logging level<a name="line.2705"></a>
<span class="sourceLineNo">2706</span>     * @param marker the marker data specific to this log statement<a name="line.2706"></a>
<span class="sourceLineNo">2707</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2707"></a>
<span class="sourceLineNo">2708</span>     * @param p0 parameter to the message.<a name="line.2708"></a>
<span class="sourceLineNo">2709</span>     * @param p1 parameter to the message.<a name="line.2709"></a>
<span class="sourceLineNo">2710</span>     * @param p2 parameter to the message.<a name="line.2710"></a>
<span class="sourceLineNo">2711</span>     */<a name="line.2711"></a>
<span class="sourceLineNo">2712</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.2712"></a>
<span class="sourceLineNo">2713</span><a name="line.2713"></a>
<span class="sourceLineNo">2714</span>    /**<a name="line.2714"></a>
<span class="sourceLineNo">2715</span>     * Logs a message with parameters at the specified level.<a name="line.2715"></a>
<span class="sourceLineNo">2716</span>     *<a name="line.2716"></a>
<span class="sourceLineNo">2717</span>     * @param level the logging level<a name="line.2717"></a>
<span class="sourceLineNo">2718</span>     * @param marker the marker data specific to this log statement<a name="line.2718"></a>
<span class="sourceLineNo">2719</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2719"></a>
<span class="sourceLineNo">2720</span>     * @param p0 parameter to the message.<a name="line.2720"></a>
<span class="sourceLineNo">2721</span>     * @param p1 parameter to the message.<a name="line.2721"></a>
<span class="sourceLineNo">2722</span>     * @param p2 parameter to the message.<a name="line.2722"></a>
<span class="sourceLineNo">2723</span>     * @param p3 parameter to the message.<a name="line.2723"></a>
<span class="sourceLineNo">2724</span>     */<a name="line.2724"></a>
<span class="sourceLineNo">2725</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.2725"></a>
<span class="sourceLineNo">2726</span><a name="line.2726"></a>
<span class="sourceLineNo">2727</span>    /**<a name="line.2727"></a>
<span class="sourceLineNo">2728</span>     * Logs a message with parameters at the specified level.<a name="line.2728"></a>
<span class="sourceLineNo">2729</span>     *<a name="line.2729"></a>
<span class="sourceLineNo">2730</span>     * @param level the logging level<a name="line.2730"></a>
<span class="sourceLineNo">2731</span>     * @param marker the marker data specific to this log statement<a name="line.2731"></a>
<span class="sourceLineNo">2732</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2732"></a>
<span class="sourceLineNo">2733</span>     * @param p0 parameter to the message.<a name="line.2733"></a>
<span class="sourceLineNo">2734</span>     * @param p1 parameter to the message.<a name="line.2734"></a>
<span class="sourceLineNo">2735</span>     * @param p2 parameter to the message.<a name="line.2735"></a>
<span class="sourceLineNo">2736</span>     * @param p3 parameter to the message.<a name="line.2736"></a>
<span class="sourceLineNo">2737</span>     * @param p4 parameter to the message.<a name="line.2737"></a>
<span class="sourceLineNo">2738</span>     */<a name="line.2738"></a>
<span class="sourceLineNo">2739</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.2739"></a>
<span class="sourceLineNo">2740</span><a name="line.2740"></a>
<span class="sourceLineNo">2741</span>    /**<a name="line.2741"></a>
<span class="sourceLineNo">2742</span>     * Logs a message with parameters at the specified level.<a name="line.2742"></a>
<span class="sourceLineNo">2743</span>     *<a name="line.2743"></a>
<span class="sourceLineNo">2744</span>     * @param level the logging level<a name="line.2744"></a>
<span class="sourceLineNo">2745</span>     * @param marker the marker data specific to this log statement<a name="line.2745"></a>
<span class="sourceLineNo">2746</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2746"></a>
<span class="sourceLineNo">2747</span>     * @param p0 parameter to the message.<a name="line.2747"></a>
<span class="sourceLineNo">2748</span>     * @param p1 parameter to the message.<a name="line.2748"></a>
<span class="sourceLineNo">2749</span>     * @param p2 parameter to the message.<a name="line.2749"></a>
<span class="sourceLineNo">2750</span>     * @param p3 parameter to the message.<a name="line.2750"></a>
<span class="sourceLineNo">2751</span>     * @param p4 parameter to the message.<a name="line.2751"></a>
<span class="sourceLineNo">2752</span>     * @param p5 parameter to the message.<a name="line.2752"></a>
<span class="sourceLineNo">2753</span>     */<a name="line.2753"></a>
<span class="sourceLineNo">2754</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.2754"></a>
<span class="sourceLineNo">2755</span><a name="line.2755"></a>
<span class="sourceLineNo">2756</span>    /**<a name="line.2756"></a>
<span class="sourceLineNo">2757</span>     * Logs a message with parameters at the specified level.<a name="line.2757"></a>
<span class="sourceLineNo">2758</span>     *<a name="line.2758"></a>
<span class="sourceLineNo">2759</span>     * @param level the logging level<a name="line.2759"></a>
<span class="sourceLineNo">2760</span>     * @param marker the marker data specific to this log statement<a name="line.2760"></a>
<span class="sourceLineNo">2761</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2761"></a>
<span class="sourceLineNo">2762</span>     * @param p0 parameter to the message.<a name="line.2762"></a>
<span class="sourceLineNo">2763</span>     * @param p1 parameter to the message.<a name="line.2763"></a>
<span class="sourceLineNo">2764</span>     * @param p2 parameter to the message.<a name="line.2764"></a>
<span class="sourceLineNo">2765</span>     * @param p3 parameter to the message.<a name="line.2765"></a>
<span class="sourceLineNo">2766</span>     * @param p4 parameter to the message.<a name="line.2766"></a>
<span class="sourceLineNo">2767</span>     * @param p5 parameter to the message.<a name="line.2767"></a>
<span class="sourceLineNo">2768</span>     * @param p6 parameter to the message.<a name="line.2768"></a>
<span class="sourceLineNo">2769</span>     */<a name="line.2769"></a>
<span class="sourceLineNo">2770</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.2770"></a>
<span class="sourceLineNo">2771</span>            Object p6);<a name="line.2771"></a>
<span class="sourceLineNo">2772</span><a name="line.2772"></a>
<span class="sourceLineNo">2773</span>    /**<a name="line.2773"></a>
<span class="sourceLineNo">2774</span>     * Logs a message with parameters at the specified level.<a name="line.2774"></a>
<span class="sourceLineNo">2775</span>     *<a name="line.2775"></a>
<span class="sourceLineNo">2776</span>     * @param level the logging level<a name="line.2776"></a>
<span class="sourceLineNo">2777</span>     * @param marker the marker data specific to this log statement<a name="line.2777"></a>
<span class="sourceLineNo">2778</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2778"></a>
<span class="sourceLineNo">2779</span>     * @param p0 parameter to the message.<a name="line.2779"></a>
<span class="sourceLineNo">2780</span>     * @param p1 parameter to the message.<a name="line.2780"></a>
<span class="sourceLineNo">2781</span>     * @param p2 parameter to the message.<a name="line.2781"></a>
<span class="sourceLineNo">2782</span>     * @param p3 parameter to the message.<a name="line.2782"></a>
<span class="sourceLineNo">2783</span>     * @param p4 parameter to the message.<a name="line.2783"></a>
<span class="sourceLineNo">2784</span>     * @param p5 parameter to the message.<a name="line.2784"></a>
<span class="sourceLineNo">2785</span>     * @param p6 parameter to the message.<a name="line.2785"></a>
<span class="sourceLineNo">2786</span>     * @param p7 parameter to the message.<a name="line.2786"></a>
<span class="sourceLineNo">2787</span>     */<a name="line.2787"></a>
<span class="sourceLineNo">2788</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.2788"></a>
<span class="sourceLineNo">2789</span>            Object p7);<a name="line.2789"></a>
<span class="sourceLineNo">2790</span><a name="line.2790"></a>
<span class="sourceLineNo">2791</span>    /**<a name="line.2791"></a>
<span class="sourceLineNo">2792</span>     * Logs a message with parameters at the specified level.<a name="line.2792"></a>
<span class="sourceLineNo">2793</span>     *<a name="line.2793"></a>
<span class="sourceLineNo">2794</span>     * @param level the logging level<a name="line.2794"></a>
<span class="sourceLineNo">2795</span>     * @param marker the marker data specific to this log statement<a name="line.2795"></a>
<span class="sourceLineNo">2796</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2796"></a>
<span class="sourceLineNo">2797</span>     * @param p0 parameter to the message.<a name="line.2797"></a>
<span class="sourceLineNo">2798</span>     * @param p1 parameter to the message.<a name="line.2798"></a>
<span class="sourceLineNo">2799</span>     * @param p2 parameter to the message.<a name="line.2799"></a>
<span class="sourceLineNo">2800</span>     * @param p3 parameter to the message.<a name="line.2800"></a>
<span class="sourceLineNo">2801</span>     * @param p4 parameter to the message.<a name="line.2801"></a>
<span class="sourceLineNo">2802</span>     * @param p5 parameter to the message.<a name="line.2802"></a>
<span class="sourceLineNo">2803</span>     * @param p6 parameter to the message.<a name="line.2803"></a>
<span class="sourceLineNo">2804</span>     * @param p7 parameter to the message.<a name="line.2804"></a>
<span class="sourceLineNo">2805</span>     * @param p8 parameter to the message.<a name="line.2805"></a>
<span class="sourceLineNo">2806</span>     */<a name="line.2806"></a>
<span class="sourceLineNo">2807</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.2807"></a>
<span class="sourceLineNo">2808</span>            Object p7, Object p8);<a name="line.2808"></a>
<span class="sourceLineNo">2809</span><a name="line.2809"></a>
<span class="sourceLineNo">2810</span>    /**<a name="line.2810"></a>
<span class="sourceLineNo">2811</span>     * Logs a message with parameters at the specified level.<a name="line.2811"></a>
<span class="sourceLineNo">2812</span>     *<a name="line.2812"></a>
<span class="sourceLineNo">2813</span>     * @param level the logging level<a name="line.2813"></a>
<span class="sourceLineNo">2814</span>     * @param marker the marker data specific to this log statement<a name="line.2814"></a>
<span class="sourceLineNo">2815</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2815"></a>
<span class="sourceLineNo">2816</span>     * @param p0 parameter to the message.<a name="line.2816"></a>
<span class="sourceLineNo">2817</span>     * @param p1 parameter to the message.<a name="line.2817"></a>
<span class="sourceLineNo">2818</span>     * @param p2 parameter to the message.<a name="line.2818"></a>
<span class="sourceLineNo">2819</span>     * @param p3 parameter to the message.<a name="line.2819"></a>
<span class="sourceLineNo">2820</span>     * @param p4 parameter to the message.<a name="line.2820"></a>
<span class="sourceLineNo">2821</span>     * @param p5 parameter to the message.<a name="line.2821"></a>
<span class="sourceLineNo">2822</span>     * @param p6 parameter to the message.<a name="line.2822"></a>
<span class="sourceLineNo">2823</span>     * @param p7 parameter to the message.<a name="line.2823"></a>
<span class="sourceLineNo">2824</span>     * @param p8 parameter to the message.<a name="line.2824"></a>
<span class="sourceLineNo">2825</span>     * @param p9 parameter to the message.<a name="line.2825"></a>
<span class="sourceLineNo">2826</span>     */<a name="line.2826"></a>
<span class="sourceLineNo">2827</span>    void log(Level level, Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.2827"></a>
<span class="sourceLineNo">2828</span>            Object p7, Object p8, Object p9);<a name="line.2828"></a>
<span class="sourceLineNo">2829</span><a name="line.2829"></a>
<span class="sourceLineNo">2830</span>    /**<a name="line.2830"></a>
<span class="sourceLineNo">2831</span>     * Logs a message with parameters at the specified level.<a name="line.2831"></a>
<span class="sourceLineNo">2832</span>     *<a name="line.2832"></a>
<span class="sourceLineNo">2833</span>     * @param level the logging level<a name="line.2833"></a>
<span class="sourceLineNo">2834</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2834"></a>
<span class="sourceLineNo">2835</span>     * @param p0 parameter to the message.<a name="line.2835"></a>
<span class="sourceLineNo">2836</span>     */<a name="line.2836"></a>
<span class="sourceLineNo">2837</span>    void log(Level level, String message, Object p0);<a name="line.2837"></a>
<span class="sourceLineNo">2838</span><a name="line.2838"></a>
<span class="sourceLineNo">2839</span>    /**<a name="line.2839"></a>
<span class="sourceLineNo">2840</span>     * Logs a message with parameters at the specified level.<a name="line.2840"></a>
<span class="sourceLineNo">2841</span>     *<a name="line.2841"></a>
<span class="sourceLineNo">2842</span>     * @param level the logging level<a name="line.2842"></a>
<span class="sourceLineNo">2843</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2843"></a>
<span class="sourceLineNo">2844</span>     * @param p0 parameter to the message.<a name="line.2844"></a>
<span class="sourceLineNo">2845</span>     * @param p1 parameter to the message.<a name="line.2845"></a>
<span class="sourceLineNo">2846</span>     */<a name="line.2846"></a>
<span class="sourceLineNo">2847</span>    void log(Level level, String message, Object p0, Object p1);<a name="line.2847"></a>
<span class="sourceLineNo">2848</span><a name="line.2848"></a>
<span class="sourceLineNo">2849</span>    /**<a name="line.2849"></a>
<span class="sourceLineNo">2850</span>     * Logs a message with parameters at the specified level.<a name="line.2850"></a>
<span class="sourceLineNo">2851</span>     *<a name="line.2851"></a>
<span class="sourceLineNo">2852</span>     * @param level the logging level<a name="line.2852"></a>
<span class="sourceLineNo">2853</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2853"></a>
<span class="sourceLineNo">2854</span>     * @param p0 parameter to the message.<a name="line.2854"></a>
<span class="sourceLineNo">2855</span>     * @param p1 parameter to the message.<a name="line.2855"></a>
<span class="sourceLineNo">2856</span>     * @param p2 parameter to the message.<a name="line.2856"></a>
<span class="sourceLineNo">2857</span>     */<a name="line.2857"></a>
<span class="sourceLineNo">2858</span>    void log(Level level, String message, Object p0, Object p1, Object p2);<a name="line.2858"></a>
<span class="sourceLineNo">2859</span><a name="line.2859"></a>
<span class="sourceLineNo">2860</span>    /**<a name="line.2860"></a>
<span class="sourceLineNo">2861</span>     * Logs a message with parameters at the specified level.<a name="line.2861"></a>
<span class="sourceLineNo">2862</span>     *<a name="line.2862"></a>
<span class="sourceLineNo">2863</span>     * @param level the logging level<a name="line.2863"></a>
<span class="sourceLineNo">2864</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2864"></a>
<span class="sourceLineNo">2865</span>     * @param p0 parameter to the message.<a name="line.2865"></a>
<span class="sourceLineNo">2866</span>     * @param p1 parameter to the message.<a name="line.2866"></a>
<span class="sourceLineNo">2867</span>     * @param p2 parameter to the message.<a name="line.2867"></a>
<span class="sourceLineNo">2868</span>     * @param p3 parameter to the message.<a name="line.2868"></a>
<span class="sourceLineNo">2869</span>     */<a name="line.2869"></a>
<span class="sourceLineNo">2870</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.2870"></a>
<span class="sourceLineNo">2871</span><a name="line.2871"></a>
<span class="sourceLineNo">2872</span>    /**<a name="line.2872"></a>
<span class="sourceLineNo">2873</span>     * Logs a message with parameters at the specified level.<a name="line.2873"></a>
<span class="sourceLineNo">2874</span>     *<a name="line.2874"></a>
<span class="sourceLineNo">2875</span>     * @param level the logging level<a name="line.2875"></a>
<span class="sourceLineNo">2876</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2876"></a>
<span class="sourceLineNo">2877</span>     * @param p0 parameter to the message.<a name="line.2877"></a>
<span class="sourceLineNo">2878</span>     * @param p1 parameter to the message.<a name="line.2878"></a>
<span class="sourceLineNo">2879</span>     * @param p2 parameter to the message.<a name="line.2879"></a>
<span class="sourceLineNo">2880</span>     * @param p3 parameter to the message.<a name="line.2880"></a>
<span class="sourceLineNo">2881</span>     * @param p4 parameter to the message.<a name="line.2881"></a>
<span class="sourceLineNo">2882</span>     */<a name="line.2882"></a>
<span class="sourceLineNo">2883</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.2883"></a>
<span class="sourceLineNo">2884</span><a name="line.2884"></a>
<span class="sourceLineNo">2885</span>    /**<a name="line.2885"></a>
<span class="sourceLineNo">2886</span>     * Logs a message with parameters at the specified level.<a name="line.2886"></a>
<span class="sourceLineNo">2887</span>     *<a name="line.2887"></a>
<span class="sourceLineNo">2888</span>     * @param level the logging level<a name="line.2888"></a>
<span class="sourceLineNo">2889</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2889"></a>
<span class="sourceLineNo">2890</span>     * @param p0 parameter to the message.<a name="line.2890"></a>
<span class="sourceLineNo">2891</span>     * @param p1 parameter to the message.<a name="line.2891"></a>
<span class="sourceLineNo">2892</span>     * @param p2 parameter to the message.<a name="line.2892"></a>
<span class="sourceLineNo">2893</span>     * @param p3 parameter to the message.<a name="line.2893"></a>
<span class="sourceLineNo">2894</span>     * @param p4 parameter to the message.<a name="line.2894"></a>
<span class="sourceLineNo">2895</span>     * @param p5 parameter to the message.<a name="line.2895"></a>
<span class="sourceLineNo">2896</span>     */<a name="line.2896"></a>
<span class="sourceLineNo">2897</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.2897"></a>
<span class="sourceLineNo">2898</span><a name="line.2898"></a>
<span class="sourceLineNo">2899</span>    /**<a name="line.2899"></a>
<span class="sourceLineNo">2900</span>     * Logs a message with parameters at the specified level.<a name="line.2900"></a>
<span class="sourceLineNo">2901</span>     *<a name="line.2901"></a>
<span class="sourceLineNo">2902</span>     * @param level the logging level<a name="line.2902"></a>
<span class="sourceLineNo">2903</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2903"></a>
<span class="sourceLineNo">2904</span>     * @param p0 parameter to the message.<a name="line.2904"></a>
<span class="sourceLineNo">2905</span>     * @param p1 parameter to the message.<a name="line.2905"></a>
<span class="sourceLineNo">2906</span>     * @param p2 parameter to the message.<a name="line.2906"></a>
<span class="sourceLineNo">2907</span>     * @param p3 parameter to the message.<a name="line.2907"></a>
<span class="sourceLineNo">2908</span>     * @param p4 parameter to the message.<a name="line.2908"></a>
<span class="sourceLineNo">2909</span>     * @param p5 parameter to the message.<a name="line.2909"></a>
<span class="sourceLineNo">2910</span>     * @param p6 parameter to the message.<a name="line.2910"></a>
<span class="sourceLineNo">2911</span>     */<a name="line.2911"></a>
<span class="sourceLineNo">2912</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.2912"></a>
<span class="sourceLineNo">2913</span><a name="line.2913"></a>
<span class="sourceLineNo">2914</span>    /**<a name="line.2914"></a>
<span class="sourceLineNo">2915</span>     * Logs a message with parameters at the specified level.<a name="line.2915"></a>
<span class="sourceLineNo">2916</span>     *<a name="line.2916"></a>
<span class="sourceLineNo">2917</span>     * @param level the logging level<a name="line.2917"></a>
<span class="sourceLineNo">2918</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2918"></a>
<span class="sourceLineNo">2919</span>     * @param p0 parameter to the message.<a name="line.2919"></a>
<span class="sourceLineNo">2920</span>     * @param p1 parameter to the message.<a name="line.2920"></a>
<span class="sourceLineNo">2921</span>     * @param p2 parameter to the message.<a name="line.2921"></a>
<span class="sourceLineNo">2922</span>     * @param p3 parameter to the message.<a name="line.2922"></a>
<span class="sourceLineNo">2923</span>     * @param p4 parameter to the message.<a name="line.2923"></a>
<span class="sourceLineNo">2924</span>     * @param p5 parameter to the message.<a name="line.2924"></a>
<span class="sourceLineNo">2925</span>     * @param p6 parameter to the message.<a name="line.2925"></a>
<span class="sourceLineNo">2926</span>     * @param p7 parameter to the message.<a name="line.2926"></a>
<span class="sourceLineNo">2927</span>     */<a name="line.2927"></a>
<span class="sourceLineNo">2928</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.2928"></a>
<span class="sourceLineNo">2929</span><a name="line.2929"></a>
<span class="sourceLineNo">2930</span>    /**<a name="line.2930"></a>
<span class="sourceLineNo">2931</span>     * Logs a message with parameters at the specified level.<a name="line.2931"></a>
<span class="sourceLineNo">2932</span>     *<a name="line.2932"></a>
<span class="sourceLineNo">2933</span>     * @param level the logging level<a name="line.2933"></a>
<span class="sourceLineNo">2934</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2934"></a>
<span class="sourceLineNo">2935</span>     * @param p0 parameter to the message.<a name="line.2935"></a>
<span class="sourceLineNo">2936</span>     * @param p1 parameter to the message.<a name="line.2936"></a>
<span class="sourceLineNo">2937</span>     * @param p2 parameter to the message.<a name="line.2937"></a>
<span class="sourceLineNo">2938</span>     * @param p3 parameter to the message.<a name="line.2938"></a>
<span class="sourceLineNo">2939</span>     * @param p4 parameter to the message.<a name="line.2939"></a>
<span class="sourceLineNo">2940</span>     * @param p5 parameter to the message.<a name="line.2940"></a>
<span class="sourceLineNo">2941</span>     * @param p6 parameter to the message.<a name="line.2941"></a>
<span class="sourceLineNo">2942</span>     * @param p7 parameter to the message.<a name="line.2942"></a>
<span class="sourceLineNo">2943</span>     * @param p8 parameter to the message.<a name="line.2943"></a>
<span class="sourceLineNo">2944</span>     */<a name="line.2944"></a>
<span class="sourceLineNo">2945</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.2945"></a>
<span class="sourceLineNo">2946</span>            Object p8);<a name="line.2946"></a>
<span class="sourceLineNo">2947</span><a name="line.2947"></a>
<span class="sourceLineNo">2948</span>    /**<a name="line.2948"></a>
<span class="sourceLineNo">2949</span>     * Logs a message with parameters at the specified level.<a name="line.2949"></a>
<span class="sourceLineNo">2950</span>     *<a name="line.2950"></a>
<span class="sourceLineNo">2951</span>     * @param level the logging level<a name="line.2951"></a>
<span class="sourceLineNo">2952</span>     * @param message the message to log; the format depends on the message factory.<a name="line.2952"></a>
<span class="sourceLineNo">2953</span>     * @param p0 parameter to the message.<a name="line.2953"></a>
<span class="sourceLineNo">2954</span>     * @param p1 parameter to the message.<a name="line.2954"></a>
<span class="sourceLineNo">2955</span>     * @param p2 parameter to the message.<a name="line.2955"></a>
<span class="sourceLineNo">2956</span>     * @param p3 parameter to the message.<a name="line.2956"></a>
<span class="sourceLineNo">2957</span>     * @param p4 parameter to the message.<a name="line.2957"></a>
<span class="sourceLineNo">2958</span>     * @param p5 parameter to the message.<a name="line.2958"></a>
<span class="sourceLineNo">2959</span>     * @param p6 parameter to the message.<a name="line.2959"></a>
<span class="sourceLineNo">2960</span>     * @param p7 parameter to the message.<a name="line.2960"></a>
<span class="sourceLineNo">2961</span>     * @param p8 parameter to the message.<a name="line.2961"></a>
<span class="sourceLineNo">2962</span>     * @param p9 parameter to the message.<a name="line.2962"></a>
<span class="sourceLineNo">2963</span>     */<a name="line.2963"></a>
<span class="sourceLineNo">2964</span>    void log(Level level, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.2964"></a>
<span class="sourceLineNo">2965</span>            Object p8, Object p9);<a name="line.2965"></a>
<span class="sourceLineNo">2966</span><a name="line.2966"></a>
<span class="sourceLineNo">2967</span>    /**<a name="line.2967"></a>
<span class="sourceLineNo">2968</span>     * Logs a formatted message using the specified format string and arguments.<a name="line.2968"></a>
<span class="sourceLineNo">2969</span>     *<a name="line.2969"></a>
<span class="sourceLineNo">2970</span>     * @param level The logging Level.<a name="line.2970"></a>
<span class="sourceLineNo">2971</span>     * @param marker the marker data specific to this log statement.<a name="line.2971"></a>
<span class="sourceLineNo">2972</span>     * @param format The format String.<a name="line.2972"></a>
<span class="sourceLineNo">2973</span>     * @param params Arguments specified by the format.<a name="line.2973"></a>
<span class="sourceLineNo">2974</span>     */<a name="line.2974"></a>
<span class="sourceLineNo">2975</span>    void printf(Level level, Marker marker, String format, Object... params);<a name="line.2975"></a>
<span class="sourceLineNo">2976</span><a name="line.2976"></a>
<span class="sourceLineNo">2977</span>    /**<a name="line.2977"></a>
<span class="sourceLineNo">2978</span>     * Logs a formatted message using the specified format string and arguments.<a name="line.2978"></a>
<span class="sourceLineNo">2979</span>     *<a name="line.2979"></a>
<span class="sourceLineNo">2980</span>     * @param level The logging Level.<a name="line.2980"></a>
<span class="sourceLineNo">2981</span>     * @param format The format String.<a name="line.2981"></a>
<span class="sourceLineNo">2982</span>     * @param params Arguments specified by the format.<a name="line.2982"></a>
<span class="sourceLineNo">2983</span>     */<a name="line.2983"></a>
<span class="sourceLineNo">2984</span>    void printf(Level level, String format, Object... params);<a name="line.2984"></a>
<span class="sourceLineNo">2985</span><a name="line.2985"></a>
<span class="sourceLineNo">2986</span>    /**<a name="line.2986"></a>
<span class="sourceLineNo">2987</span>     * Logs an exception or error to be thrown. This may be coded as:<a name="line.2987"></a>
<span class="sourceLineNo">2988</span>     *<a name="line.2988"></a>
<span class="sourceLineNo">2989</span>     * &lt;pre&gt;<a name="line.2989"></a>
<span class="sourceLineNo">2990</span>     * throw logger.throwing(Level.DEBUG, myException);<a name="line.2990"></a>
<span class="sourceLineNo">2991</span>     * &lt;/pre&gt;<a name="line.2991"></a>
<span class="sourceLineNo">2992</span>     *<a name="line.2992"></a>
<span class="sourceLineNo">2993</span>     * @param &lt;T&gt; the Throwable type.<a name="line.2993"></a>
<span class="sourceLineNo">2994</span>     * @param level The logging Level.<a name="line.2994"></a>
<span class="sourceLineNo">2995</span>     * @param t The Throwable.<a name="line.2995"></a>
<span class="sourceLineNo">2996</span>     * @return the Throwable.<a name="line.2996"></a>
<span class="sourceLineNo">2997</span>     */<a name="line.2997"></a>
<span class="sourceLineNo">2998</span>    &lt;T extends Throwable&gt; T throwing(Level level, T t);<a name="line.2998"></a>
<span class="sourceLineNo">2999</span><a name="line.2999"></a>
<span class="sourceLineNo">3000</span>    /**<a name="line.3000"></a>
<span class="sourceLineNo">3001</span>     * Logs an exception or error to be thrown. This may be coded as:<a name="line.3001"></a>
<span class="sourceLineNo">3002</span>     *<a name="line.3002"></a>
<span class="sourceLineNo">3003</span>     * &lt;pre&gt;<a name="line.3003"></a>
<span class="sourceLineNo">3004</span>     * throw logger.throwing(myException);<a name="line.3004"></a>
<span class="sourceLineNo">3005</span>     * &lt;/pre&gt;<a name="line.3005"></a>
<span class="sourceLineNo">3006</span>     *<a name="line.3006"></a>
<span class="sourceLineNo">3007</span>     * @param &lt;T&gt; the Throwable type.<a name="line.3007"></a>
<span class="sourceLineNo">3008</span>     * @param t The Throwable.<a name="line.3008"></a>
<span class="sourceLineNo">3009</span>     * @return the Throwable.<a name="line.3009"></a>
<span class="sourceLineNo">3010</span>     */<a name="line.3010"></a>
<span class="sourceLineNo">3011</span>    &lt;T extends Throwable&gt; T throwing(T t);<a name="line.3011"></a>
<span class="sourceLineNo">3012</span><a name="line.3012"></a>
<span class="sourceLineNo">3013</span>    /**<a name="line.3013"></a>
<span class="sourceLineNo">3014</span>     * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.<a name="line.3014"></a>
<span class="sourceLineNo">3015</span>     *<a name="line.3015"></a>
<span class="sourceLineNo">3016</span>     * @param marker the marker data specific to this log statement<a name="line.3016"></a>
<span class="sourceLineNo">3017</span>     * @param msg the message string to be logged<a name="line.3017"></a>
<span class="sourceLineNo">3018</span>     */<a name="line.3018"></a>
<span class="sourceLineNo">3019</span>    void trace(Marker marker, Message msg);<a name="line.3019"></a>
<span class="sourceLineNo">3020</span><a name="line.3020"></a>
<span class="sourceLineNo">3021</span>    /**<a name="line.3021"></a>
<span class="sourceLineNo">3022</span>     * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.<a name="line.3022"></a>
<span class="sourceLineNo">3023</span>     *<a name="line.3023"></a>
<span class="sourceLineNo">3024</span>     * @param marker the marker data specific to this log statement<a name="line.3024"></a>
<span class="sourceLineNo">3025</span>     * @param msg the message string to be logged<a name="line.3025"></a>
<span class="sourceLineNo">3026</span>     * @param t A Throwable or null.<a name="line.3026"></a>
<span class="sourceLineNo">3027</span>     */<a name="line.3027"></a>
<span class="sourceLineNo">3028</span>    void trace(Marker marker, Message msg, Throwable t);<a name="line.3028"></a>
<span class="sourceLineNo">3029</span><a name="line.3029"></a>
<span class="sourceLineNo">3030</span>    /**<a name="line.3030"></a>
<span class="sourceLineNo">3031</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level with<a name="line.3031"></a>
<span class="sourceLineNo">3032</span>     * the specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.3032"></a>
<span class="sourceLineNo">3033</span>     * {@code Message}.<a name="line.3033"></a>
<span class="sourceLineNo">3034</span>     *<a name="line.3034"></a>
<span class="sourceLineNo">3035</span>     * @param marker the marker data specific to this log statement<a name="line.3035"></a>
<span class="sourceLineNo">3036</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3036"></a>
<span class="sourceLineNo">3037</span>     * @since 2.4<a name="line.3037"></a>
<span class="sourceLineNo">3038</span>     */<a name="line.3038"></a>
<span class="sourceLineNo">3039</span>    void trace(Marker marker, MessageSupplier msgSupplier);<a name="line.3039"></a>
<span class="sourceLineNo">3040</span><a name="line.3040"></a>
<span class="sourceLineNo">3041</span>    /**<a name="line.3041"></a>
<span class="sourceLineNo">3042</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) with the<a name="line.3042"></a>
<span class="sourceLineNo">3043</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The<a name="line.3043"></a>
<span class="sourceLineNo">3044</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.3044"></a>
<span class="sourceLineNo">3045</span>     *<a name="line.3045"></a>
<span class="sourceLineNo">3046</span>     * @param marker the marker data specific to this log statement<a name="line.3046"></a>
<span class="sourceLineNo">3047</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3047"></a>
<span class="sourceLineNo">3048</span>     * @param t A Throwable or null.<a name="line.3048"></a>
<span class="sourceLineNo">3049</span>     * @since 2.4<a name="line.3049"></a>
<span class="sourceLineNo">3050</span>     */<a name="line.3050"></a>
<span class="sourceLineNo">3051</span>    void trace(Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.3051"></a>
<span class="sourceLineNo">3052</span><a name="line.3052"></a>
<span class="sourceLineNo">3053</span>    /**<a name="line.3053"></a>
<span class="sourceLineNo">3054</span>     * Logs a message CharSequence with the {@link Level#TRACE TRACE} level.<a name="line.3054"></a>
<span class="sourceLineNo">3055</span>     *<a name="line.3055"></a>
<span class="sourceLineNo">3056</span>     * @param marker the marker data specific to this log statement<a name="line.3056"></a>
<span class="sourceLineNo">3057</span>     * @param message the message CharSequence to log.<a name="line.3057"></a>
<span class="sourceLineNo">3058</span>     */<a name="line.3058"></a>
<span class="sourceLineNo">3059</span>    void trace(Marker marker, CharSequence message);<a name="line.3059"></a>
<span class="sourceLineNo">3060</span><a name="line.3060"></a>
<span class="sourceLineNo">3061</span>    /**<a name="line.3061"></a>
<span class="sourceLineNo">3062</span>     * Logs a CharSequence at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}<a name="line.3062"></a>
<span class="sourceLineNo">3063</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3063"></a>
<span class="sourceLineNo">3064</span>     *<a name="line.3064"></a>
<span class="sourceLineNo">3065</span>     * @param marker the marker data specific to this log statement<a name="line.3065"></a>
<span class="sourceLineNo">3066</span>     * @param message the message CharSequence to log.<a name="line.3066"></a>
<span class="sourceLineNo">3067</span>     * @param t the exception to log, including its stack trace.<a name="line.3067"></a>
<span class="sourceLineNo">3068</span>     * @see #debug(String)<a name="line.3068"></a>
<span class="sourceLineNo">3069</span>     */<a name="line.3069"></a>
<span class="sourceLineNo">3070</span>    void trace(Marker marker, CharSequence message, Throwable t);<a name="line.3070"></a>
<span class="sourceLineNo">3071</span><a name="line.3071"></a>
<span class="sourceLineNo">3072</span>    /**<a name="line.3072"></a>
<span class="sourceLineNo">3073</span>     * Logs a message object with the {@link Level#TRACE TRACE} level.<a name="line.3073"></a>
<span class="sourceLineNo">3074</span>     *<a name="line.3074"></a>
<span class="sourceLineNo">3075</span>     * @param marker the marker data specific to this log statement<a name="line.3075"></a>
<span class="sourceLineNo">3076</span>     * @param message the message object to log.<a name="line.3076"></a>
<span class="sourceLineNo">3077</span>     */<a name="line.3077"></a>
<span class="sourceLineNo">3078</span>    void trace(Marker marker, Object message);<a name="line.3078"></a>
<span class="sourceLineNo">3079</span><a name="line.3079"></a>
<span class="sourceLineNo">3080</span>    /**<a name="line.3080"></a>
<span class="sourceLineNo">3081</span>     * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}<a name="line.3081"></a>
<span class="sourceLineNo">3082</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3082"></a>
<span class="sourceLineNo">3083</span>     *<a name="line.3083"></a>
<span class="sourceLineNo">3084</span>     * @param marker the marker data specific to this log statement<a name="line.3084"></a>
<span class="sourceLineNo">3085</span>     * @param message the message object to log.<a name="line.3085"></a>
<span class="sourceLineNo">3086</span>     * @param t the exception to log, including its stack trace.<a name="line.3086"></a>
<span class="sourceLineNo">3087</span>     * @see #debug(String)<a name="line.3087"></a>
<span class="sourceLineNo">3088</span>     */<a name="line.3088"></a>
<span class="sourceLineNo">3089</span>    void trace(Marker marker, Object message, Throwable t);<a name="line.3089"></a>
<span class="sourceLineNo">3090</span><a name="line.3090"></a>
<span class="sourceLineNo">3091</span>    /**<a name="line.3091"></a>
<span class="sourceLineNo">3092</span>     * Logs a message object with the {@link Level#TRACE TRACE} level.<a name="line.3092"></a>
<span class="sourceLineNo">3093</span>     *<a name="line.3093"></a>
<span class="sourceLineNo">3094</span>     * @param marker the marker data specific to this log statement<a name="line.3094"></a>
<span class="sourceLineNo">3095</span>     * @param message the message string to log.<a name="line.3095"></a>
<span class="sourceLineNo">3096</span>     */<a name="line.3096"></a>
<span class="sourceLineNo">3097</span>    void trace(Marker marker, String message);<a name="line.3097"></a>
<span class="sourceLineNo">3098</span><a name="line.3098"></a>
<span class="sourceLineNo">3099</span>    /**<a name="line.3099"></a>
<span class="sourceLineNo">3100</span>     * Logs a message with parameters at the {@link Level#TRACE TRACE} level.<a name="line.3100"></a>
<span class="sourceLineNo">3101</span>     *<a name="line.3101"></a>
<span class="sourceLineNo">3102</span>     * @param marker the marker data specific to this log statement<a name="line.3102"></a>
<span class="sourceLineNo">3103</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3103"></a>
<span class="sourceLineNo">3104</span>     * @param params parameters to the message.<a name="line.3104"></a>
<span class="sourceLineNo">3105</span>     * @see #getMessageFactory()<a name="line.3105"></a>
<span class="sourceLineNo">3106</span>     */<a name="line.3106"></a>
<span class="sourceLineNo">3107</span>    void trace(Marker marker, String message, Object... params);<a name="line.3107"></a>
<span class="sourceLineNo">3108</span><a name="line.3108"></a>
<span class="sourceLineNo">3109</span>    /**<a name="line.3109"></a>
<span class="sourceLineNo">3110</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#TRACE<a name="line.3110"></a>
<span class="sourceLineNo">3111</span>     * TRACE} level.<a name="line.3111"></a>
<span class="sourceLineNo">3112</span>     *<a name="line.3112"></a>
<span class="sourceLineNo">3113</span>     * @param marker the marker data specific to this log statement<a name="line.3113"></a>
<span class="sourceLineNo">3114</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3114"></a>
<span class="sourceLineNo">3115</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.3115"></a>
<span class="sourceLineNo">3116</span>     * @since 2.4<a name="line.3116"></a>
<span class="sourceLineNo">3117</span>     */<a name="line.3117"></a>
<span class="sourceLineNo">3118</span>    void trace(Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.3118"></a>
<span class="sourceLineNo">3119</span><a name="line.3119"></a>
<span class="sourceLineNo">3120</span>    /**<a name="line.3120"></a>
<span class="sourceLineNo">3121</span>     * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}<a name="line.3121"></a>
<span class="sourceLineNo">3122</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3122"></a>
<span class="sourceLineNo">3123</span>     *<a name="line.3123"></a>
<span class="sourceLineNo">3124</span>     * @param marker the marker data specific to this log statement<a name="line.3124"></a>
<span class="sourceLineNo">3125</span>     * @param message the message object to log.<a name="line.3125"></a>
<span class="sourceLineNo">3126</span>     * @param t the exception to log, including its stack trace.<a name="line.3126"></a>
<span class="sourceLineNo">3127</span>     * @see #debug(String)<a name="line.3127"></a>
<span class="sourceLineNo">3128</span>     */<a name="line.3128"></a>
<span class="sourceLineNo">3129</span>    void trace(Marker marker, String message, Throwable t);<a name="line.3129"></a>
<span class="sourceLineNo">3130</span><a name="line.3130"></a>
<span class="sourceLineNo">3131</span>    /**<a name="line.3131"></a>
<span class="sourceLineNo">3132</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level with<a name="line.3132"></a>
<span class="sourceLineNo">3133</span>     * the specified Marker.<a name="line.3133"></a>
<span class="sourceLineNo">3134</span>     *<a name="line.3134"></a>
<span class="sourceLineNo">3135</span>     * @param marker the marker data specific to this log statement<a name="line.3135"></a>
<span class="sourceLineNo">3136</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3136"></a>
<span class="sourceLineNo">3137</span>     *            message factory.<a name="line.3137"></a>
<span class="sourceLineNo">3138</span>     * @since 2.4<a name="line.3138"></a>
<span class="sourceLineNo">3139</span>     */<a name="line.3139"></a>
<span class="sourceLineNo">3140</span>    void trace(Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.3140"></a>
<span class="sourceLineNo">3141</span><a name="line.3141"></a>
<span class="sourceLineNo">3142</span>    /**<a name="line.3142"></a>
<span class="sourceLineNo">3143</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) with the<a name="line.3143"></a>
<span class="sourceLineNo">3144</span>     * specified Marker and including the stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3144"></a>
<span class="sourceLineNo">3145</span>     *<a name="line.3145"></a>
<span class="sourceLineNo">3146</span>     * @param marker the marker data specific to this log statement<a name="line.3146"></a>
<span class="sourceLineNo">3147</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3147"></a>
<span class="sourceLineNo">3148</span>     *            message factory.<a name="line.3148"></a>
<span class="sourceLineNo">3149</span>     * @param t A Throwable or null.<a name="line.3149"></a>
<span class="sourceLineNo">3150</span>     * @since 2.4<a name="line.3150"></a>
<span class="sourceLineNo">3151</span>     */<a name="line.3151"></a>
<span class="sourceLineNo">3152</span>    void trace(Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.3152"></a>
<span class="sourceLineNo">3153</span><a name="line.3153"></a>
<span class="sourceLineNo">3154</span>    /**<a name="line.3154"></a>
<span class="sourceLineNo">3155</span>     * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.<a name="line.3155"></a>
<span class="sourceLineNo">3156</span>     *<a name="line.3156"></a>
<span class="sourceLineNo">3157</span>     * @param msg the message string to be logged<a name="line.3157"></a>
<span class="sourceLineNo">3158</span>     */<a name="line.3158"></a>
<span class="sourceLineNo">3159</span>    void trace(Message msg);<a name="line.3159"></a>
<span class="sourceLineNo">3160</span><a name="line.3160"></a>
<span class="sourceLineNo">3161</span>    /**<a name="line.3161"></a>
<span class="sourceLineNo">3162</span>     * Logs a message with the specific Marker at the {@link Level#TRACE TRACE} level.<a name="line.3162"></a>
<span class="sourceLineNo">3163</span>     *<a name="line.3163"></a>
<span class="sourceLineNo">3164</span>     * @param msg the message string to be logged<a name="line.3164"></a>
<span class="sourceLineNo">3165</span>     * @param t A Throwable or null.<a name="line.3165"></a>
<span class="sourceLineNo">3166</span>     */<a name="line.3166"></a>
<span class="sourceLineNo">3167</span>    void trace(Message msg, Throwable t);<a name="line.3167"></a>
<span class="sourceLineNo">3168</span><a name="line.3168"></a>
<span class="sourceLineNo">3169</span>    /**<a name="line.3169"></a>
<span class="sourceLineNo">3170</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level. The<a name="line.3170"></a>
<span class="sourceLineNo">3171</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.3171"></a>
<span class="sourceLineNo">3172</span>     *<a name="line.3172"></a>
<span class="sourceLineNo">3173</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3173"></a>
<span class="sourceLineNo">3174</span>     * @since 2.4<a name="line.3174"></a>
<span class="sourceLineNo">3175</span>     */<a name="line.3175"></a>
<span class="sourceLineNo">3176</span>    void trace(MessageSupplier msgSupplier);<a name="line.3176"></a>
<span class="sourceLineNo">3177</span><a name="line.3177"></a>
<span class="sourceLineNo">3178</span>    /**<a name="line.3178"></a>
<span class="sourceLineNo">3179</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) including the<a name="line.3179"></a>
<span class="sourceLineNo">3180</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may<a name="line.3180"></a>
<span class="sourceLineNo">3181</span>     * not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.3181"></a>
<span class="sourceLineNo">3182</span>     *<a name="line.3182"></a>
<span class="sourceLineNo">3183</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3183"></a>
<span class="sourceLineNo">3184</span>     * @param t the exception to log, including its stack trace.<a name="line.3184"></a>
<span class="sourceLineNo">3185</span>     * @since 2.4<a name="line.3185"></a>
<span class="sourceLineNo">3186</span>     */<a name="line.3186"></a>
<span class="sourceLineNo">3187</span>    void trace(MessageSupplier msgSupplier, Throwable t);<a name="line.3187"></a>
<span class="sourceLineNo">3188</span><a name="line.3188"></a>
<span class="sourceLineNo">3189</span>    /**<a name="line.3189"></a>
<span class="sourceLineNo">3190</span>     * Logs a message CharSequence with the {@link Level#TRACE TRACE} level.<a name="line.3190"></a>
<span class="sourceLineNo">3191</span>     *<a name="line.3191"></a>
<span class="sourceLineNo">3192</span>     * @param message the message CharSequence to log.<a name="line.3192"></a>
<span class="sourceLineNo">3193</span>     */<a name="line.3193"></a>
<span class="sourceLineNo">3194</span>    void trace(CharSequence message);<a name="line.3194"></a>
<span class="sourceLineNo">3195</span><a name="line.3195"></a>
<span class="sourceLineNo">3196</span>    /**<a name="line.3196"></a>
<span class="sourceLineNo">3197</span>     * Logs a CharSequence at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}<a name="line.3197"></a>
<span class="sourceLineNo">3198</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3198"></a>
<span class="sourceLineNo">3199</span>     *<a name="line.3199"></a>
<span class="sourceLineNo">3200</span>     * @param message the message CharSequence to log.<a name="line.3200"></a>
<span class="sourceLineNo">3201</span>     * @param t the exception to log, including its stack trace.<a name="line.3201"></a>
<span class="sourceLineNo">3202</span>     * @see #debug(String)<a name="line.3202"></a>
<span class="sourceLineNo">3203</span>     */<a name="line.3203"></a>
<span class="sourceLineNo">3204</span>    void trace(CharSequence message, Throwable t);<a name="line.3204"></a>
<span class="sourceLineNo">3205</span><a name="line.3205"></a>
<span class="sourceLineNo">3206</span>    /**<a name="line.3206"></a>
<span class="sourceLineNo">3207</span>     * Logs a message object with the {@link Level#TRACE TRACE} level.<a name="line.3207"></a>
<span class="sourceLineNo">3208</span>     *<a name="line.3208"></a>
<span class="sourceLineNo">3209</span>     * @param message the message object to log.<a name="line.3209"></a>
<span class="sourceLineNo">3210</span>     */<a name="line.3210"></a>
<span class="sourceLineNo">3211</span>    void trace(Object message);<a name="line.3211"></a>
<span class="sourceLineNo">3212</span><a name="line.3212"></a>
<span class="sourceLineNo">3213</span>    /**<a name="line.3213"></a>
<span class="sourceLineNo">3214</span>     * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}<a name="line.3214"></a>
<span class="sourceLineNo">3215</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3215"></a>
<span class="sourceLineNo">3216</span>     *<a name="line.3216"></a>
<span class="sourceLineNo">3217</span>     * @param message the message object to log.<a name="line.3217"></a>
<span class="sourceLineNo">3218</span>     * @param t the exception to log, including its stack trace.<a name="line.3218"></a>
<span class="sourceLineNo">3219</span>     * @see #debug(String)<a name="line.3219"></a>
<span class="sourceLineNo">3220</span>     */<a name="line.3220"></a>
<span class="sourceLineNo">3221</span>    void trace(Object message, Throwable t);<a name="line.3221"></a>
<span class="sourceLineNo">3222</span><a name="line.3222"></a>
<span class="sourceLineNo">3223</span>    /**<a name="line.3223"></a>
<span class="sourceLineNo">3224</span>     * Logs a message object with the {@link Level#TRACE TRACE} level.<a name="line.3224"></a>
<span class="sourceLineNo">3225</span>     *<a name="line.3225"></a>
<span class="sourceLineNo">3226</span>     * @param message the message string to log.<a name="line.3226"></a>
<span class="sourceLineNo">3227</span>     */<a name="line.3227"></a>
<span class="sourceLineNo">3228</span>    void trace(String message);<a name="line.3228"></a>
<span class="sourceLineNo">3229</span><a name="line.3229"></a>
<span class="sourceLineNo">3230</span>    /**<a name="line.3230"></a>
<span class="sourceLineNo">3231</span>     * Logs a message with parameters at the {@link Level#TRACE TRACE} level.<a name="line.3231"></a>
<span class="sourceLineNo">3232</span>     *<a name="line.3232"></a>
<span class="sourceLineNo">3233</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3233"></a>
<span class="sourceLineNo">3234</span>     * @param params parameters to the message.<a name="line.3234"></a>
<span class="sourceLineNo">3235</span>     * @see #getMessageFactory()<a name="line.3235"></a>
<span class="sourceLineNo">3236</span>     */<a name="line.3236"></a>
<span class="sourceLineNo">3237</span>    void trace(String message, Object... params);<a name="line.3237"></a>
<span class="sourceLineNo">3238</span><a name="line.3238"></a>
<span class="sourceLineNo">3239</span>    /**<a name="line.3239"></a>
<span class="sourceLineNo">3240</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#TRACE<a name="line.3240"></a>
<span class="sourceLineNo">3241</span>     * TRACE} level.<a name="line.3241"></a>
<span class="sourceLineNo">3242</span>     *<a name="line.3242"></a>
<span class="sourceLineNo">3243</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3243"></a>
<span class="sourceLineNo">3244</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.3244"></a>
<span class="sourceLineNo">3245</span>     * @since 2.4<a name="line.3245"></a>
<span class="sourceLineNo">3246</span>     */<a name="line.3246"></a>
<span class="sourceLineNo">3247</span>    void trace(String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.3247"></a>
<span class="sourceLineNo">3248</span><a name="line.3248"></a>
<span class="sourceLineNo">3249</span>    /**<a name="line.3249"></a>
<span class="sourceLineNo">3250</span>     * Logs a message at the {@link Level#TRACE TRACE} level including the stack trace of the {@link Throwable}<a name="line.3250"></a>
<span class="sourceLineNo">3251</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3251"></a>
<span class="sourceLineNo">3252</span>     *<a name="line.3252"></a>
<span class="sourceLineNo">3253</span>     * @param message the message object to log.<a name="line.3253"></a>
<span class="sourceLineNo">3254</span>     * @param t the exception to log, including its stack trace.<a name="line.3254"></a>
<span class="sourceLineNo">3255</span>     * @see #debug(String)<a name="line.3255"></a>
<span class="sourceLineNo">3256</span>     */<a name="line.3256"></a>
<span class="sourceLineNo">3257</span>    void trace(String message, Throwable t);<a name="line.3257"></a>
<span class="sourceLineNo">3258</span><a name="line.3258"></a>
<span class="sourceLineNo">3259</span>    /**<a name="line.3259"></a>
<span class="sourceLineNo">3260</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#TRACE TRACE} level.<a name="line.3260"></a>
<span class="sourceLineNo">3261</span>     *<a name="line.3261"></a>
<span class="sourceLineNo">3262</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3262"></a>
<span class="sourceLineNo">3263</span>     *            message factory.<a name="line.3263"></a>
<span class="sourceLineNo">3264</span>     * @since 2.4<a name="line.3264"></a>
<span class="sourceLineNo">3265</span>     */<a name="line.3265"></a>
<span class="sourceLineNo">3266</span>    void trace(Supplier&lt;?&gt; msgSupplier);<a name="line.3266"></a>
<span class="sourceLineNo">3267</span><a name="line.3267"></a>
<span class="sourceLineNo">3268</span>    /**<a name="line.3268"></a>
<span class="sourceLineNo">3269</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#TRACE TRACE} level) including the<a name="line.3269"></a>
<span class="sourceLineNo">3270</span>     * stack trace of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3270"></a>
<span class="sourceLineNo">3271</span>     *<a name="line.3271"></a>
<span class="sourceLineNo">3272</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3272"></a>
<span class="sourceLineNo">3273</span>     *            message factory.<a name="line.3273"></a>
<span class="sourceLineNo">3274</span>     * @param t the exception to log, including its stack trace.<a name="line.3274"></a>
<span class="sourceLineNo">3275</span>     * @since 2.4<a name="line.3275"></a>
<span class="sourceLineNo">3276</span>     */<a name="line.3276"></a>
<span class="sourceLineNo">3277</span>    void trace(Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.3277"></a>
<span class="sourceLineNo">3278</span><a name="line.3278"></a>
<span class="sourceLineNo">3279</span>    /**<a name="line.3279"></a>
<span class="sourceLineNo">3280</span>     * Logs a message with parameters at trace level.<a name="line.3280"></a>
<span class="sourceLineNo">3281</span>     *<a name="line.3281"></a>
<span class="sourceLineNo">3282</span>     * @param marker the marker data specific to this log statement<a name="line.3282"></a>
<span class="sourceLineNo">3283</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3283"></a>
<span class="sourceLineNo">3284</span>     * @param p0 parameter to the message.<a name="line.3284"></a>
<span class="sourceLineNo">3285</span>     */<a name="line.3285"></a>
<span class="sourceLineNo">3286</span>    void trace(Marker marker, String message, Object p0);<a name="line.3286"></a>
<span class="sourceLineNo">3287</span><a name="line.3287"></a>
<span class="sourceLineNo">3288</span>    /**<a name="line.3288"></a>
<span class="sourceLineNo">3289</span>     * Logs a message with parameters at trace level.<a name="line.3289"></a>
<span class="sourceLineNo">3290</span>     *<a name="line.3290"></a>
<span class="sourceLineNo">3291</span>     * @param marker the marker data specific to this log statement<a name="line.3291"></a>
<span class="sourceLineNo">3292</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3292"></a>
<span class="sourceLineNo">3293</span>     * @param p0 parameter to the message.<a name="line.3293"></a>
<span class="sourceLineNo">3294</span>     * @param p1 parameter to the message.<a name="line.3294"></a>
<span class="sourceLineNo">3295</span>     */<a name="line.3295"></a>
<span class="sourceLineNo">3296</span>    void trace(Marker marker, String message, Object p0, Object p1);<a name="line.3296"></a>
<span class="sourceLineNo">3297</span><a name="line.3297"></a>
<span class="sourceLineNo">3298</span>    /**<a name="line.3298"></a>
<span class="sourceLineNo">3299</span>     * Logs a message with parameters at trace level.<a name="line.3299"></a>
<span class="sourceLineNo">3300</span>     *<a name="line.3300"></a>
<span class="sourceLineNo">3301</span>     * @param marker the marker data specific to this log statement<a name="line.3301"></a>
<span class="sourceLineNo">3302</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3302"></a>
<span class="sourceLineNo">3303</span>     * @param p0 parameter to the message.<a name="line.3303"></a>
<span class="sourceLineNo">3304</span>     * @param p1 parameter to the message.<a name="line.3304"></a>
<span class="sourceLineNo">3305</span>     * @param p2 parameter to the message.<a name="line.3305"></a>
<span class="sourceLineNo">3306</span>     */<a name="line.3306"></a>
<span class="sourceLineNo">3307</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.3307"></a>
<span class="sourceLineNo">3308</span><a name="line.3308"></a>
<span class="sourceLineNo">3309</span>    /**<a name="line.3309"></a>
<span class="sourceLineNo">3310</span>     * Logs a message with parameters at trace level.<a name="line.3310"></a>
<span class="sourceLineNo">3311</span>     *<a name="line.3311"></a>
<span class="sourceLineNo">3312</span>     * @param marker the marker data specific to this log statement<a name="line.3312"></a>
<span class="sourceLineNo">3313</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3313"></a>
<span class="sourceLineNo">3314</span>     * @param p0 parameter to the message.<a name="line.3314"></a>
<span class="sourceLineNo">3315</span>     * @param p1 parameter to the message.<a name="line.3315"></a>
<span class="sourceLineNo">3316</span>     * @param p2 parameter to the message.<a name="line.3316"></a>
<span class="sourceLineNo">3317</span>     * @param p3 parameter to the message.<a name="line.3317"></a>
<span class="sourceLineNo">3318</span>     */<a name="line.3318"></a>
<span class="sourceLineNo">3319</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.3319"></a>
<span class="sourceLineNo">3320</span><a name="line.3320"></a>
<span class="sourceLineNo">3321</span>    /**<a name="line.3321"></a>
<span class="sourceLineNo">3322</span>     * Logs a message with parameters at trace level.<a name="line.3322"></a>
<span class="sourceLineNo">3323</span>     *<a name="line.3323"></a>
<span class="sourceLineNo">3324</span>     * @param marker the marker data specific to this log statement<a name="line.3324"></a>
<span class="sourceLineNo">3325</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3325"></a>
<span class="sourceLineNo">3326</span>     * @param p0 parameter to the message.<a name="line.3326"></a>
<span class="sourceLineNo">3327</span>     * @param p1 parameter to the message.<a name="line.3327"></a>
<span class="sourceLineNo">3328</span>     * @param p2 parameter to the message.<a name="line.3328"></a>
<span class="sourceLineNo">3329</span>     * @param p3 parameter to the message.<a name="line.3329"></a>
<span class="sourceLineNo">3330</span>     * @param p4 parameter to the message.<a name="line.3330"></a>
<span class="sourceLineNo">3331</span>     */<a name="line.3331"></a>
<span class="sourceLineNo">3332</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.3332"></a>
<span class="sourceLineNo">3333</span><a name="line.3333"></a>
<span class="sourceLineNo">3334</span>    /**<a name="line.3334"></a>
<span class="sourceLineNo">3335</span>     * Logs a message with parameters at trace level.<a name="line.3335"></a>
<span class="sourceLineNo">3336</span>     *<a name="line.3336"></a>
<span class="sourceLineNo">3337</span>     * @param marker the marker data specific to this log statement<a name="line.3337"></a>
<span class="sourceLineNo">3338</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3338"></a>
<span class="sourceLineNo">3339</span>     * @param p0 parameter to the message.<a name="line.3339"></a>
<span class="sourceLineNo">3340</span>     * @param p1 parameter to the message.<a name="line.3340"></a>
<span class="sourceLineNo">3341</span>     * @param p2 parameter to the message.<a name="line.3341"></a>
<span class="sourceLineNo">3342</span>     * @param p3 parameter to the message.<a name="line.3342"></a>
<span class="sourceLineNo">3343</span>     * @param p4 parameter to the message.<a name="line.3343"></a>
<span class="sourceLineNo">3344</span>     * @param p5 parameter to the message.<a name="line.3344"></a>
<span class="sourceLineNo">3345</span>     */<a name="line.3345"></a>
<span class="sourceLineNo">3346</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.3346"></a>
<span class="sourceLineNo">3347</span><a name="line.3347"></a>
<span class="sourceLineNo">3348</span>    /**<a name="line.3348"></a>
<span class="sourceLineNo">3349</span>     * Logs a message with parameters at trace level.<a name="line.3349"></a>
<span class="sourceLineNo">3350</span>     *<a name="line.3350"></a>
<span class="sourceLineNo">3351</span>     * @param marker the marker data specific to this log statement<a name="line.3351"></a>
<span class="sourceLineNo">3352</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3352"></a>
<span class="sourceLineNo">3353</span>     * @param p0 parameter to the message.<a name="line.3353"></a>
<span class="sourceLineNo">3354</span>     * @param p1 parameter to the message.<a name="line.3354"></a>
<span class="sourceLineNo">3355</span>     * @param p2 parameter to the message.<a name="line.3355"></a>
<span class="sourceLineNo">3356</span>     * @param p3 parameter to the message.<a name="line.3356"></a>
<span class="sourceLineNo">3357</span>     * @param p4 parameter to the message.<a name="line.3357"></a>
<span class="sourceLineNo">3358</span>     * @param p5 parameter to the message.<a name="line.3358"></a>
<span class="sourceLineNo">3359</span>     * @param p6 parameter to the message.<a name="line.3359"></a>
<span class="sourceLineNo">3360</span>     */<a name="line.3360"></a>
<span class="sourceLineNo">3361</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.3361"></a>
<span class="sourceLineNo">3362</span>            Object p6);<a name="line.3362"></a>
<span class="sourceLineNo">3363</span><a name="line.3363"></a>
<span class="sourceLineNo">3364</span>    /**<a name="line.3364"></a>
<span class="sourceLineNo">3365</span>     * Logs a message with parameters at trace level.<a name="line.3365"></a>
<span class="sourceLineNo">3366</span>     *<a name="line.3366"></a>
<span class="sourceLineNo">3367</span>     * @param marker the marker data specific to this log statement<a name="line.3367"></a>
<span class="sourceLineNo">3368</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3368"></a>
<span class="sourceLineNo">3369</span>     * @param p0 parameter to the message.<a name="line.3369"></a>
<span class="sourceLineNo">3370</span>     * @param p1 parameter to the message.<a name="line.3370"></a>
<span class="sourceLineNo">3371</span>     * @param p2 parameter to the message.<a name="line.3371"></a>
<span class="sourceLineNo">3372</span>     * @param p3 parameter to the message.<a name="line.3372"></a>
<span class="sourceLineNo">3373</span>     * @param p4 parameter to the message.<a name="line.3373"></a>
<span class="sourceLineNo">3374</span>     * @param p5 parameter to the message.<a name="line.3374"></a>
<span class="sourceLineNo">3375</span>     * @param p6 parameter to the message.<a name="line.3375"></a>
<span class="sourceLineNo">3376</span>     * @param p7 parameter to the message.<a name="line.3376"></a>
<span class="sourceLineNo">3377</span>     */<a name="line.3377"></a>
<span class="sourceLineNo">3378</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.3378"></a>
<span class="sourceLineNo">3379</span>            Object p7);<a name="line.3379"></a>
<span class="sourceLineNo">3380</span><a name="line.3380"></a>
<span class="sourceLineNo">3381</span>    /**<a name="line.3381"></a>
<span class="sourceLineNo">3382</span>     * Logs a message with parameters at trace level.<a name="line.3382"></a>
<span class="sourceLineNo">3383</span>     *<a name="line.3383"></a>
<span class="sourceLineNo">3384</span>     * @param marker the marker data specific to this log statement<a name="line.3384"></a>
<span class="sourceLineNo">3385</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3385"></a>
<span class="sourceLineNo">3386</span>     * @param p0 parameter to the message.<a name="line.3386"></a>
<span class="sourceLineNo">3387</span>     * @param p1 parameter to the message.<a name="line.3387"></a>
<span class="sourceLineNo">3388</span>     * @param p2 parameter to the message.<a name="line.3388"></a>
<span class="sourceLineNo">3389</span>     * @param p3 parameter to the message.<a name="line.3389"></a>
<span class="sourceLineNo">3390</span>     * @param p4 parameter to the message.<a name="line.3390"></a>
<span class="sourceLineNo">3391</span>     * @param p5 parameter to the message.<a name="line.3391"></a>
<span class="sourceLineNo">3392</span>     * @param p6 parameter to the message.<a name="line.3392"></a>
<span class="sourceLineNo">3393</span>     * @param p7 parameter to the message.<a name="line.3393"></a>
<span class="sourceLineNo">3394</span>     * @param p8 parameter to the message.<a name="line.3394"></a>
<span class="sourceLineNo">3395</span>     */<a name="line.3395"></a>
<span class="sourceLineNo">3396</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.3396"></a>
<span class="sourceLineNo">3397</span>            Object p7, Object p8);<a name="line.3397"></a>
<span class="sourceLineNo">3398</span><a name="line.3398"></a>
<span class="sourceLineNo">3399</span>    /**<a name="line.3399"></a>
<span class="sourceLineNo">3400</span>     * Logs a message with parameters at trace level.<a name="line.3400"></a>
<span class="sourceLineNo">3401</span>     *<a name="line.3401"></a>
<span class="sourceLineNo">3402</span>     * @param marker the marker data specific to this log statement<a name="line.3402"></a>
<span class="sourceLineNo">3403</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3403"></a>
<span class="sourceLineNo">3404</span>     * @param p0 parameter to the message.<a name="line.3404"></a>
<span class="sourceLineNo">3405</span>     * @param p1 parameter to the message.<a name="line.3405"></a>
<span class="sourceLineNo">3406</span>     * @param p2 parameter to the message.<a name="line.3406"></a>
<span class="sourceLineNo">3407</span>     * @param p3 parameter to the message.<a name="line.3407"></a>
<span class="sourceLineNo">3408</span>     * @param p4 parameter to the message.<a name="line.3408"></a>
<span class="sourceLineNo">3409</span>     * @param p5 parameter to the message.<a name="line.3409"></a>
<span class="sourceLineNo">3410</span>     * @param p6 parameter to the message.<a name="line.3410"></a>
<span class="sourceLineNo">3411</span>     * @param p7 parameter to the message.<a name="line.3411"></a>
<span class="sourceLineNo">3412</span>     * @param p8 parameter to the message.<a name="line.3412"></a>
<span class="sourceLineNo">3413</span>     * @param p9 parameter to the message.<a name="line.3413"></a>
<span class="sourceLineNo">3414</span>     */<a name="line.3414"></a>
<span class="sourceLineNo">3415</span>    void trace(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.3415"></a>
<span class="sourceLineNo">3416</span>            Object p7, Object p8, Object p9);<a name="line.3416"></a>
<span class="sourceLineNo">3417</span><a name="line.3417"></a>
<span class="sourceLineNo">3418</span>    /**<a name="line.3418"></a>
<span class="sourceLineNo">3419</span>     * Logs a message with parameters at trace level.<a name="line.3419"></a>
<span class="sourceLineNo">3420</span>     *<a name="line.3420"></a>
<span class="sourceLineNo">3421</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3421"></a>
<span class="sourceLineNo">3422</span>     * @param p0 parameter to the message.<a name="line.3422"></a>
<span class="sourceLineNo">3423</span>     */<a name="line.3423"></a>
<span class="sourceLineNo">3424</span>    void trace(String message, Object p0);<a name="line.3424"></a>
<span class="sourceLineNo">3425</span><a name="line.3425"></a>
<span class="sourceLineNo">3426</span>    /**<a name="line.3426"></a>
<span class="sourceLineNo">3427</span>     * Logs a message with parameters at trace level.<a name="line.3427"></a>
<span class="sourceLineNo">3428</span>     *<a name="line.3428"></a>
<span class="sourceLineNo">3429</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3429"></a>
<span class="sourceLineNo">3430</span>     * @param p0 parameter to the message.<a name="line.3430"></a>
<span class="sourceLineNo">3431</span>     * @param p1 parameter to the message.<a name="line.3431"></a>
<span class="sourceLineNo">3432</span>     */<a name="line.3432"></a>
<span class="sourceLineNo">3433</span>    void trace(String message, Object p0, Object p1);<a name="line.3433"></a>
<span class="sourceLineNo">3434</span><a name="line.3434"></a>
<span class="sourceLineNo">3435</span>    /**<a name="line.3435"></a>
<span class="sourceLineNo">3436</span>     * Logs a message with parameters at trace level.<a name="line.3436"></a>
<span class="sourceLineNo">3437</span>     *<a name="line.3437"></a>
<span class="sourceLineNo">3438</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3438"></a>
<span class="sourceLineNo">3439</span>     * @param p0 parameter to the message.<a name="line.3439"></a>
<span class="sourceLineNo">3440</span>     * @param p1 parameter to the message.<a name="line.3440"></a>
<span class="sourceLineNo">3441</span>     * @param p2 parameter to the message.<a name="line.3441"></a>
<span class="sourceLineNo">3442</span>     */<a name="line.3442"></a>
<span class="sourceLineNo">3443</span>    void trace(String message, Object p0, Object p1, Object p2);<a name="line.3443"></a>
<span class="sourceLineNo">3444</span><a name="line.3444"></a>
<span class="sourceLineNo">3445</span>    /**<a name="line.3445"></a>
<span class="sourceLineNo">3446</span>     * Logs a message with parameters at trace level.<a name="line.3446"></a>
<span class="sourceLineNo">3447</span>     *<a name="line.3447"></a>
<span class="sourceLineNo">3448</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3448"></a>
<span class="sourceLineNo">3449</span>     * @param p0 parameter to the message.<a name="line.3449"></a>
<span class="sourceLineNo">3450</span>     * @param p1 parameter to the message.<a name="line.3450"></a>
<span class="sourceLineNo">3451</span>     * @param p2 parameter to the message.<a name="line.3451"></a>
<span class="sourceLineNo">3452</span>     * @param p3 parameter to the message.<a name="line.3452"></a>
<span class="sourceLineNo">3453</span>     */<a name="line.3453"></a>
<span class="sourceLineNo">3454</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3);<a name="line.3454"></a>
<span class="sourceLineNo">3455</span><a name="line.3455"></a>
<span class="sourceLineNo">3456</span>    /**<a name="line.3456"></a>
<span class="sourceLineNo">3457</span>     * Logs a message with parameters at trace level.<a name="line.3457"></a>
<span class="sourceLineNo">3458</span>     *<a name="line.3458"></a>
<span class="sourceLineNo">3459</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3459"></a>
<span class="sourceLineNo">3460</span>     * @param p0 parameter to the message.<a name="line.3460"></a>
<span class="sourceLineNo">3461</span>     * @param p1 parameter to the message.<a name="line.3461"></a>
<span class="sourceLineNo">3462</span>     * @param p2 parameter to the message.<a name="line.3462"></a>
<span class="sourceLineNo">3463</span>     * @param p3 parameter to the message.<a name="line.3463"></a>
<span class="sourceLineNo">3464</span>     * @param p4 parameter to the message.<a name="line.3464"></a>
<span class="sourceLineNo">3465</span>     */<a name="line.3465"></a>
<span class="sourceLineNo">3466</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.3466"></a>
<span class="sourceLineNo">3467</span><a name="line.3467"></a>
<span class="sourceLineNo">3468</span>    /**<a name="line.3468"></a>
<span class="sourceLineNo">3469</span>     * Logs a message with parameters at trace level.<a name="line.3469"></a>
<span class="sourceLineNo">3470</span>     *<a name="line.3470"></a>
<span class="sourceLineNo">3471</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3471"></a>
<span class="sourceLineNo">3472</span>     * @param p0 parameter to the message.<a name="line.3472"></a>
<span class="sourceLineNo">3473</span>     * @param p1 parameter to the message.<a name="line.3473"></a>
<span class="sourceLineNo">3474</span>     * @param p2 parameter to the message.<a name="line.3474"></a>
<span class="sourceLineNo">3475</span>     * @param p3 parameter to the message.<a name="line.3475"></a>
<span class="sourceLineNo">3476</span>     * @param p4 parameter to the message.<a name="line.3476"></a>
<span class="sourceLineNo">3477</span>     * @param p5 parameter to the message.<a name="line.3477"></a>
<span class="sourceLineNo">3478</span>     */<a name="line.3478"></a>
<span class="sourceLineNo">3479</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.3479"></a>
<span class="sourceLineNo">3480</span><a name="line.3480"></a>
<span class="sourceLineNo">3481</span>    /**<a name="line.3481"></a>
<span class="sourceLineNo">3482</span>     * Logs a message with parameters at trace level.<a name="line.3482"></a>
<span class="sourceLineNo">3483</span>     *<a name="line.3483"></a>
<span class="sourceLineNo">3484</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3484"></a>
<span class="sourceLineNo">3485</span>     * @param p0 parameter to the message.<a name="line.3485"></a>
<span class="sourceLineNo">3486</span>     * @param p1 parameter to the message.<a name="line.3486"></a>
<span class="sourceLineNo">3487</span>     * @param p2 parameter to the message.<a name="line.3487"></a>
<span class="sourceLineNo">3488</span>     * @param p3 parameter to the message.<a name="line.3488"></a>
<span class="sourceLineNo">3489</span>     * @param p4 parameter to the message.<a name="line.3489"></a>
<span class="sourceLineNo">3490</span>     * @param p5 parameter to the message.<a name="line.3490"></a>
<span class="sourceLineNo">3491</span>     * @param p6 parameter to the message.<a name="line.3491"></a>
<span class="sourceLineNo">3492</span>     */<a name="line.3492"></a>
<span class="sourceLineNo">3493</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.3493"></a>
<span class="sourceLineNo">3494</span><a name="line.3494"></a>
<span class="sourceLineNo">3495</span>    /**<a name="line.3495"></a>
<span class="sourceLineNo">3496</span>     * Logs a message with parameters at trace level.<a name="line.3496"></a>
<span class="sourceLineNo">3497</span>     *<a name="line.3497"></a>
<span class="sourceLineNo">3498</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3498"></a>
<span class="sourceLineNo">3499</span>     * @param p0 parameter to the message.<a name="line.3499"></a>
<span class="sourceLineNo">3500</span>     * @param p1 parameter to the message.<a name="line.3500"></a>
<span class="sourceLineNo">3501</span>     * @param p2 parameter to the message.<a name="line.3501"></a>
<span class="sourceLineNo">3502</span>     * @param p3 parameter to the message.<a name="line.3502"></a>
<span class="sourceLineNo">3503</span>     * @param p4 parameter to the message.<a name="line.3503"></a>
<span class="sourceLineNo">3504</span>     * @param p5 parameter to the message.<a name="line.3504"></a>
<span class="sourceLineNo">3505</span>     * @param p6 parameter to the message.<a name="line.3505"></a>
<span class="sourceLineNo">3506</span>     * @param p7 parameter to the message.<a name="line.3506"></a>
<span class="sourceLineNo">3507</span>     */<a name="line.3507"></a>
<span class="sourceLineNo">3508</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.3508"></a>
<span class="sourceLineNo">3509</span><a name="line.3509"></a>
<span class="sourceLineNo">3510</span>    /**<a name="line.3510"></a>
<span class="sourceLineNo">3511</span>     * Logs a message with parameters at trace level.<a name="line.3511"></a>
<span class="sourceLineNo">3512</span>     *<a name="line.3512"></a>
<span class="sourceLineNo">3513</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3513"></a>
<span class="sourceLineNo">3514</span>     * @param p0 parameter to the message.<a name="line.3514"></a>
<span class="sourceLineNo">3515</span>     * @param p1 parameter to the message.<a name="line.3515"></a>
<span class="sourceLineNo">3516</span>     * @param p2 parameter to the message.<a name="line.3516"></a>
<span class="sourceLineNo">3517</span>     * @param p3 parameter to the message.<a name="line.3517"></a>
<span class="sourceLineNo">3518</span>     * @param p4 parameter to the message.<a name="line.3518"></a>
<span class="sourceLineNo">3519</span>     * @param p5 parameter to the message.<a name="line.3519"></a>
<span class="sourceLineNo">3520</span>     * @param p6 parameter to the message.<a name="line.3520"></a>
<span class="sourceLineNo">3521</span>     * @param p7 parameter to the message.<a name="line.3521"></a>
<span class="sourceLineNo">3522</span>     * @param p8 parameter to the message.<a name="line.3522"></a>
<span class="sourceLineNo">3523</span>     */<a name="line.3523"></a>
<span class="sourceLineNo">3524</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.3524"></a>
<span class="sourceLineNo">3525</span>            Object p8);<a name="line.3525"></a>
<span class="sourceLineNo">3526</span><a name="line.3526"></a>
<span class="sourceLineNo">3527</span>    /**<a name="line.3527"></a>
<span class="sourceLineNo">3528</span>     * Logs a message with parameters at trace level.<a name="line.3528"></a>
<span class="sourceLineNo">3529</span>     *<a name="line.3529"></a>
<span class="sourceLineNo">3530</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3530"></a>
<span class="sourceLineNo">3531</span>     * @param p0 parameter to the message.<a name="line.3531"></a>
<span class="sourceLineNo">3532</span>     * @param p1 parameter to the message.<a name="line.3532"></a>
<span class="sourceLineNo">3533</span>     * @param p2 parameter to the message.<a name="line.3533"></a>
<span class="sourceLineNo">3534</span>     * @param p3 parameter to the message.<a name="line.3534"></a>
<span class="sourceLineNo">3535</span>     * @param p4 parameter to the message.<a name="line.3535"></a>
<span class="sourceLineNo">3536</span>     * @param p5 parameter to the message.<a name="line.3536"></a>
<span class="sourceLineNo">3537</span>     * @param p6 parameter to the message.<a name="line.3537"></a>
<span class="sourceLineNo">3538</span>     * @param p7 parameter to the message.<a name="line.3538"></a>
<span class="sourceLineNo">3539</span>     * @param p8 parameter to the message.<a name="line.3539"></a>
<span class="sourceLineNo">3540</span>     * @param p9 parameter to the message.<a name="line.3540"></a>
<span class="sourceLineNo">3541</span>     */<a name="line.3541"></a>
<span class="sourceLineNo">3542</span>    void trace(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.3542"></a>
<span class="sourceLineNo">3543</span>            Object p8, Object p9);<a name="line.3543"></a>
<span class="sourceLineNo">3544</span><a name="line.3544"></a>
<span class="sourceLineNo">3545</span>    /**<a name="line.3545"></a>
<span class="sourceLineNo">3546</span>     * Logs entry to a method. Used when the method in question has no parameters or when the parameters should not be<a name="line.3546"></a>
<span class="sourceLineNo">3547</span>     * logged.<a name="line.3547"></a>
<span class="sourceLineNo">3548</span>     *<a name="line.3548"></a>
<span class="sourceLineNo">3549</span>     * @return built message<a name="line.3549"></a>
<span class="sourceLineNo">3550</span>     * @since 2.6<a name="line.3550"></a>
<span class="sourceLineNo">3551</span>     */<a name="line.3551"></a>
<span class="sourceLineNo">3552</span>    EntryMessage traceEntry();<a name="line.3552"></a>
<span class="sourceLineNo">3553</span><a name="line.3553"></a>
<span class="sourceLineNo">3554</span>    /**<a name="line.3554"></a>
<span class="sourceLineNo">3555</span>     * Logs entry to a method along with its parameters. For example,<a name="line.3555"></a>
<span class="sourceLineNo">3556</span>     *<a name="line.3556"></a>
<span class="sourceLineNo">3557</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3557"></a>
<span class="sourceLineNo">3558</span>     * public void doSomething(String foo, int bar) {<a name="line.3558"></a>
<span class="sourceLineNo">3559</span>     *     LOGGER.traceEntry("Parameters: {} and {}", foo, bar);<a name="line.3559"></a>
<span class="sourceLineNo">3560</span>     *     // do something<a name="line.3560"></a>
<span class="sourceLineNo">3561</span>     * }<a name="line.3561"></a>
<span class="sourceLineNo">3562</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3562"></a>
<span class="sourceLineNo">3563</span>     * or:<a name="line.3563"></a>
<span class="sourceLineNo">3564</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3564"></a>
<span class="sourceLineNo">3565</span>     * public int doSomething(String foo, int bar) {<a name="line.3565"></a>
<span class="sourceLineNo">3566</span>     *     Message m = LOGGER.traceEntry("doSomething(foo={}, bar={})", foo, bar);<a name="line.3566"></a>
<span class="sourceLineNo">3567</span>     *     // do something<a name="line.3567"></a>
<span class="sourceLineNo">3568</span>     *     return traceExit(m, value);<a name="line.3568"></a>
<span class="sourceLineNo">3569</span>     * }<a name="line.3569"></a>
<span class="sourceLineNo">3570</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3570"></a>
<span class="sourceLineNo">3571</span>     *<a name="line.3571"></a>
<span class="sourceLineNo">3572</span>     * @param format The format String for the parameters.<a name="line.3572"></a>
<span class="sourceLineNo">3573</span>     * @param params The parameters to the method.<a name="line.3573"></a>
<span class="sourceLineNo">3574</span>     * @return The built Message<a name="line.3574"></a>
<span class="sourceLineNo">3575</span>     *<a name="line.3575"></a>
<span class="sourceLineNo">3576</span>     * @since 2.6<a name="line.3576"></a>
<span class="sourceLineNo">3577</span>     */<a name="line.3577"></a>
<span class="sourceLineNo">3578</span>    EntryMessage traceEntry(String format, Object... params);<a name="line.3578"></a>
<span class="sourceLineNo">3579</span><a name="line.3579"></a>
<span class="sourceLineNo">3580</span>    /**<a name="line.3580"></a>
<span class="sourceLineNo">3581</span>     * Logs entry to a method along with its parameters. For example,<a name="line.3581"></a>
<span class="sourceLineNo">3582</span>     *<a name="line.3582"></a>
<span class="sourceLineNo">3583</span>     * &lt;pre&gt;<a name="line.3583"></a>
<span class="sourceLineNo">3584</span>     * &lt;code&gt;<a name="line.3584"></a>
<span class="sourceLineNo">3585</span>     * public void doSomething(Request foo) {<a name="line.3585"></a>
<span class="sourceLineNo">3586</span>     *     LOGGER.traceEntry(()-&gt;gson.toJson(foo));<a name="line.3586"></a>
<span class="sourceLineNo">3587</span>     *     // do something<a name="line.3587"></a>
<span class="sourceLineNo">3588</span>     * }<a name="line.3588"></a>
<span class="sourceLineNo">3589</span>     * &lt;/code&gt;<a name="line.3589"></a>
<span class="sourceLineNo">3590</span>     * &lt;/pre&gt;<a name="line.3590"></a>
<span class="sourceLineNo">3591</span>     *<a name="line.3591"></a>
<span class="sourceLineNo">3592</span>     * @param paramSuppliers The Suppliers for the parameters to the method.<a name="line.3592"></a>
<span class="sourceLineNo">3593</span>     * @return built message<a name="line.3593"></a>
<span class="sourceLineNo">3594</span>     *<a name="line.3594"></a>
<span class="sourceLineNo">3595</span>     * @since 2.6<a name="line.3595"></a>
<span class="sourceLineNo">3596</span>     */<a name="line.3596"></a>
<span class="sourceLineNo">3597</span>    EntryMessage traceEntry(Supplier&lt;?&gt;... paramSuppliers);<a name="line.3597"></a>
<span class="sourceLineNo">3598</span><a name="line.3598"></a>
<span class="sourceLineNo">3599</span>    /**<a name="line.3599"></a>
<span class="sourceLineNo">3600</span>     * Logs entry to a method along with its parameters. For example,<a name="line.3600"></a>
<span class="sourceLineNo">3601</span>     *<a name="line.3601"></a>
<span class="sourceLineNo">3602</span>     * &lt;pre&gt;<a name="line.3602"></a>
<span class="sourceLineNo">3603</span>     * &lt;code&gt;<a name="line.3603"></a>
<span class="sourceLineNo">3604</span>     * public void doSomething(String foo, int bar) {<a name="line.3604"></a>
<span class="sourceLineNo">3605</span>     *     LOGGER.traceEntry("Parameters: {} and {}", ()-&gt;gson.toJson(foo), ()-&gt; bar);<a name="line.3605"></a>
<span class="sourceLineNo">3606</span>     *     // do something<a name="line.3606"></a>
<span class="sourceLineNo">3607</span>     * }<a name="line.3607"></a>
<span class="sourceLineNo">3608</span>     * &lt;/code&gt;<a name="line.3608"></a>
<span class="sourceLineNo">3609</span>     * &lt;/pre&gt;<a name="line.3609"></a>
<span class="sourceLineNo">3610</span>     *<a name="line.3610"></a>
<span class="sourceLineNo">3611</span>     * @param format The format String for the parameters.<a name="line.3611"></a>
<span class="sourceLineNo">3612</span>     * @param paramSuppliers The Suppliers for the parameters to the method.<a name="line.3612"></a>
<span class="sourceLineNo">3613</span>     * @return built message<a name="line.3613"></a>
<span class="sourceLineNo">3614</span>     *<a name="line.3614"></a>
<span class="sourceLineNo">3615</span>     * @since 2.6<a name="line.3615"></a>
<span class="sourceLineNo">3616</span>     */<a name="line.3616"></a>
<span class="sourceLineNo">3617</span>    EntryMessage traceEntry(String format, Supplier&lt;?&gt;... paramSuppliers);<a name="line.3617"></a>
<span class="sourceLineNo">3618</span><a name="line.3618"></a>
<span class="sourceLineNo">3619</span>    /**<a name="line.3619"></a>
<span class="sourceLineNo">3620</span>     * Logs entry to a method using a Message to describe the parameters.<a name="line.3620"></a>
<span class="sourceLineNo">3621</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3621"></a>
<span class="sourceLineNo">3622</span>     * public void doSomething(Request foo) {<a name="line.3622"></a>
<span class="sourceLineNo">3623</span>     *     LOGGER.traceEntry(new JsonMessage(foo));<a name="line.3623"></a>
<span class="sourceLineNo">3624</span>     *     // do something<a name="line.3624"></a>
<span class="sourceLineNo">3625</span>     * }<a name="line.3625"></a>
<span class="sourceLineNo">3626</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3626"></a>
<span class="sourceLineNo">3627</span>     * &lt;p&gt;<a name="line.3627"></a>
<span class="sourceLineNo">3628</span>     * Avoid passing a {@code ReusableMessage} to this method (therefore, also avoid passing messages created by<a name="line.3628"></a>
<span class="sourceLineNo">3629</span>     * calling {@code logger.getMessageFactory().newMessage("some message")}): Log4j will replace such messages with<a name="line.3629"></a>
<span class="sourceLineNo">3630</span>     * an immutable message to prevent situations where the reused message instance is modified by subsequent calls to<a name="line.3630"></a>
<span class="sourceLineNo">3631</span>     * the logger before the returned {@code EntryMessage} is fully processed.<a name="line.3631"></a>
<span class="sourceLineNo">3632</span>     * &lt;/p&gt;<a name="line.3632"></a>
<span class="sourceLineNo">3633</span>     *<a name="line.3633"></a>
<span class="sourceLineNo">3634</span>     * @param message The message. Avoid specifying a ReusableMessage, use immutable messages instead.<a name="line.3634"></a>
<span class="sourceLineNo">3635</span>     * @return the built message<a name="line.3635"></a>
<span class="sourceLineNo">3636</span>     *<a name="line.3636"></a>
<span class="sourceLineNo">3637</span>     * @since 2.6<a name="line.3637"></a>
<span class="sourceLineNo">3638</span>     * @see org.apache.logging.log4j.message.ReusableMessage<a name="line.3638"></a>
<span class="sourceLineNo">3639</span>     */<a name="line.3639"></a>
<span class="sourceLineNo">3640</span>    EntryMessage traceEntry(Message message);<a name="line.3640"></a>
<span class="sourceLineNo">3641</span><a name="line.3641"></a>
<span class="sourceLineNo">3642</span>    /**<a name="line.3642"></a>
<span class="sourceLineNo">3643</span>     * Logs exit from a method. Used for methods that do not return anything.<a name="line.3643"></a>
<span class="sourceLineNo">3644</span>     *<a name="line.3644"></a>
<span class="sourceLineNo">3645</span>     * @since 2.6<a name="line.3645"></a>
<span class="sourceLineNo">3646</span>     */<a name="line.3646"></a>
<span class="sourceLineNo">3647</span>    void traceExit();<a name="line.3647"></a>
<span class="sourceLineNo">3648</span><a name="line.3648"></a>
<span class="sourceLineNo">3649</span>    /**<a name="line.3649"></a>
<span class="sourceLineNo">3650</span>     * Logs exiting from a method with the result. This may be coded as:<a name="line.3650"></a>
<span class="sourceLineNo">3651</span>     *<a name="line.3651"></a>
<span class="sourceLineNo">3652</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3652"></a>
<span class="sourceLineNo">3653</span>     * return LOGGER.traceExit(myResult);<a name="line.3653"></a>
<span class="sourceLineNo">3654</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3654"></a>
<span class="sourceLineNo">3655</span>     *<a name="line.3655"></a>
<span class="sourceLineNo">3656</span>     * @param &lt;R&gt; The type of the parameter and object being returned.<a name="line.3656"></a>
<span class="sourceLineNo">3657</span>     * @param result The result being returned from the method call.<a name="line.3657"></a>
<span class="sourceLineNo">3658</span>     * @return the result.<a name="line.3658"></a>
<span class="sourceLineNo">3659</span>     *<a name="line.3659"></a>
<span class="sourceLineNo">3660</span>     * @since 2.6<a name="line.3660"></a>
<span class="sourceLineNo">3661</span>     */<a name="line.3661"></a>
<span class="sourceLineNo">3662</span>    &lt;R&gt; R traceExit(R result);<a name="line.3662"></a>
<span class="sourceLineNo">3663</span><a name="line.3663"></a>
<span class="sourceLineNo">3664</span>    /**<a name="line.3664"></a>
<span class="sourceLineNo">3665</span>     * Logs exiting from a method with the result. This may be coded as:<a name="line.3665"></a>
<span class="sourceLineNo">3666</span>     *<a name="line.3666"></a>
<span class="sourceLineNo">3667</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3667"></a>
<span class="sourceLineNo">3668</span>     * return LOGGER.traceExit("Result: {}", myResult);<a name="line.3668"></a>
<span class="sourceLineNo">3669</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3669"></a>
<span class="sourceLineNo">3670</span>     *<a name="line.3670"></a>
<span class="sourceLineNo">3671</span>     * @param &lt;R&gt; The type of the parameter and object being returned.<a name="line.3671"></a>
<span class="sourceLineNo">3672</span>     * @param format The format String for the result.<a name="line.3672"></a>
<span class="sourceLineNo">3673</span>     * @param result The result being returned from the method call.<a name="line.3673"></a>
<span class="sourceLineNo">3674</span>     * @return the result.<a name="line.3674"></a>
<span class="sourceLineNo">3675</span>     *<a name="line.3675"></a>
<span class="sourceLineNo">3676</span>     * @since 2.6<a name="line.3676"></a>
<span class="sourceLineNo">3677</span>     */<a name="line.3677"></a>
<span class="sourceLineNo">3678</span>    &lt;R&gt; R traceExit(String format, R result);<a name="line.3678"></a>
<span class="sourceLineNo">3679</span><a name="line.3679"></a>
<span class="sourceLineNo">3680</span>    /**<a name="line.3680"></a>
<span class="sourceLineNo">3681</span>     * Logs exiting from a method with no result. Allows custom formatting of the result. This may be coded as:<a name="line.3681"></a>
<span class="sourceLineNo">3682</span>     *<a name="line.3682"></a>
<span class="sourceLineNo">3683</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3683"></a>
<span class="sourceLineNo">3684</span>     * public long doSomething(int a, int b) {<a name="line.3684"></a>
<span class="sourceLineNo">3685</span>     *    EntryMessage m = traceEntry("doSomething(a={}, b={})", a, b);<a name="line.3685"></a>
<span class="sourceLineNo">3686</span>     *    // ...<a name="line.3686"></a>
<span class="sourceLineNo">3687</span>     *    return LOGGER.traceExit(m);<a name="line.3687"></a>
<span class="sourceLineNo">3688</span>     * }<a name="line.3688"></a>
<span class="sourceLineNo">3689</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3689"></a>
<span class="sourceLineNo">3690</span>     * @param message The Message containing the formatted result.<a name="line.3690"></a>
<span class="sourceLineNo">3691</span>     *<a name="line.3691"></a>
<span class="sourceLineNo">3692</span>     * @since 2.6<a name="line.3692"></a>
<span class="sourceLineNo">3693</span>     */<a name="line.3693"></a>
<span class="sourceLineNo">3694</span>    void traceExit(EntryMessage message);<a name="line.3694"></a>
<span class="sourceLineNo">3695</span><a name="line.3695"></a>
<span class="sourceLineNo">3696</span>    /**<a name="line.3696"></a>
<span class="sourceLineNo">3697</span>     * Logs exiting from a method with the result. Allows custom formatting of the result. This may be coded as:<a name="line.3697"></a>
<span class="sourceLineNo">3698</span>     *<a name="line.3698"></a>
<span class="sourceLineNo">3699</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3699"></a>
<span class="sourceLineNo">3700</span>     * public long doSomething(int a, int b) {<a name="line.3700"></a>
<span class="sourceLineNo">3701</span>     *    EntryMessage m = traceEntry("doSomething(a={}, b={})", a, b);<a name="line.3701"></a>
<span class="sourceLineNo">3702</span>     *    // ...<a name="line.3702"></a>
<span class="sourceLineNo">3703</span>     *    return LOGGER.traceExit(m, myResult);<a name="line.3703"></a>
<span class="sourceLineNo">3704</span>     * }<a name="line.3704"></a>
<span class="sourceLineNo">3705</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3705"></a>
<span class="sourceLineNo">3706</span>     * @param message The Message containing the formatted result.<a name="line.3706"></a>
<span class="sourceLineNo">3707</span>     * @param result The result being returned from the method call.<a name="line.3707"></a>
<span class="sourceLineNo">3708</span>     *<a name="line.3708"></a>
<span class="sourceLineNo">3709</span>     * @param &lt;R&gt; The type of the parameter and object being returned.<a name="line.3709"></a>
<span class="sourceLineNo">3710</span>     * @return the result.<a name="line.3710"></a>
<span class="sourceLineNo">3711</span>     *<a name="line.3711"></a>
<span class="sourceLineNo">3712</span>     * @since 2.6<a name="line.3712"></a>
<span class="sourceLineNo">3713</span>     */<a name="line.3713"></a>
<span class="sourceLineNo">3714</span>    &lt;R&gt; R traceExit(EntryMessage message, R result);<a name="line.3714"></a>
<span class="sourceLineNo">3715</span><a name="line.3715"></a>
<span class="sourceLineNo">3716</span>    /**<a name="line.3716"></a>
<span class="sourceLineNo">3717</span>     * Logs exiting from a method with the result. Allows custom formatting of the result. This may be coded as:<a name="line.3717"></a>
<span class="sourceLineNo">3718</span>     *<a name="line.3718"></a>
<span class="sourceLineNo">3719</span>     * &lt;pre&gt;&lt;code&gt;<a name="line.3719"></a>
<span class="sourceLineNo">3720</span>     * return LOGGER.traceExit(new JsonMessage(myResult), myResult);<a name="line.3720"></a>
<span class="sourceLineNo">3721</span>     * &lt;/code&gt;&lt;/pre&gt;<a name="line.3721"></a>
<span class="sourceLineNo">3722</span>     * @param message The Message containing the formatted result.<a name="line.3722"></a>
<span class="sourceLineNo">3723</span>     * @param result The result being returned from the method call.<a name="line.3723"></a>
<span class="sourceLineNo">3724</span>     *<a name="line.3724"></a>
<span class="sourceLineNo">3725</span>     * @param &lt;R&gt; The type of the parameter and object being returned.<a name="line.3725"></a>
<span class="sourceLineNo">3726</span>     * @return the result.<a name="line.3726"></a>
<span class="sourceLineNo">3727</span>     *<a name="line.3727"></a>
<span class="sourceLineNo">3728</span>     * @since 2.6<a name="line.3728"></a>
<span class="sourceLineNo">3729</span>     */<a name="line.3729"></a>
<span class="sourceLineNo">3730</span>    &lt;R&gt; R traceExit(Message message, R result);<a name="line.3730"></a>
<span class="sourceLineNo">3731</span><a name="line.3731"></a>
<span class="sourceLineNo">3732</span>    /**<a name="line.3732"></a>
<span class="sourceLineNo">3733</span>     * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.<a name="line.3733"></a>
<span class="sourceLineNo">3734</span>     *<a name="line.3734"></a>
<span class="sourceLineNo">3735</span>     * @param marker the marker data specific to this log statement<a name="line.3735"></a>
<span class="sourceLineNo">3736</span>     * @param msg the message string to be logged<a name="line.3736"></a>
<span class="sourceLineNo">3737</span>     */<a name="line.3737"></a>
<span class="sourceLineNo">3738</span>    void warn(Marker marker, Message msg);<a name="line.3738"></a>
<span class="sourceLineNo">3739</span><a name="line.3739"></a>
<span class="sourceLineNo">3740</span>    /**<a name="line.3740"></a>
<span class="sourceLineNo">3741</span>     * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.<a name="line.3741"></a>
<span class="sourceLineNo">3742</span>     *<a name="line.3742"></a>
<span class="sourceLineNo">3743</span>     * @param marker the marker data specific to this log statement<a name="line.3743"></a>
<span class="sourceLineNo">3744</span>     * @param msg the message string to be logged<a name="line.3744"></a>
<span class="sourceLineNo">3745</span>     * @param t A Throwable or null.<a name="line.3745"></a>
<span class="sourceLineNo">3746</span>     */<a name="line.3746"></a>
<span class="sourceLineNo">3747</span>    void warn(Marker marker, Message msg, Throwable t);<a name="line.3747"></a>
<span class="sourceLineNo">3748</span><a name="line.3748"></a>
<span class="sourceLineNo">3749</span>    /**<a name="line.3749"></a>
<span class="sourceLineNo">3750</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level with the<a name="line.3750"></a>
<span class="sourceLineNo">3751</span>     * specified Marker. The {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the<a name="line.3751"></a>
<span class="sourceLineNo">3752</span>     * {@code Message}.<a name="line.3752"></a>
<span class="sourceLineNo">3753</span>     *<a name="line.3753"></a>
<span class="sourceLineNo">3754</span>     * @param marker the marker data specific to this log statement<a name="line.3754"></a>
<span class="sourceLineNo">3755</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3755"></a>
<span class="sourceLineNo">3756</span>     * @since 2.4<a name="line.3756"></a>
<span class="sourceLineNo">3757</span>     */<a name="line.3757"></a>
<span class="sourceLineNo">3758</span>    void warn(Marker marker, MessageSupplier msgSupplier);<a name="line.3758"></a>
<span class="sourceLineNo">3759</span><a name="line.3759"></a>
<span class="sourceLineNo">3760</span>    /**<a name="line.3760"></a>
<span class="sourceLineNo">3761</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) with the<a name="line.3761"></a>
<span class="sourceLineNo">3762</span>     * specified Marker and including the stack warn of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The<a name="line.3762"></a>
<span class="sourceLineNo">3763</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.3763"></a>
<span class="sourceLineNo">3764</span>     *<a name="line.3764"></a>
<span class="sourceLineNo">3765</span>     * @param marker the marker data specific to this log statement<a name="line.3765"></a>
<span class="sourceLineNo">3766</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3766"></a>
<span class="sourceLineNo">3767</span>     * @param t A Throwable or null.<a name="line.3767"></a>
<span class="sourceLineNo">3768</span>     * @since 2.4<a name="line.3768"></a>
<span class="sourceLineNo">3769</span>     */<a name="line.3769"></a>
<span class="sourceLineNo">3770</span>    void warn(Marker marker, MessageSupplier msgSupplier, Throwable t);<a name="line.3770"></a>
<span class="sourceLineNo">3771</span><a name="line.3771"></a>
<span class="sourceLineNo">3772</span>    /**<a name="line.3772"></a>
<span class="sourceLineNo">3773</span>     * Logs a message CharSequence with the {@link Level#WARN WARN} level.<a name="line.3773"></a>
<span class="sourceLineNo">3774</span>     *<a name="line.3774"></a>
<span class="sourceLineNo">3775</span>     * @param marker the marker data specific to this log statement<a name="line.3775"></a>
<span class="sourceLineNo">3776</span>     * @param message the message CharSequence to log.<a name="line.3776"></a>
<span class="sourceLineNo">3777</span>     */<a name="line.3777"></a>
<span class="sourceLineNo">3778</span>    void warn(Marker marker, CharSequence message);<a name="line.3778"></a>
<span class="sourceLineNo">3779</span><a name="line.3779"></a>
<span class="sourceLineNo">3780</span>    /**<a name="line.3780"></a>
<span class="sourceLineNo">3781</span>     * Logs a CharSequence at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}<a name="line.3781"></a>
<span class="sourceLineNo">3782</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3782"></a>
<span class="sourceLineNo">3783</span>     *<a name="line.3783"></a>
<span class="sourceLineNo">3784</span>     * @param marker the marker data specific to this log statement<a name="line.3784"></a>
<span class="sourceLineNo">3785</span>     * @param message the message CharSequence to log.<a name="line.3785"></a>
<span class="sourceLineNo">3786</span>     * @param t the exception to log, including its stack trace.<a name="line.3786"></a>
<span class="sourceLineNo">3787</span>     */<a name="line.3787"></a>
<span class="sourceLineNo">3788</span>    void warn(Marker marker, CharSequence message, Throwable t);<a name="line.3788"></a>
<span class="sourceLineNo">3789</span><a name="line.3789"></a>
<span class="sourceLineNo">3790</span>    /**<a name="line.3790"></a>
<span class="sourceLineNo">3791</span>     * Logs a message object with the {@link Level#WARN WARN} level.<a name="line.3791"></a>
<span class="sourceLineNo">3792</span>     *<a name="line.3792"></a>
<span class="sourceLineNo">3793</span>     * @param marker the marker data specific to this log statement<a name="line.3793"></a>
<span class="sourceLineNo">3794</span>     * @param message the message object to log.<a name="line.3794"></a>
<span class="sourceLineNo">3795</span>     */<a name="line.3795"></a>
<span class="sourceLineNo">3796</span>    void warn(Marker marker, Object message);<a name="line.3796"></a>
<span class="sourceLineNo">3797</span><a name="line.3797"></a>
<span class="sourceLineNo">3798</span>    /**<a name="line.3798"></a>
<span class="sourceLineNo">3799</span>     * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}<a name="line.3799"></a>
<span class="sourceLineNo">3800</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3800"></a>
<span class="sourceLineNo">3801</span>     *<a name="line.3801"></a>
<span class="sourceLineNo">3802</span>     * @param marker the marker data specific to this log statement<a name="line.3802"></a>
<span class="sourceLineNo">3803</span>     * @param message the message object to log.<a name="line.3803"></a>
<span class="sourceLineNo">3804</span>     * @param t the exception to log, including its stack trace.<a name="line.3804"></a>
<span class="sourceLineNo">3805</span>     */<a name="line.3805"></a>
<span class="sourceLineNo">3806</span>    void warn(Marker marker, Object message, Throwable t);<a name="line.3806"></a>
<span class="sourceLineNo">3807</span><a name="line.3807"></a>
<span class="sourceLineNo">3808</span>    /**<a name="line.3808"></a>
<span class="sourceLineNo">3809</span>     * Logs a message object with the {@link Level#WARN WARN} level.<a name="line.3809"></a>
<span class="sourceLineNo">3810</span>     *<a name="line.3810"></a>
<span class="sourceLineNo">3811</span>     * @param marker the marker data specific to this log statement<a name="line.3811"></a>
<span class="sourceLineNo">3812</span>     * @param message the message object to log.<a name="line.3812"></a>
<span class="sourceLineNo">3813</span>     */<a name="line.3813"></a>
<span class="sourceLineNo">3814</span>    void warn(Marker marker, String message);<a name="line.3814"></a>
<span class="sourceLineNo">3815</span><a name="line.3815"></a>
<span class="sourceLineNo">3816</span>    /**<a name="line.3816"></a>
<span class="sourceLineNo">3817</span>     * Logs a message with parameters at the {@link Level#WARN WARN} level.<a name="line.3817"></a>
<span class="sourceLineNo">3818</span>     *<a name="line.3818"></a>
<span class="sourceLineNo">3819</span>     * @param marker the marker data specific to this log statement.<a name="line.3819"></a>
<span class="sourceLineNo">3820</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3820"></a>
<span class="sourceLineNo">3821</span>     * @param params parameters to the message.<a name="line.3821"></a>
<span class="sourceLineNo">3822</span>     * @see #getMessageFactory()<a name="line.3822"></a>
<span class="sourceLineNo">3823</span>     */<a name="line.3823"></a>
<span class="sourceLineNo">3824</span>    void warn(Marker marker, String message, Object... params);<a name="line.3824"></a>
<span class="sourceLineNo">3825</span><a name="line.3825"></a>
<span class="sourceLineNo">3826</span>    /**<a name="line.3826"></a>
<span class="sourceLineNo">3827</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#WARN<a name="line.3827"></a>
<span class="sourceLineNo">3828</span>     * WARN} level.<a name="line.3828"></a>
<span class="sourceLineNo">3829</span>     *<a name="line.3829"></a>
<span class="sourceLineNo">3830</span>     * @param marker the marker data specific to this log statement<a name="line.3830"></a>
<span class="sourceLineNo">3831</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3831"></a>
<span class="sourceLineNo">3832</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.3832"></a>
<span class="sourceLineNo">3833</span>     * @since 2.4<a name="line.3833"></a>
<span class="sourceLineNo">3834</span>     */<a name="line.3834"></a>
<span class="sourceLineNo">3835</span>    void warn(Marker marker, String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.3835"></a>
<span class="sourceLineNo">3836</span><a name="line.3836"></a>
<span class="sourceLineNo">3837</span>    /**<a name="line.3837"></a>
<span class="sourceLineNo">3838</span>     * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}<a name="line.3838"></a>
<span class="sourceLineNo">3839</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3839"></a>
<span class="sourceLineNo">3840</span>     *<a name="line.3840"></a>
<span class="sourceLineNo">3841</span>     * @param marker the marker data specific to this log statement<a name="line.3841"></a>
<span class="sourceLineNo">3842</span>     * @param message the message object to log.<a name="line.3842"></a>
<span class="sourceLineNo">3843</span>     * @param t the exception to log, including its stack trace.<a name="line.3843"></a>
<span class="sourceLineNo">3844</span>     */<a name="line.3844"></a>
<span class="sourceLineNo">3845</span>    void warn(Marker marker, String message, Throwable t);<a name="line.3845"></a>
<span class="sourceLineNo">3846</span><a name="line.3846"></a>
<span class="sourceLineNo">3847</span>    /**<a name="line.3847"></a>
<span class="sourceLineNo">3848</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level with the<a name="line.3848"></a>
<span class="sourceLineNo">3849</span>     * specified Marker.<a name="line.3849"></a>
<span class="sourceLineNo">3850</span>     *<a name="line.3850"></a>
<span class="sourceLineNo">3851</span>     * @param marker the marker data specific to this log statement<a name="line.3851"></a>
<span class="sourceLineNo">3852</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3852"></a>
<span class="sourceLineNo">3853</span>     *            message factory.<a name="line.3853"></a>
<span class="sourceLineNo">3854</span>     * @since 2.4<a name="line.3854"></a>
<span class="sourceLineNo">3855</span>     */<a name="line.3855"></a>
<span class="sourceLineNo">3856</span>    void warn(Marker marker, Supplier&lt;?&gt; msgSupplier);<a name="line.3856"></a>
<span class="sourceLineNo">3857</span><a name="line.3857"></a>
<span class="sourceLineNo">3858</span>    /**<a name="line.3858"></a>
<span class="sourceLineNo">3859</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) with the<a name="line.3859"></a>
<span class="sourceLineNo">3860</span>     * specified Marker and including the stack warn of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3860"></a>
<span class="sourceLineNo">3861</span>     *<a name="line.3861"></a>
<span class="sourceLineNo">3862</span>     * @param marker the marker data specific to this log statement<a name="line.3862"></a>
<span class="sourceLineNo">3863</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3863"></a>
<span class="sourceLineNo">3864</span>     *            message factory.<a name="line.3864"></a>
<span class="sourceLineNo">3865</span>     * @param t A Throwable or null.<a name="line.3865"></a>
<span class="sourceLineNo">3866</span>     * @since 2.4<a name="line.3866"></a>
<span class="sourceLineNo">3867</span>     */<a name="line.3867"></a>
<span class="sourceLineNo">3868</span>    void warn(Marker marker, Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.3868"></a>
<span class="sourceLineNo">3869</span><a name="line.3869"></a>
<span class="sourceLineNo">3870</span>    /**<a name="line.3870"></a>
<span class="sourceLineNo">3871</span>     * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.<a name="line.3871"></a>
<span class="sourceLineNo">3872</span>     *<a name="line.3872"></a>
<span class="sourceLineNo">3873</span>     * @param msg the message string to be logged<a name="line.3873"></a>
<span class="sourceLineNo">3874</span>     */<a name="line.3874"></a>
<span class="sourceLineNo">3875</span>    void warn(Message msg);<a name="line.3875"></a>
<span class="sourceLineNo">3876</span><a name="line.3876"></a>
<span class="sourceLineNo">3877</span>    /**<a name="line.3877"></a>
<span class="sourceLineNo">3878</span>     * Logs a message with the specific Marker at the {@link Level#WARN WARN} level.<a name="line.3878"></a>
<span class="sourceLineNo">3879</span>     *<a name="line.3879"></a>
<span class="sourceLineNo">3880</span>     * @param msg the message string to be logged<a name="line.3880"></a>
<span class="sourceLineNo">3881</span>     * @param t A Throwable or null.<a name="line.3881"></a>
<span class="sourceLineNo">3882</span>     */<a name="line.3882"></a>
<span class="sourceLineNo">3883</span>    void warn(Message msg, Throwable t);<a name="line.3883"></a>
<span class="sourceLineNo">3884</span><a name="line.3884"></a>
<span class="sourceLineNo">3885</span>    /**<a name="line.3885"></a>
<span class="sourceLineNo">3886</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level. The<a name="line.3886"></a>
<span class="sourceLineNo">3887</span>     * {@code MessageSupplier} may or may not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.3887"></a>
<span class="sourceLineNo">3888</span>     *<a name="line.3888"></a>
<span class="sourceLineNo">3889</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3889"></a>
<span class="sourceLineNo">3890</span>     * @since 2.4<a name="line.3890"></a>
<span class="sourceLineNo">3891</span>     */<a name="line.3891"></a>
<span class="sourceLineNo">3892</span>    void warn(MessageSupplier msgSupplier);<a name="line.3892"></a>
<span class="sourceLineNo">3893</span><a name="line.3893"></a>
<span class="sourceLineNo">3894</span>    /**<a name="line.3894"></a>
<span class="sourceLineNo">3895</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) including the<a name="line.3895"></a>
<span class="sourceLineNo">3896</span>     * stack warn of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter. The {@code MessageSupplier} may or may<a name="line.3896"></a>
<span class="sourceLineNo">3897</span>     * not use the {@link MessageFactory} to construct the {@code Message}.<a name="line.3897"></a>
<span class="sourceLineNo">3898</span>     *<a name="line.3898"></a>
<span class="sourceLineNo">3899</span>     * @param msgSupplier A function, which when called, produces the desired log message.<a name="line.3899"></a>
<span class="sourceLineNo">3900</span>     * @param t the exception to log, including its stack warn.<a name="line.3900"></a>
<span class="sourceLineNo">3901</span>     * @since 2.4<a name="line.3901"></a>
<span class="sourceLineNo">3902</span>     */<a name="line.3902"></a>
<span class="sourceLineNo">3903</span>    void warn(MessageSupplier msgSupplier, Throwable t);<a name="line.3903"></a>
<span class="sourceLineNo">3904</span><a name="line.3904"></a>
<span class="sourceLineNo">3905</span>    /**<a name="line.3905"></a>
<span class="sourceLineNo">3906</span>     * Logs a message CharSequence with the {@link Level#WARN WARN} level.<a name="line.3906"></a>
<span class="sourceLineNo">3907</span>     *<a name="line.3907"></a>
<span class="sourceLineNo">3908</span>     * @param message the message CharSequence to log.<a name="line.3908"></a>
<span class="sourceLineNo">3909</span>     */<a name="line.3909"></a>
<span class="sourceLineNo">3910</span>    void warn(CharSequence message);<a name="line.3910"></a>
<span class="sourceLineNo">3911</span><a name="line.3911"></a>
<span class="sourceLineNo">3912</span>    /**<a name="line.3912"></a>
<span class="sourceLineNo">3913</span>     * Logs a CharSequence at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}<a name="line.3913"></a>
<span class="sourceLineNo">3914</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3914"></a>
<span class="sourceLineNo">3915</span>     *<a name="line.3915"></a>
<span class="sourceLineNo">3916</span>     * @param message the message CharSequence to log.<a name="line.3916"></a>
<span class="sourceLineNo">3917</span>     * @param t the exception to log, including its stack trace.<a name="line.3917"></a>
<span class="sourceLineNo">3918</span>     */<a name="line.3918"></a>
<span class="sourceLineNo">3919</span>    void warn(CharSequence message, Throwable t);<a name="line.3919"></a>
<span class="sourceLineNo">3920</span><a name="line.3920"></a>
<span class="sourceLineNo">3921</span>    /**<a name="line.3921"></a>
<span class="sourceLineNo">3922</span>     * Logs a message object with the {@link Level#WARN WARN} level.<a name="line.3922"></a>
<span class="sourceLineNo">3923</span>     *<a name="line.3923"></a>
<span class="sourceLineNo">3924</span>     * @param message the message object to log.<a name="line.3924"></a>
<span class="sourceLineNo">3925</span>     */<a name="line.3925"></a>
<span class="sourceLineNo">3926</span>    void warn(Object message);<a name="line.3926"></a>
<span class="sourceLineNo">3927</span><a name="line.3927"></a>
<span class="sourceLineNo">3928</span>    /**<a name="line.3928"></a>
<span class="sourceLineNo">3929</span>     * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}<a name="line.3929"></a>
<span class="sourceLineNo">3930</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3930"></a>
<span class="sourceLineNo">3931</span>     *<a name="line.3931"></a>
<span class="sourceLineNo">3932</span>     * @param message the message object to log.<a name="line.3932"></a>
<span class="sourceLineNo">3933</span>     * @param t the exception to log, including its stack trace.<a name="line.3933"></a>
<span class="sourceLineNo">3934</span>     */<a name="line.3934"></a>
<span class="sourceLineNo">3935</span>    void warn(Object message, Throwable t);<a name="line.3935"></a>
<span class="sourceLineNo">3936</span><a name="line.3936"></a>
<span class="sourceLineNo">3937</span>    /**<a name="line.3937"></a>
<span class="sourceLineNo">3938</span>     * Logs a message object with the {@link Level#WARN WARN} level.<a name="line.3938"></a>
<span class="sourceLineNo">3939</span>     *<a name="line.3939"></a>
<span class="sourceLineNo">3940</span>     * @param message the message string to log.<a name="line.3940"></a>
<span class="sourceLineNo">3941</span>     */<a name="line.3941"></a>
<span class="sourceLineNo">3942</span>    void warn(String message);<a name="line.3942"></a>
<span class="sourceLineNo">3943</span><a name="line.3943"></a>
<span class="sourceLineNo">3944</span>    /**<a name="line.3944"></a>
<span class="sourceLineNo">3945</span>     * Logs a message with parameters at the {@link Level#WARN WARN} level.<a name="line.3945"></a>
<span class="sourceLineNo">3946</span>     *<a name="line.3946"></a>
<span class="sourceLineNo">3947</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3947"></a>
<span class="sourceLineNo">3948</span>     * @param params parameters to the message.<a name="line.3948"></a>
<span class="sourceLineNo">3949</span>     * @see #getMessageFactory()<a name="line.3949"></a>
<span class="sourceLineNo">3950</span>     */<a name="line.3950"></a>
<span class="sourceLineNo">3951</span>    void warn(String message, Object... params);<a name="line.3951"></a>
<span class="sourceLineNo">3952</span><a name="line.3952"></a>
<span class="sourceLineNo">3953</span>    /**<a name="line.3953"></a>
<span class="sourceLineNo">3954</span>     * Logs a message with parameters which are only to be constructed if the logging level is the {@link Level#WARN<a name="line.3954"></a>
<span class="sourceLineNo">3955</span>     * WARN} level.<a name="line.3955"></a>
<span class="sourceLineNo">3956</span>     *<a name="line.3956"></a>
<span class="sourceLineNo">3957</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3957"></a>
<span class="sourceLineNo">3958</span>     * @param paramSuppliers An array of functions, which when called, produce the desired log message parameters.<a name="line.3958"></a>
<span class="sourceLineNo">3959</span>     * @since 2.4<a name="line.3959"></a>
<span class="sourceLineNo">3960</span>     */<a name="line.3960"></a>
<span class="sourceLineNo">3961</span>    void warn(String message, Supplier&lt;?&gt;... paramSuppliers);<a name="line.3961"></a>
<span class="sourceLineNo">3962</span><a name="line.3962"></a>
<span class="sourceLineNo">3963</span>    /**<a name="line.3963"></a>
<span class="sourceLineNo">3964</span>     * Logs a message at the {@link Level#WARN WARN} level including the stack trace of the {@link Throwable}<a name="line.3964"></a>
<span class="sourceLineNo">3965</span>     * &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3965"></a>
<span class="sourceLineNo">3966</span>     *<a name="line.3966"></a>
<span class="sourceLineNo">3967</span>     * @param message the message object to log.<a name="line.3967"></a>
<span class="sourceLineNo">3968</span>     * @param t the exception to log, including its stack trace.<a name="line.3968"></a>
<span class="sourceLineNo">3969</span>     */<a name="line.3969"></a>
<span class="sourceLineNo">3970</span>    void warn(String message, Throwable t);<a name="line.3970"></a>
<span class="sourceLineNo">3971</span><a name="line.3971"></a>
<span class="sourceLineNo">3972</span>    /**<a name="line.3972"></a>
<span class="sourceLineNo">3973</span>     * Logs a message which is only to be constructed if the logging level is the {@link Level#WARN WARN} level.<a name="line.3973"></a>
<span class="sourceLineNo">3974</span>     *<a name="line.3974"></a>
<span class="sourceLineNo">3975</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3975"></a>
<span class="sourceLineNo">3976</span>     *            message factory.<a name="line.3976"></a>
<span class="sourceLineNo">3977</span>     * @since 2.4<a name="line.3977"></a>
<span class="sourceLineNo">3978</span>     */<a name="line.3978"></a>
<span class="sourceLineNo">3979</span>    void warn(Supplier&lt;?&gt; msgSupplier);<a name="line.3979"></a>
<span class="sourceLineNo">3980</span><a name="line.3980"></a>
<span class="sourceLineNo">3981</span>    /**<a name="line.3981"></a>
<span class="sourceLineNo">3982</span>     * Logs a message (only to be constructed if the logging level is the {@link Level#WARN WARN} level) including the<a name="line.3982"></a>
<span class="sourceLineNo">3983</span>     * stack warn of the {@link Throwable} &lt;code&gt;t&lt;/code&gt; passed as parameter.<a name="line.3983"></a>
<span class="sourceLineNo">3984</span>     *<a name="line.3984"></a>
<span class="sourceLineNo">3985</span>     * @param msgSupplier A function, which when called, produces the desired log message; the format depends on the<a name="line.3985"></a>
<span class="sourceLineNo">3986</span>     *            message factory.<a name="line.3986"></a>
<span class="sourceLineNo">3987</span>     * @param t the exception to log, including its stack warn.<a name="line.3987"></a>
<span class="sourceLineNo">3988</span>     * @since 2.4<a name="line.3988"></a>
<span class="sourceLineNo">3989</span>     */<a name="line.3989"></a>
<span class="sourceLineNo">3990</span>    void warn(Supplier&lt;?&gt; msgSupplier, Throwable t);<a name="line.3990"></a>
<span class="sourceLineNo">3991</span><a name="line.3991"></a>
<span class="sourceLineNo">3992</span>    /**<a name="line.3992"></a>
<span class="sourceLineNo">3993</span>     * Logs a message with parameters at warn level.<a name="line.3993"></a>
<span class="sourceLineNo">3994</span>     *<a name="line.3994"></a>
<span class="sourceLineNo">3995</span>     * @param marker the marker data specific to this log statement<a name="line.3995"></a>
<span class="sourceLineNo">3996</span>     * @param message the message to log; the format depends on the message factory.<a name="line.3996"></a>
<span class="sourceLineNo">3997</span>     * @param p0 parameter to the message.<a name="line.3997"></a>
<span class="sourceLineNo">3998</span>     */<a name="line.3998"></a>
<span class="sourceLineNo">3999</span>    void warn(Marker marker, String message, Object p0);<a name="line.3999"></a>
<span class="sourceLineNo">4000</span><a name="line.4000"></a>
<span class="sourceLineNo">4001</span>    /**<a name="line.4001"></a>
<span class="sourceLineNo">4002</span>     * Logs a message with parameters at warn level.<a name="line.4002"></a>
<span class="sourceLineNo">4003</span>     *<a name="line.4003"></a>
<span class="sourceLineNo">4004</span>     * @param marker the marker data specific to this log statement<a name="line.4004"></a>
<span class="sourceLineNo">4005</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4005"></a>
<span class="sourceLineNo">4006</span>     * @param p0 parameter to the message.<a name="line.4006"></a>
<span class="sourceLineNo">4007</span>     * @param p1 parameter to the message.<a name="line.4007"></a>
<span class="sourceLineNo">4008</span>     */<a name="line.4008"></a>
<span class="sourceLineNo">4009</span>    void warn(Marker marker, String message, Object p0, Object p1);<a name="line.4009"></a>
<span class="sourceLineNo">4010</span><a name="line.4010"></a>
<span class="sourceLineNo">4011</span>    /**<a name="line.4011"></a>
<span class="sourceLineNo">4012</span>     * Logs a message with parameters at warn level.<a name="line.4012"></a>
<span class="sourceLineNo">4013</span>     *<a name="line.4013"></a>
<span class="sourceLineNo">4014</span>     * @param marker the marker data specific to this log statement<a name="line.4014"></a>
<span class="sourceLineNo">4015</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4015"></a>
<span class="sourceLineNo">4016</span>     * @param p0 parameter to the message.<a name="line.4016"></a>
<span class="sourceLineNo">4017</span>     * @param p1 parameter to the message.<a name="line.4017"></a>
<span class="sourceLineNo">4018</span>     * @param p2 parameter to the message.<a name="line.4018"></a>
<span class="sourceLineNo">4019</span>     */<a name="line.4019"></a>
<span class="sourceLineNo">4020</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2);<a name="line.4020"></a>
<span class="sourceLineNo">4021</span><a name="line.4021"></a>
<span class="sourceLineNo">4022</span>    /**<a name="line.4022"></a>
<span class="sourceLineNo">4023</span>     * Logs a message with parameters at warn level.<a name="line.4023"></a>
<span class="sourceLineNo">4024</span>     *<a name="line.4024"></a>
<span class="sourceLineNo">4025</span>     * @param marker the marker data specific to this log statement<a name="line.4025"></a>
<span class="sourceLineNo">4026</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4026"></a>
<span class="sourceLineNo">4027</span>     * @param p0 parameter to the message.<a name="line.4027"></a>
<span class="sourceLineNo">4028</span>     * @param p1 parameter to the message.<a name="line.4028"></a>
<span class="sourceLineNo">4029</span>     * @param p2 parameter to the message.<a name="line.4029"></a>
<span class="sourceLineNo">4030</span>     * @param p3 parameter to the message.<a name="line.4030"></a>
<span class="sourceLineNo">4031</span>     */<a name="line.4031"></a>
<span class="sourceLineNo">4032</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3);<a name="line.4032"></a>
<span class="sourceLineNo">4033</span><a name="line.4033"></a>
<span class="sourceLineNo">4034</span>    /**<a name="line.4034"></a>
<span class="sourceLineNo">4035</span>     * Logs a message with parameters at warn level.<a name="line.4035"></a>
<span class="sourceLineNo">4036</span>     *<a name="line.4036"></a>
<span class="sourceLineNo">4037</span>     * @param marker the marker data specific to this log statement<a name="line.4037"></a>
<span class="sourceLineNo">4038</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4038"></a>
<span class="sourceLineNo">4039</span>     * @param p0 parameter to the message.<a name="line.4039"></a>
<span class="sourceLineNo">4040</span>     * @param p1 parameter to the message.<a name="line.4040"></a>
<span class="sourceLineNo">4041</span>     * @param p2 parameter to the message.<a name="line.4041"></a>
<span class="sourceLineNo">4042</span>     * @param p3 parameter to the message.<a name="line.4042"></a>
<span class="sourceLineNo">4043</span>     * @param p4 parameter to the message.<a name="line.4043"></a>
<span class="sourceLineNo">4044</span>     */<a name="line.4044"></a>
<span class="sourceLineNo">4045</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.4045"></a>
<span class="sourceLineNo">4046</span><a name="line.4046"></a>
<span class="sourceLineNo">4047</span>    /**<a name="line.4047"></a>
<span class="sourceLineNo">4048</span>     * Logs a message with parameters at warn level.<a name="line.4048"></a>
<span class="sourceLineNo">4049</span>     *<a name="line.4049"></a>
<span class="sourceLineNo">4050</span>     * @param marker the marker data specific to this log statement<a name="line.4050"></a>
<span class="sourceLineNo">4051</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4051"></a>
<span class="sourceLineNo">4052</span>     * @param p0 parameter to the message.<a name="line.4052"></a>
<span class="sourceLineNo">4053</span>     * @param p1 parameter to the message.<a name="line.4053"></a>
<span class="sourceLineNo">4054</span>     * @param p2 parameter to the message.<a name="line.4054"></a>
<span class="sourceLineNo">4055</span>     * @param p3 parameter to the message.<a name="line.4055"></a>
<span class="sourceLineNo">4056</span>     * @param p4 parameter to the message.<a name="line.4056"></a>
<span class="sourceLineNo">4057</span>     * @param p5 parameter to the message.<a name="line.4057"></a>
<span class="sourceLineNo">4058</span>     */<a name="line.4058"></a>
<span class="sourceLineNo">4059</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.4059"></a>
<span class="sourceLineNo">4060</span><a name="line.4060"></a>
<span class="sourceLineNo">4061</span>    /**<a name="line.4061"></a>
<span class="sourceLineNo">4062</span>     * Logs a message with parameters at warn level.<a name="line.4062"></a>
<span class="sourceLineNo">4063</span>     *<a name="line.4063"></a>
<span class="sourceLineNo">4064</span>     * @param marker the marker data specific to this log statement<a name="line.4064"></a>
<span class="sourceLineNo">4065</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4065"></a>
<span class="sourceLineNo">4066</span>     * @param p0 parameter to the message.<a name="line.4066"></a>
<span class="sourceLineNo">4067</span>     * @param p1 parameter to the message.<a name="line.4067"></a>
<span class="sourceLineNo">4068</span>     * @param p2 parameter to the message.<a name="line.4068"></a>
<span class="sourceLineNo">4069</span>     * @param p3 parameter to the message.<a name="line.4069"></a>
<span class="sourceLineNo">4070</span>     * @param p4 parameter to the message.<a name="line.4070"></a>
<span class="sourceLineNo">4071</span>     * @param p5 parameter to the message.<a name="line.4071"></a>
<span class="sourceLineNo">4072</span>     * @param p6 parameter to the message.<a name="line.4072"></a>
<span class="sourceLineNo">4073</span>     */<a name="line.4073"></a>
<span class="sourceLineNo">4074</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5,<a name="line.4074"></a>
<span class="sourceLineNo">4075</span>            Object p6);<a name="line.4075"></a>
<span class="sourceLineNo">4076</span><a name="line.4076"></a>
<span class="sourceLineNo">4077</span>    /**<a name="line.4077"></a>
<span class="sourceLineNo">4078</span>     * Logs a message with parameters at warn level.<a name="line.4078"></a>
<span class="sourceLineNo">4079</span>     *<a name="line.4079"></a>
<span class="sourceLineNo">4080</span>     * @param marker the marker data specific to this log statement<a name="line.4080"></a>
<span class="sourceLineNo">4081</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4081"></a>
<span class="sourceLineNo">4082</span>     * @param p0 parameter to the message.<a name="line.4082"></a>
<span class="sourceLineNo">4083</span>     * @param p1 parameter to the message.<a name="line.4083"></a>
<span class="sourceLineNo">4084</span>     * @param p2 parameter to the message.<a name="line.4084"></a>
<span class="sourceLineNo">4085</span>     * @param p3 parameter to the message.<a name="line.4085"></a>
<span class="sourceLineNo">4086</span>     * @param p4 parameter to the message.<a name="line.4086"></a>
<span class="sourceLineNo">4087</span>     * @param p5 parameter to the message.<a name="line.4087"></a>
<span class="sourceLineNo">4088</span>     * @param p6 parameter to the message.<a name="line.4088"></a>
<span class="sourceLineNo">4089</span>     * @param p7 parameter to the message.<a name="line.4089"></a>
<span class="sourceLineNo">4090</span>     */<a name="line.4090"></a>
<span class="sourceLineNo">4091</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.4091"></a>
<span class="sourceLineNo">4092</span>            Object p7);<a name="line.4092"></a>
<span class="sourceLineNo">4093</span><a name="line.4093"></a>
<span class="sourceLineNo">4094</span>    /**<a name="line.4094"></a>
<span class="sourceLineNo">4095</span>     * Logs a message with parameters at warn level.<a name="line.4095"></a>
<span class="sourceLineNo">4096</span>     *<a name="line.4096"></a>
<span class="sourceLineNo">4097</span>     * @param marker the marker data specific to this log statement<a name="line.4097"></a>
<span class="sourceLineNo">4098</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4098"></a>
<span class="sourceLineNo">4099</span>     * @param p0 parameter to the message.<a name="line.4099"></a>
<span class="sourceLineNo">4100</span>     * @param p1 parameter to the message.<a name="line.4100"></a>
<span class="sourceLineNo">4101</span>     * @param p2 parameter to the message.<a name="line.4101"></a>
<span class="sourceLineNo">4102</span>     * @param p3 parameter to the message.<a name="line.4102"></a>
<span class="sourceLineNo">4103</span>     * @param p4 parameter to the message.<a name="line.4103"></a>
<span class="sourceLineNo">4104</span>     * @param p5 parameter to the message.<a name="line.4104"></a>
<span class="sourceLineNo">4105</span>     * @param p6 parameter to the message.<a name="line.4105"></a>
<span class="sourceLineNo">4106</span>     * @param p7 parameter to the message.<a name="line.4106"></a>
<span class="sourceLineNo">4107</span>     * @param p8 parameter to the message.<a name="line.4107"></a>
<span class="sourceLineNo">4108</span>     */<a name="line.4108"></a>
<span class="sourceLineNo">4109</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.4109"></a>
<span class="sourceLineNo">4110</span>            Object p7, Object p8);<a name="line.4110"></a>
<span class="sourceLineNo">4111</span><a name="line.4111"></a>
<span class="sourceLineNo">4112</span>    /**<a name="line.4112"></a>
<span class="sourceLineNo">4113</span>     * Logs a message with parameters at warn level.<a name="line.4113"></a>
<span class="sourceLineNo">4114</span>     *<a name="line.4114"></a>
<span class="sourceLineNo">4115</span>     * @param marker the marker data specific to this log statement<a name="line.4115"></a>
<span class="sourceLineNo">4116</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4116"></a>
<span class="sourceLineNo">4117</span>     * @param p0 parameter to the message.<a name="line.4117"></a>
<span class="sourceLineNo">4118</span>     * @param p1 parameter to the message.<a name="line.4118"></a>
<span class="sourceLineNo">4119</span>     * @param p2 parameter to the message.<a name="line.4119"></a>
<span class="sourceLineNo">4120</span>     * @param p3 parameter to the message.<a name="line.4120"></a>
<span class="sourceLineNo">4121</span>     * @param p4 parameter to the message.<a name="line.4121"></a>
<span class="sourceLineNo">4122</span>     * @param p5 parameter to the message.<a name="line.4122"></a>
<span class="sourceLineNo">4123</span>     * @param p6 parameter to the message.<a name="line.4123"></a>
<span class="sourceLineNo">4124</span>     * @param p7 parameter to the message.<a name="line.4124"></a>
<span class="sourceLineNo">4125</span>     * @param p8 parameter to the message.<a name="line.4125"></a>
<span class="sourceLineNo">4126</span>     * @param p9 parameter to the message.<a name="line.4126"></a>
<span class="sourceLineNo">4127</span>     */<a name="line.4127"></a>
<span class="sourceLineNo">4128</span>    void warn(Marker marker, String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,<a name="line.4128"></a>
<span class="sourceLineNo">4129</span>            Object p7, Object p8, Object p9);<a name="line.4129"></a>
<span class="sourceLineNo">4130</span><a name="line.4130"></a>
<span class="sourceLineNo">4131</span>    /**<a name="line.4131"></a>
<span class="sourceLineNo">4132</span>     * Logs a message with parameters at warn level.<a name="line.4132"></a>
<span class="sourceLineNo">4133</span>     *<a name="line.4133"></a>
<span class="sourceLineNo">4134</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4134"></a>
<span class="sourceLineNo">4135</span>     * @param p0 parameter to the message.<a name="line.4135"></a>
<span class="sourceLineNo">4136</span>     */<a name="line.4136"></a>
<span class="sourceLineNo">4137</span>    void warn(String message, Object p0);<a name="line.4137"></a>
<span class="sourceLineNo">4138</span><a name="line.4138"></a>
<span class="sourceLineNo">4139</span>    /**<a name="line.4139"></a>
<span class="sourceLineNo">4140</span>     * Logs a message with parameters at warn level.<a name="line.4140"></a>
<span class="sourceLineNo">4141</span>     *<a name="line.4141"></a>
<span class="sourceLineNo">4142</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4142"></a>
<span class="sourceLineNo">4143</span>     * @param p0 parameter to the message.<a name="line.4143"></a>
<span class="sourceLineNo">4144</span>     * @param p1 parameter to the message.<a name="line.4144"></a>
<span class="sourceLineNo">4145</span>     */<a name="line.4145"></a>
<span class="sourceLineNo">4146</span>    void warn(String message, Object p0, Object p1);<a name="line.4146"></a>
<span class="sourceLineNo">4147</span><a name="line.4147"></a>
<span class="sourceLineNo">4148</span>    /**<a name="line.4148"></a>
<span class="sourceLineNo">4149</span>     * Logs a message with parameters at warn level.<a name="line.4149"></a>
<span class="sourceLineNo">4150</span>     *<a name="line.4150"></a>
<span class="sourceLineNo">4151</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4151"></a>
<span class="sourceLineNo">4152</span>     * @param p0 parameter to the message.<a name="line.4152"></a>
<span class="sourceLineNo">4153</span>     * @param p1 parameter to the message.<a name="line.4153"></a>
<span class="sourceLineNo">4154</span>     * @param p2 parameter to the message.<a name="line.4154"></a>
<span class="sourceLineNo">4155</span>     */<a name="line.4155"></a>
<span class="sourceLineNo">4156</span>    void warn(String message, Object p0, Object p1, Object p2);<a name="line.4156"></a>
<span class="sourceLineNo">4157</span><a name="line.4157"></a>
<span class="sourceLineNo">4158</span>    /**<a name="line.4158"></a>
<span class="sourceLineNo">4159</span>     * Logs a message with parameters at warn level.<a name="line.4159"></a>
<span class="sourceLineNo">4160</span>     *<a name="line.4160"></a>
<span class="sourceLineNo">4161</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4161"></a>
<span class="sourceLineNo">4162</span>     * @param p0 parameter to the message.<a name="line.4162"></a>
<span class="sourceLineNo">4163</span>     * @param p1 parameter to the message.<a name="line.4163"></a>
<span class="sourceLineNo">4164</span>     * @param p2 parameter to the message.<a name="line.4164"></a>
<span class="sourceLineNo">4165</span>     * @param p3 parameter to the message.<a name="line.4165"></a>
<span class="sourceLineNo">4166</span>     */<a name="line.4166"></a>
<span class="sourceLineNo">4167</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3);<a name="line.4167"></a>
<span class="sourceLineNo">4168</span><a name="line.4168"></a>
<span class="sourceLineNo">4169</span>    /**<a name="line.4169"></a>
<span class="sourceLineNo">4170</span>     * Logs a message with parameters at warn level.<a name="line.4170"></a>
<span class="sourceLineNo">4171</span>     *<a name="line.4171"></a>
<span class="sourceLineNo">4172</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4172"></a>
<span class="sourceLineNo">4173</span>     * @param p0 parameter to the message.<a name="line.4173"></a>
<span class="sourceLineNo">4174</span>     * @param p1 parameter to the message.<a name="line.4174"></a>
<span class="sourceLineNo">4175</span>     * @param p2 parameter to the message.<a name="line.4175"></a>
<span class="sourceLineNo">4176</span>     * @param p3 parameter to the message.<a name="line.4176"></a>
<span class="sourceLineNo">4177</span>     * @param p4 parameter to the message.<a name="line.4177"></a>
<span class="sourceLineNo">4178</span>     */<a name="line.4178"></a>
<span class="sourceLineNo">4179</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4);<a name="line.4179"></a>
<span class="sourceLineNo">4180</span><a name="line.4180"></a>
<span class="sourceLineNo">4181</span>    /**<a name="line.4181"></a>
<span class="sourceLineNo">4182</span>     * Logs a message with parameters at warn level.<a name="line.4182"></a>
<span class="sourceLineNo">4183</span>     *<a name="line.4183"></a>
<span class="sourceLineNo">4184</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4184"></a>
<span class="sourceLineNo">4185</span>     * @param p0 parameter to the message.<a name="line.4185"></a>
<span class="sourceLineNo">4186</span>     * @param p1 parameter to the message.<a name="line.4186"></a>
<span class="sourceLineNo">4187</span>     * @param p2 parameter to the message.<a name="line.4187"></a>
<span class="sourceLineNo">4188</span>     * @param p3 parameter to the message.<a name="line.4188"></a>
<span class="sourceLineNo">4189</span>     * @param p4 parameter to the message.<a name="line.4189"></a>
<span class="sourceLineNo">4190</span>     * @param p5 parameter to the message.<a name="line.4190"></a>
<span class="sourceLineNo">4191</span>     */<a name="line.4191"></a>
<span class="sourceLineNo">4192</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);<a name="line.4192"></a>
<span class="sourceLineNo">4193</span><a name="line.4193"></a>
<span class="sourceLineNo">4194</span>    /**<a name="line.4194"></a>
<span class="sourceLineNo">4195</span>     * Logs a message with parameters at warn level.<a name="line.4195"></a>
<span class="sourceLineNo">4196</span>     *<a name="line.4196"></a>
<span class="sourceLineNo">4197</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4197"></a>
<span class="sourceLineNo">4198</span>     * @param p0 parameter to the message.<a name="line.4198"></a>
<span class="sourceLineNo">4199</span>     * @param p1 parameter to the message.<a name="line.4199"></a>
<span class="sourceLineNo">4200</span>     * @param p2 parameter to the message.<a name="line.4200"></a>
<span class="sourceLineNo">4201</span>     * @param p3 parameter to the message.<a name="line.4201"></a>
<span class="sourceLineNo">4202</span>     * @param p4 parameter to the message.<a name="line.4202"></a>
<span class="sourceLineNo">4203</span>     * @param p5 parameter to the message.<a name="line.4203"></a>
<span class="sourceLineNo">4204</span>     * @param p6 parameter to the message.<a name="line.4204"></a>
<span class="sourceLineNo">4205</span>     */<a name="line.4205"></a>
<span class="sourceLineNo">4206</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);<a name="line.4206"></a>
<span class="sourceLineNo">4207</span><a name="line.4207"></a>
<span class="sourceLineNo">4208</span>    /**<a name="line.4208"></a>
<span class="sourceLineNo">4209</span>     * Logs a message with parameters at warn level.<a name="line.4209"></a>
<span class="sourceLineNo">4210</span>     *<a name="line.4210"></a>
<span class="sourceLineNo">4211</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4211"></a>
<span class="sourceLineNo">4212</span>     * @param p0 parameter to the message.<a name="line.4212"></a>
<span class="sourceLineNo">4213</span>     * @param p1 parameter to the message.<a name="line.4213"></a>
<span class="sourceLineNo">4214</span>     * @param p2 parameter to the message.<a name="line.4214"></a>
<span class="sourceLineNo">4215</span>     * @param p3 parameter to the message.<a name="line.4215"></a>
<span class="sourceLineNo">4216</span>     * @param p4 parameter to the message.<a name="line.4216"></a>
<span class="sourceLineNo">4217</span>     * @param p5 parameter to the message.<a name="line.4217"></a>
<span class="sourceLineNo">4218</span>     * @param p6 parameter to the message.<a name="line.4218"></a>
<span class="sourceLineNo">4219</span>     * @param p7 parameter to the message.<a name="line.4219"></a>
<span class="sourceLineNo">4220</span>     */<a name="line.4220"></a>
<span class="sourceLineNo">4221</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7);<a name="line.4221"></a>
<span class="sourceLineNo">4222</span><a name="line.4222"></a>
<span class="sourceLineNo">4223</span>    /**<a name="line.4223"></a>
<span class="sourceLineNo">4224</span>     * Logs a message with parameters at warn level.<a name="line.4224"></a>
<span class="sourceLineNo">4225</span>     *<a name="line.4225"></a>
<span class="sourceLineNo">4226</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4226"></a>
<span class="sourceLineNo">4227</span>     * @param p0 parameter to the message.<a name="line.4227"></a>
<span class="sourceLineNo">4228</span>     * @param p1 parameter to the message.<a name="line.4228"></a>
<span class="sourceLineNo">4229</span>     * @param p2 parameter to the message.<a name="line.4229"></a>
<span class="sourceLineNo">4230</span>     * @param p3 parameter to the message.<a name="line.4230"></a>
<span class="sourceLineNo">4231</span>     * @param p4 parameter to the message.<a name="line.4231"></a>
<span class="sourceLineNo">4232</span>     * @param p5 parameter to the message.<a name="line.4232"></a>
<span class="sourceLineNo">4233</span>     * @param p6 parameter to the message.<a name="line.4233"></a>
<span class="sourceLineNo">4234</span>     * @param p7 parameter to the message.<a name="line.4234"></a>
<span class="sourceLineNo">4235</span>     * @param p8 parameter to the message.<a name="line.4235"></a>
<span class="sourceLineNo">4236</span>     */<a name="line.4236"></a>
<span class="sourceLineNo">4237</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.4237"></a>
<span class="sourceLineNo">4238</span>            Object p8);<a name="line.4238"></a>
<span class="sourceLineNo">4239</span><a name="line.4239"></a>
<span class="sourceLineNo">4240</span>    /**<a name="line.4240"></a>
<span class="sourceLineNo">4241</span>     * Logs a message with parameters at warn level.<a name="line.4241"></a>
<span class="sourceLineNo">4242</span>     *<a name="line.4242"></a>
<span class="sourceLineNo">4243</span>     * @param message the message to log; the format depends on the message factory.<a name="line.4243"></a>
<span class="sourceLineNo">4244</span>     * @param p0 parameter to the message.<a name="line.4244"></a>
<span class="sourceLineNo">4245</span>     * @param p1 parameter to the message.<a name="line.4245"></a>
<span class="sourceLineNo">4246</span>     * @param p2 parameter to the message.<a name="line.4246"></a>
<span class="sourceLineNo">4247</span>     * @param p3 parameter to the message.<a name="line.4247"></a>
<span class="sourceLineNo">4248</span>     * @param p4 parameter to the message.<a name="line.4248"></a>
<span class="sourceLineNo">4249</span>     * @param p5 parameter to the message.<a name="line.4249"></a>
<span class="sourceLineNo">4250</span>     * @param p6 parameter to the message.<a name="line.4250"></a>
<span class="sourceLineNo">4251</span>     * @param p7 parameter to the message.<a name="line.4251"></a>
<span class="sourceLineNo">4252</span>     * @param p8 parameter to the message.<a name="line.4252"></a>
<span class="sourceLineNo">4253</span>     * @param p9 parameter to the message.<a name="line.4253"></a>
<span class="sourceLineNo">4254</span>     */<a name="line.4254"></a>
<span class="sourceLineNo">4255</span>    void warn(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7,<a name="line.4255"></a>
<span class="sourceLineNo">4256</span>            Object p8, Object p9);<a name="line.4256"></a>
<span class="sourceLineNo">4257</span><a name="line.4257"></a>
<span class="sourceLineNo">4258</span><a name="line.4258"></a>
<span class="sourceLineNo">4259</span>    /**<a name="line.4259"></a>
<span class="sourceLineNo">4260</span>     * Logs a Message.<a name="line.4260"></a>
<span class="sourceLineNo">4261</span>     * @param level The logging Level to check.<a name="line.4261"></a>
<span class="sourceLineNo">4262</span>     * @param marker A Marker or null.<a name="line.4262"></a>
<span class="sourceLineNo">4263</span>     * @param fqcn The fully qualified class name of the logger entry point, used to determine the caller class and<a name="line.4263"></a>
<span class="sourceLineNo">4264</span>     *            method when location information needs to be logged.<a name="line.4264"></a>
<span class="sourceLineNo">4265</span>     * @param location The location of the caller.<a name="line.4265"></a>
<span class="sourceLineNo">4266</span>     * @param message The message format.<a name="line.4266"></a>
<span class="sourceLineNo">4267</span>     * @param throwable the exception to log, including its stack trace.<a name="line.4267"></a>
<span class="sourceLineNo">4268</span>     * @since 2.13.0<a name="line.4268"></a>
<span class="sourceLineNo">4269</span>     */<a name="line.4269"></a>
<span class="sourceLineNo">4270</span>    default void logMessage(Level level, Marker marker, String fqcn, StackTraceElement location, Message message,<a name="line.4270"></a>
<span class="sourceLineNo">4271</span>        Throwable throwable) {<a name="line.4271"></a>
<span class="sourceLineNo">4272</span><a name="line.4272"></a>
<span class="sourceLineNo">4273</span>    }<a name="line.4273"></a>
<span class="sourceLineNo">4274</span><a name="line.4274"></a>
<span class="sourceLineNo">4275</span>    /**<a name="line.4275"></a>
<span class="sourceLineNo">4276</span>     * Construct a trace log event.<a name="line.4276"></a>
<span class="sourceLineNo">4277</span>     * @return a LogBuilder.<a name="line.4277"></a>
<span class="sourceLineNo">4278</span>     * @since 2.13.0<a name="line.4278"></a>
<span class="sourceLineNo">4279</span>     */<a name="line.4279"></a>
<span class="sourceLineNo">4280</span>    default LogBuilder atTrace() {<a name="line.4280"></a>
<span class="sourceLineNo">4281</span>        return LogBuilder.NOOP;<a name="line.4281"></a>
<span class="sourceLineNo">4282</span>    }<a name="line.4282"></a>
<span class="sourceLineNo">4283</span>    /**<a name="line.4283"></a>
<span class="sourceLineNo">4284</span>     * Construct a trace log event.<a name="line.4284"></a>
<span class="sourceLineNo">4285</span>     * @return a LogBuilder.<a name="line.4285"></a>
<span class="sourceLineNo">4286</span>     * @since 2.13.0<a name="line.4286"></a>
<span class="sourceLineNo">4287</span>     */<a name="line.4287"></a>
<span class="sourceLineNo">4288</span>    default LogBuilder atDebug() {<a name="line.4288"></a>
<span class="sourceLineNo">4289</span>        return LogBuilder.NOOP;<a name="line.4289"></a>
<span class="sourceLineNo">4290</span>    }<a name="line.4290"></a>
<span class="sourceLineNo">4291</span>    /**<a name="line.4291"></a>
<span class="sourceLineNo">4292</span>     * Construct a trace log event.<a name="line.4292"></a>
<span class="sourceLineNo">4293</span>     * @return a LogBuilder.<a name="line.4293"></a>
<span class="sourceLineNo">4294</span>     * @since 2.13.0<a name="line.4294"></a>
<span class="sourceLineNo">4295</span>     */<a name="line.4295"></a>
<span class="sourceLineNo">4296</span>    default LogBuilder atInfo() {<a name="line.4296"></a>
<span class="sourceLineNo">4297</span>        return LogBuilder.NOOP;<a name="line.4297"></a>
<span class="sourceLineNo">4298</span>    }<a name="line.4298"></a>
<span class="sourceLineNo">4299</span>    /**<a name="line.4299"></a>
<span class="sourceLineNo">4300</span>     * Construct a trace log event.<a name="line.4300"></a>
<span class="sourceLineNo">4301</span>     * @return a LogBuilder.<a name="line.4301"></a>
<span class="sourceLineNo">4302</span>     * @since 2.13.0<a name="line.4302"></a>
<span class="sourceLineNo">4303</span>     */<a name="line.4303"></a>
<span class="sourceLineNo">4304</span>    default LogBuilder atWarn() {<a name="line.4304"></a>
<span class="sourceLineNo">4305</span>        return LogBuilder.NOOP;<a name="line.4305"></a>
<span class="sourceLineNo">4306</span>    }<a name="line.4306"></a>
<span class="sourceLineNo">4307</span>    /**<a name="line.4307"></a>
<span class="sourceLineNo">4308</span>     * Construct a trace log event.<a name="line.4308"></a>
<span class="sourceLineNo">4309</span>     * @return a LogBuilder.<a name="line.4309"></a>
<span class="sourceLineNo">4310</span>     * @since 2.13.0<a name="line.4310"></a>
<span class="sourceLineNo">4311</span>     */<a name="line.4311"></a>
<span class="sourceLineNo">4312</span>    default LogBuilder atError() {<a name="line.4312"></a>
<span class="sourceLineNo">4313</span>        return LogBuilder.NOOP;<a name="line.4313"></a>
<span class="sourceLineNo">4314</span>    }<a name="line.4314"></a>
<span class="sourceLineNo">4315</span>    /**<a name="line.4315"></a>
<span class="sourceLineNo">4316</span>     * Construct a trace log event.<a name="line.4316"></a>
<span class="sourceLineNo">4317</span>     * @return a LogBuilder.<a name="line.4317"></a>
<span class="sourceLineNo">4318</span>     * @since 2.13.0<a name="line.4318"></a>
<span class="sourceLineNo">4319</span>     */<a name="line.4319"></a>
<span class="sourceLineNo">4320</span>    default LogBuilder atFatal() {<a name="line.4320"></a>
<span class="sourceLineNo">4321</span>        return LogBuilder.NOOP;<a name="line.4321"></a>
<span class="sourceLineNo">4322</span>    }<a name="line.4322"></a>
<span class="sourceLineNo">4323</span>    /**<a name="line.4323"></a>
<span class="sourceLineNo">4324</span>     * Construct a log event that will always be logged.<a name="line.4324"></a>
<span class="sourceLineNo">4325</span>     * @return a LogBuilder.<a name="line.4325"></a>
<span class="sourceLineNo">4326</span>     * @since 2.13.0<a name="line.4326"></a>
<span class="sourceLineNo">4327</span>     */<a name="line.4327"></a>
<span class="sourceLineNo">4328</span>    default LogBuilder always() {<a name="line.4328"></a>
<span class="sourceLineNo">4329</span>        return LogBuilder.NOOP;<a name="line.4329"></a>
<span class="sourceLineNo">4330</span>    }<a name="line.4330"></a>
<span class="sourceLineNo">4331</span>    /**<a name="line.4331"></a>
<span class="sourceLineNo">4332</span>     * Construct a log event.<a name="line.4332"></a>
<span class="sourceLineNo">4333</span>     * @return a LogBuilder.<a name="line.4333"></a>
<span class="sourceLineNo">4334</span>     * @since 2.13.0<a name="line.4334"></a>
<span class="sourceLineNo">4335</span>     */<a name="line.4335"></a>
<span class="sourceLineNo">4336</span>    default LogBuilder atLevel(Level level) {<a name="line.4336"></a>
<span class="sourceLineNo">4337</span>        return LogBuilder.NOOP;<a name="line.4337"></a>
<span class="sourceLineNo">4338</span>    }<a name="line.4338"></a>
<span class="sourceLineNo">4339</span>}<a name="line.4339"></a>




























































</pre>
</div>
</body>
</html>
