Gridarta Editor
FilterCodecUtils.java
Go to the documentation of this file.
1 package net.sf.gridarta.model.filter;
2 
3 import org.jetbrains.annotations.NotNull;
4 
8 public class FilterCodecUtils {
9 
13  private FilterCodecUtils() {
14  }
15 
21  public static void encodeString(@NotNull final StringBuilder sb, @NotNull final String string) {
22  for (final char ch : string.toCharArray()) {
23  if (ch == '%' || ch == ',' || ch == ')' || ch == '=' || Character.isISOControl(ch)) {
24  sb.append(String.format("%%%04X", (int) ch));
25  } else {
26  sb.append(ch);
27  }
28  }
29  }
30 
40  @NotNull
41  public static String decodeString(@NotNull final StringBuilder sb) {
42  final StringBuilder result = new StringBuilder();
43  while (sb.length() > 0) {
44  final char ch = sb.charAt(0);
45  if (ch == ',' || ch == ')' || ch == '=') {
46  break;
47  }
48  if (ch == '%') {
49  result.append((char) Integer.parseInt(sb.substring(1, 5), 16));
50  sb.delete(0, 5);
51  } else {
52  result.append(ch);
53  sb.delete(0, 1);
54  }
55  }
56  return result.toString();
57  }
58 
59 }
net.sf.gridarta.model.filter.FilterCodecUtils.encodeString
static void encodeString(@NotNull final StringBuilder sb, @NotNull final String string)
Definition: FilterCodecUtils.java:21
net.sf.gridarta.model.filter.FilterCodecUtils.decodeString
static String decodeString(@NotNull final StringBuilder sb)
Definition: FilterCodecUtils.java:41
net.sf.gridarta.model.filter.FilterCodecUtils.FilterCodecUtils
FilterCodecUtils()
Definition: FilterCodecUtils.java:13
net.sf.gridarta.model.filter.FilterCodecUtils
Definition: FilterCodecUtils.java:8