001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache license, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the license for the specific language governing permissions and 015 * limitations under the license. 016 */ 017package org.apache.logging.log4j.message; 018 019/** 020 * Creates messages. Implementations can provide different message format syntaxes. 021 * 022 * @see ParameterizedMessageFactory 023 * @since 2.6 024 */ 025public interface MessageFactory2 extends MessageFactory { 026 027 /** 028 * Creates a new message for the specified CharSequence. 029 * @param charSequence the (potentially mutable) CharSequence 030 * @return a new message for the specified CharSequence 031 */ 032 Message newMessage(CharSequence charSequence); 033 034 /** 035 * Creates a new parameterized message. 036 * 037 * @param message a message template, the kind of message template depends on the implementation. 038 * @param p0 a message parameter 039 * @return a new message 040 * @see ParameterizedMessageFactory 041 */ 042 Message newMessage(String message, Object p0); 043 044 /** 045 * Creates a new parameterized message. 046 * 047 * @param message a message template, the kind of message template depends on the implementation. 048 * @param p0 a message parameter 049 * @param p1 a message parameter 050 * @return a new message 051 * @see ParameterizedMessageFactory 052 */ 053 Message newMessage(String message, Object p0, Object p1); 054 055 /** 056 * Creates a new parameterized message. 057 * 058 * @param message a message template, the kind of message template depends on the implementation. 059 * @param p0 a message parameter 060 * @param p1 a message parameter 061 * @param p2 a message parameter 062 * @return a new message 063 * @see ParameterizedMessageFactory 064 */ 065 Message newMessage(String message, Object p0, Object p1, Object p2); 066 067 /** 068 * Creates a new parameterized message. 069 * 070 * @param message a message template, the kind of message template depends on the implementation. 071 * @param p0 a message parameter 072 * @param p1 a message parameter 073 * @param p2 a message parameter 074 * @param p3 a message parameter 075 * @return a new message 076 * @see ParameterizedMessageFactory 077 */ 078 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3); 079 080 /** 081 * Creates a new parameterized message. 082 * 083 * @param message a message template, the kind of message template depends on the implementation. 084 * @param p0 a message parameter 085 * @param p1 a message parameter 086 * @param p2 a message parameter 087 * @param p3 a message parameter 088 * @param p4 a message parameter 089 * @return a new message 090 * @see ParameterizedMessageFactory 091 */ 092 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4); 093 094 /** 095 * Creates a new parameterized message. 096 * 097 * @param message a message template, the kind of message template depends on the implementation. 098 * @param p0 a message parameter 099 * @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}