Package org.apache.logging.log4j.message
Class ReusableMessageFactory
java.lang.Object
org.apache.logging.log4j.message.ReusableMessageFactory
- All Implemented Interfaces:
Serializable,MessageFactory,MessageFactory2
Implementation of the
MessageFactory interface that avoids allocating temporary objects where possible.
Message instances are cached in a ThreadLocal and reused when a new message is requested within the same thread.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ReusableMessageFactoryInstance of ReusableMessageFactory. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionnewMessage(CharSequence charSequence) Creates a new message for the specified CharSequence.newMessage(Object message) CreatesReusableObjectMessageinstances.newMessage(String message) CreatesReusableSimpleMessageinstances.newMessage(String message, Object p0) Creates a new parameterized message.newMessage(String message, Object... params) CreatesReusableParameterizedMessageinstances.newMessage(String message, Object p0, Object p1) Creates a new parameterized message.newMessage(String message, Object p0, Object p1, Object p2) Creates a new parameterized message.Creates a new parameterized message.Creates a new parameterized message.Creates a new parameterized message.newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6) Creates a new parameterized message.newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7) Creates a new parameterized message.newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8) Creates a new parameterized message.newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9) Creates a new parameterized message.static voidInvokesClearable.clear()when possible.
-
Field Details
-
INSTANCE
Instance of ReusableMessageFactory.
-
-
Constructor Details
-
ReusableMessageFactory
public ReusableMessageFactory()Constructs a message factory.
-
-
Method Details
-
release
InvokesClearable.clear()when possible. This flag is used internally to verify that a reusable message is no longer in use and can be reused.- Parameters:
message- the message to make available again- Since:
- 2.7
-
newMessage
Description copied from interface:MessageFactory2Creates a new message for the specified CharSequence.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
charSequence- the (potentially mutable) CharSequence- Returns:
- a new message for the specified CharSequence
-
newMessage
CreatesReusableParameterizedMessageinstances.- Specified by:
newMessagein interfaceMessageFactory- Parameters:
message- The message pattern.params- The message parameters.- Returns:
- The Message.
- See Also:
-
newMessage
Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameterp4- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
public Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5) Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameterp4- a message parameterp5- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
public Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6) Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameterp4- a message parameterp5- a message parameterp6- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
public Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7) Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameterp4- a message parameterp5- a message parameterp6- a message parameterp7- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
public Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8) Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameterp4- a message parameterp5- a message parameterp6- a message parameterp7- a message parameterp8- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
public Message newMessage(String message, Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9) Description copied from interface:MessageFactory2Creates a new parameterized message.- Specified by:
newMessagein interfaceMessageFactory2- Parameters:
message- a message template, the kind of message template depends on the implementation.p0- a message parameterp1- a message parameterp2- a message parameterp3- a message parameterp4- a message parameterp5- a message parameterp6- a message parameterp7- a message parameterp8- a message parameterp9- a message parameter- Returns:
- a new message
- See Also:
-
newMessage
CreatesReusableSimpleMessageinstances.- Specified by:
newMessagein interfaceMessageFactory- Parameters:
message- The message String.- Returns:
- The Message.
- See Also:
-
newMessage
CreatesReusableObjectMessageinstances.- Specified by:
newMessagein interfaceMessageFactory- Parameters:
message- The message Object.- Returns:
- The Message.
- See Also:
-