package it.cavallium; import java.util.Objects; import java.util.StringJoiner; import reactor.util.annotation.Nullable; public class AddUserBotResult { private final String errorMessage; private AddUserBotResult(@Nullable String errorMessage) { this.errorMessage = errorMessage; } public static AddUserBotResult newSuccess() { return new AddUserBotResult(null); } public static AddUserBotResult newFailed(String errorMessage) { return new AddUserBotResult(Objects.requireNonNull(errorMessage)); } public boolean success() { return errorMessage == null; } public boolean failed() { return errorMessage != null; } public String getErrorMessage() { return errorMessage; } @Override public String toString() { return new StringJoiner(", ", AddUserBotResult.class.getSimpleName() + "[", "]") .add("errorMessage='" + errorMessage + "'") .toString(); } }