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 }