@Test public void testEscapeTextForPreBlock() { assertEscapeUnescapePre(""); assertEscapeUnescapePre("a"); assertEscapeUnescapePre("a b"); assertEscapeUnescapePre("абвг"); assertEscapeUnescapePre("абвг\niuweyqqw123123"); assertEscapeUnescapePre("<pre>123</pre>"); assertEscapeUnescapePre("&#32;"); assertEscapeUnescapePre("123 456 \r \n \t \b <html>``` some"); }
@Nonnull public static String escapeTextForPreBlock(@Nonnull final String text) { final int length = text.length(); final StringBuilder result = new StringBuilder(length); for (int i = 0; i < length; i++) { final char chr = text.charAt(i); switch (chr) { case '\"': result.append("&quot;"); break; case '&': result.append("&amp;"); break; case '<': result.append("&lt;"); break; case '>': result.append("&gt;"); break; default: { result.append(chr); } break; } } return result.toString(); }
ModelUtils { @Nonnull public static String escapeTextForPreBlock(@Nonnull final String text) { final int length = text.length(); final StringBuilder result = new StringBuilder(length); for (int i = 0; i < length; i++) { final char chr = text.charAt(i); switch (chr) { case '\"': result.append("&quot;"); break; case '&': result.append("&amp;"); break; case '<': result.append("&lt;"); break; case '>': result.append("&gt;"); break; default: { result.append(chr); } break; } } return result.toString(); } }
ModelUtils { @Nonnull public static String escapeTextForPreBlock(@Nonnull final String text) { final int length = text.length(); final StringBuilder result = new StringBuilder(length); for (int i = 0; i < length; i++) { final char chr = text.charAt(i); switch (chr) { case '\"': result.append("&quot;"); break; case '&': result.append("&amp;"); break; case '<': result.append("&lt;"); break; case '>': result.append("&gt;"); break; default: { result.append(chr); } break; } } return result.toString(); } private  ModelUtils(); }
ModelUtils { @Nonnull public static String escapeTextForPreBlock(@Nonnull final String text) { final int length = text.length(); final StringBuilder result = new StringBuilder(length); for (int i = 0; i < length; i++) { final char chr = text.charAt(i); switch (chr) { case '\"': result.append("&quot;"); break; case '&': result.append("&amp;"); break; case '<': result.append("&lt;"); break; case '>': result.append("&gt;"); break; default: { result.append(chr); } break; } } return result.toString(); } private  ModelUtils(); static int calcCharsOnStart(final char chr, @Nonnull final String text); static boolean onlyFromChar(@Nonnull final String line, final char chr); @Nonnull @MustNotContainNull static Object[] joinArrays(@Nonnull @MustNotContainNull final Object[]... arrs); @Nonnull static String makePreBlock(@Nonnull final String text); @Nonnull static String escapeTextForPreBlock(@Nonnull final String text); @Nonnull static String makeMDCodeBlock(@Nonnull final String text); @Nonnull static String escapeMarkdownStr(@Nonnull final String text); static int calcMaxLengthOfBacktickQuotesSubstr(@Nullable final String text); static void writeChar(@Nonnull final Appendable out, final char chr, final int times); @Nonnull static String unescapeMarkdownStr(@Nonnull final String text); @Nonnull static String makeShortTextVersion(@Nonnull String text, final int maxLength); static int countLines(@Nonnull final String text); @Nonnull @MustNotContainNull static String[] breakToLines(@Nonnull final String text); @Nonnull static String makeQueryStringForURI(@Nullable final Properties properties); @Nonnull static Properties extractQueryPropertiesFromURI(@Nonnull final URI uri); @Nonnull static String encodeForURI(@Nonnull final String s); @Nullable static File makeFileForPath(@Nullable final String path); @Nonnull static String escapeURIPath(@Nonnull final String text); @Nonnull static String removeISOControls(@Nonnull final String text); @Nullable static URI toURI(@Nullable final Path path); @Nonnull static File toFile(@Nonnull final URI uri); }
ModelUtils { @Nonnull public static String escapeTextForPreBlock(@Nonnull final String text) { final int length = text.length(); final StringBuilder result = new StringBuilder(length); for (int i = 0; i < length; i++) { final char chr = text.charAt(i); switch (chr) { case '\"': result.append("&quot;"); break; case '&': result.append("&amp;"); break; case '<': result.append("&lt;"); break; case '>': result.append("&gt;"); break; default: { result.append(chr); } break; } } return result.toString(); } private  ModelUtils(); static int calcCharsOnStart(final char chr, @Nonnull final String text); static boolean onlyFromChar(@Nonnull final String line, final char chr); @Nonnull @MustNotContainNull static Object[] joinArrays(@Nonnull @MustNotContainNull final Object[]... arrs); @Nonnull static String makePreBlock(@Nonnull final String text); @Nonnull static String escapeTextForPreBlock(@Nonnull final String text); @Nonnull static String makeMDCodeBlock(@Nonnull final String text); @Nonnull static String escapeMarkdownStr(@Nonnull final String text); static int calcMaxLengthOfBacktickQuotesSubstr(@Nullable final String text); static void writeChar(@Nonnull final Appendable out, final char chr, final int times); @Nonnull static String unescapeMarkdownStr(@Nonnull final String text); @Nonnull static String makeShortTextVersion(@Nonnull String text, final int maxLength); static int countLines(@Nonnull final String text); @Nonnull @MustNotContainNull static String[] breakToLines(@Nonnull final String text); @Nonnull static String makeQueryStringForURI(@Nullable final Properties properties); @Nonnull static Properties extractQueryPropertiesFromURI(@Nonnull final URI uri); @Nonnull static String encodeForURI(@Nonnull final String s); @Nullable static File makeFileForPath(@Nullable final String path); @Nonnull static String escapeURIPath(@Nonnull final String text); @Nonnull static String removeISOControls(@Nonnull final String text); @Nullable static URI toURI(@Nullable final Path path); @Nonnull static File toFile(@Nonnull final URI uri); static final Comparator<String> STRING_COMPARATOR; }