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 */ 024public interface MessageFactory2 extends MessageFactory { 025 /** 026 * Creates a new message for the specified CharSequence. 027 * @param charSequence the (potentially mutable) CharSequence 028 * @return a new message for the specified CharSequence 029 */ 030 Message newMessage(CharSequence charSequence); 031 032 /** 033 * Creates a new parameterized message. 034 * 035 * @param message a message template, the kind of message template depends on the implementation. 036 * @param p0 the message parameters 037 * @return a new message 038 * @see ParameterizedMessageFactory 039 */ 040 Message newMessage(String message, Object p0); 041 042 /** 043 * Creates a new parameterized message. 044 * 045 * @param message a message template, the kind of message template depends on the implementation. 046 * @param p0 the message parameters 047 * @param p1 the message parameters 048 * @return a new message 049 * @see ParameterizedMessageFactory 050 */ 051 Message newMessage(String message, Object p0, Object p1); 052 053 /** 054 * Creates a new parameterized message. 055 * 056 * @param message a message template, the kind of message template depends on the implementation. 057 * @param p0 the message parameters 058 * @param p1 the message parameters 059 * @param p2 the message parameters 060 * @return a new message 061 * @see ParameterizedMessageFactory 062 */ 063 Message newMessage(String message, Object p0, Object p1, Object p2); 064 065 /** 066 * Creates a new parameterized message. 067 * 068 * @param message a message template, the kind of message template depends on the implementation. 069 * @param p0 the message parameters 070 * @param p1 the message parameters 071 * @param p2 the message parameters 072 * @param p3 the message parameters 073 * @return a new message 074 * @see ParameterizedMessageFactory 075 */ 076 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3); 077 078 /** 079 * Creates a new parameterized message. 080 * 081 * @param message a message template, the kind of message template depends on the implementation. 082 * @param p0 the message parameters 083 * @param p1 the message parameters 084 * @param p2 the message parameters 085 * @param p3 the message parameters 086 * @param p4 the message parameters 087 * @return a new message 088 * @see ParameterizedMessageFactory 089 */ 090 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4); 091 092 /** 093 * Creates a new parameterized message. 094 * 095 * @param message a message template, the kind of message template depends on the implementation. 096 * @param p0 the message parameters 097 * @param p1 the message parameters 098 * @param p2 the message parameters 099 * @param p3 the message parameters 100 * @param p4 the message parameters 101 * @param p5 the message parameters 102 * @return a new message 103 * @see ParameterizedMessageFactory 104 */ 105 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5); 106 107 /** 108 * Creates a new parameterized message. 109 * 110 * @param message a message template, the kind of message template depends on the implementation. 111 * @param p0 the message parameters 112 * @param p1 the message parameters 113 * @param p2 the message parameters 114 * @param p3 the message parameters 115 * @param p4 the message parameters 116 * @param p5 the message parameters 117 * @param p6 the message parameters 118 * @return a new message 119 * @see ParameterizedMessageFactory 120 */ 121 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6); 122 123 /** 124 * Creates a new parameterized message. 125 * 126 * @param message a message template, the kind of message template depends on the implementation. 127 * @param p0 the message parameters 128 * @param p1 the message parameters 129 * @param p2 the message parameters 130 * @param p3 the message parameters 131 * @param p4 the message parameters 132 * @param p5 the message parameters 133 * @param p6 the message parameters 134 * @param p7 the message parameters 135 * @return a new message 136 * @see ParameterizedMessageFactory 137 */ 138 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, 139 Object p7); 140 141 /** 142 * Creates a new parameterized message. 143 * 144 * @param message a message template, the kind of message template depends on the implementation. 145 * @param p0 the message parameters 146 * @param p1 the message parameters 147 * @param p2 the message parameters 148 * @param p3 the message parameters 149 * @param p4 the message parameters 150 * @param p5 the message parameters 151 * @param p6 the message parameters 152 * @param p7 the message parameters 153 * @param p8 the message parameters 154 * @return a new message 155 * @see ParameterizedMessageFactory 156 */ 157 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, 158 Object p7, Object p8); 159 160 /** 161 * Creates a new parameterized message. 162 * 163 * @param message a message template, the kind of message template depends on the implementation. 164 * @param p0 the message parameters 165 * @param p1 the message parameters 166 * @param p2 the message parameters 167 * @param p3 the message parameters 168 * @param p4 the message parameters 169 * @param p5 the message parameters 170 * @param p6 the message parameters 171 * @param p7 the message parameters 172 * @param p8 the message parameters 173 * @param p9 the message parameters 174 * @return a new message 175 * @see ParameterizedMessageFactory 176 */ 177 Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, 178 Object p7, Object p8, Object p9); 179}