View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements. See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache license, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License. You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the license for the specific language governing permissions and
15   * limitations under the license.
16   */
17  package org.apache.logging.log4j.message;
18  
19  /**
20   * Creates messages. Implementations can provide different message format syntaxes.
21   *
22   * @see ParameterizedMessageFactory
23   * @since 2.6
24   */
25  public interface MessageFactory2 extends MessageFactory {
26      
27      /**
28       * Creates a new message for the specified CharSequence.
29       * @param charSequence the (potentially mutable) CharSequence
30       * @return a new message for the specified CharSequence
31       */
32      Message newMessage(CharSequence charSequence);
33  
34      /**
35       * Creates a new parameterized message.
36       *
37       * @param message a message template, the kind of message template depends on the implementation.
38       * @param p0 a message parameter
39       * @return a new message
40       * @see ParameterizedMessageFactory
41       */
42      Message newMessage(String message, Object p0);
43  
44      /**
45       * Creates a new parameterized message.
46       *
47       * @param message a message template, the kind of message template depends on the implementation.
48       * @param p0 a message parameter
49       * @param p1 a message parameter
50       * @return a new message
51       * @see ParameterizedMessageFactory
52       */
53      Message newMessage(String message, Object p0, Object p1);
54  
55      /**
56       * Creates a new parameterized message.
57       *
58       * @param message a message template, the kind of message template depends on the implementation.
59       * @param p0 a message parameter
60       * @param p1 a message parameter
61       * @param p2 a message parameter
62       * @return a new message
63       * @see ParameterizedMessageFactory
64       */
65      Message newMessage(String message, Object p0, Object p1, Object p2);
66  
67      /**
68       * Creates a new parameterized message.
69       *
70       * @param message a message template, the kind of message template depends on the implementation.
71       * @param p0 a message parameter
72       * @param p1 a message parameter
73       * @param p2 a message parameter
74       * @param p3 a message parameter
75       * @return a new message
76       * @see ParameterizedMessageFactory
77       */
78      Message newMessage(String message, Object p0, Object p1, Object p2, Object p3);
79  
80      /**
81       * Creates a new parameterized message.
82       *
83       * @param message a message template, the kind of message template depends on the implementation.
84       * @param p0 a message parameter
85       * @param p1 a message parameter
86       * @param p2 a message parameter
87       * @param p3 a message parameter
88       * @param p4 a message parameter
89       * @return a new message
90       * @see ParameterizedMessageFactory
91       */
92      Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4);
93  
94      /**
95       * Creates a new parameterized message.
96       *
97       * @param message a message template, the kind of message template depends on the implementation.
98       * @param p0 a message parameter
99       * @param p1 a message parameter
100      * @param p2 a message parameter
101      * @param p3 a message parameter
102      * @param p4 a message parameter
103      * @param p5 a message parameter
104      * @return a new message
105      * @see ParameterizedMessageFactory
106      */
107     Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5);
108 
109     /**
110      * Creates a new parameterized message.
111      *
112      * @param message a message template, the kind of message template depends on the implementation.
113      * @param p0 a message parameter
114      * @param p1 a message parameter
115      * @param p2 a message parameter
116      * @param p3 a message parameter
117      * @param p4 a message parameter
118      * @param p5 a message parameter
119      * @param p6 a message parameter
120      * @return a new message
121      * @see ParameterizedMessageFactory
122      */
123     Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6);
124 
125     /**
126      * Creates a new parameterized message.
127      *
128      * @param message a message template, the kind of message template depends on the implementation.
129      * @param p0 a message parameter
130      * @param p1 a message parameter
131      * @param p2 a message parameter
132      * @param p3 a message parameter
133      * @param p4 a message parameter
134      * @param p5 a message parameter
135      * @param p6 a message parameter
136      * @param p7 a message parameter
137      * @return a new message
138      * @see ParameterizedMessageFactory
139      */
140     Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
141             Object p7);
142 
143     /**
144      * Creates a new parameterized message.
145      *
146      * @param message a message template, the kind of message template depends on the implementation.
147      * @param p0 a message parameter
148      * @param p1 a message parameter
149      * @param p2 a message parameter
150      * @param p3 a message parameter
151      * @param p4 a message parameter
152      * @param p5 a message parameter
153      * @param p6 a message parameter
154      * @param p7 a message parameter
155      * @param p8 a message parameter
156      * @return a new message
157      * @see ParameterizedMessageFactory
158      */
159     Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
160             Object p7, Object p8);
161 
162     /**
163      * Creates a new parameterized message.
164      *
165      * @param message a message template, the kind of message template depends on the implementation.
166      * @param p0 a message parameter
167      * @param p1 a message parameter
168      * @param p2 a message parameter
169      * @param p3 a message parameter
170      * @param p4 a message parameter
171      * @param p5 a message parameter
172      * @param p6 a message parameter
173      * @param p7 a message parameter
174      * @param p8 a message parameter
175      * @param p9 a message parameter
176      * @return a new message
177      * @see ParameterizedMessageFactory
178      */
179     Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6,
180             Object p7, Object p8, Object p9);
181 }