From 3e0a10d2fa053719b0950a38bebc684ab5984817 Mon Sep 17 00:00:00 2001 From: Konrad Windszus Date: Wed, 8 Jun 2022 14:57:19 +0200 Subject: [PATCH] [MSHARED-1079] add build() method and document toString() method improve Javadoc --- .../utils/logging/AnsiMessageBuilder.java | 6 ++++++ .../shared/utils/logging/MessageBuilder.java | 18 ++++++++++++++++++ .../utils/logging/PlainMessageBuilder.java | 6 ++++++ 3 files changed, 30 insertions(+) diff --git a/src/main/java/org/apache/maven/shared/utils/logging/AnsiMessageBuilder.java b/src/main/java/org/apache/maven/shared/utils/logging/AnsiMessageBuilder.java index 7f442397..f7eed76e 100644 --- a/src/main/java/org/apache/maven/shared/utils/logging/AnsiMessageBuilder.java +++ b/src/main/java/org/apache/maven/shared/utils/logging/AnsiMessageBuilder.java @@ -150,6 +150,12 @@ public AnsiMessageBuilder format( String pattern, Object... args ) @Override public String toString() + { + return build(); + } + + @Override + public String build() { return ansi.toString(); } diff --git a/src/main/java/org/apache/maven/shared/utils/logging/MessageBuilder.java b/src/main/java/org/apache/maven/shared/utils/logging/MessageBuilder.java index 649c0860..9d707be6 100644 --- a/src/main/java/org/apache/maven/shared/utils/logging/MessageBuilder.java +++ b/src/main/java/org/apache/maven/shared/utils/logging/MessageBuilder.java @@ -21,6 +21,8 @@ /** * Message builder that supports configurable styling. + * An instance of this interface can be retrieved with {@link MessageUtils#buffer()}. + * After the message has been build with any of the append methods its content can be retrieved with {@link #build()}. * @see MessageUtils * @since 3.1.0 */ @@ -130,4 +132,20 @@ public interface MessageBuilder * @return the current builder */ MessageBuilder format( String pattern, Object... args ); + + /** + * Gets the message constructed by this builder. + * The underlying buffer is not reset with this method, i.e. if you continue using this builder you just + * append content to the existing one. + * @return the message + * @since 4.0.0 + */ + String build(); + + /** + * Same as {@link MessageBuilder#build()}. + * @deprecated Rather use {@link MessageBuilder#build()} + */ + @Deprecated + String toString(); } diff --git a/src/main/java/org/apache/maven/shared/utils/logging/PlainMessageBuilder.java b/src/main/java/org/apache/maven/shared/utils/logging/PlainMessageBuilder.java index 5ff48844..ce788262 100644 --- a/src/main/java/org/apache/maven/shared/utils/logging/PlainMessageBuilder.java +++ b/src/main/java/org/apache/maven/shared/utils/logging/PlainMessageBuilder.java @@ -136,6 +136,12 @@ public PlainMessageBuilder format( String pattern, Object... args ) @Override public String toString() + { + return build(); + } + + @Override + public String build() { return buffer.toString(); }