public static class ArrayBoxedSerializer extends Serializer { Serializer serializer; protected ArrayBoxedSerializer(Serializer serializer) { super(SerializerType.ARRAY); this.serializer = serializer; } @Override public void serialize(Object src, Appender sb, JsonGeneric generic, SerializationContext context) { Object[] arr = (Object[]) src; int length = arr.length; JsonGeneric inner = null; if (generic != null && generic.typesCount() == 1) inner = generic.type(0); sb.append('['); for (int i = 0; i < length; i++) { if (i > 0) sb.append(','); serializer.checkNullAndSerialize(arr[i], sb, inner, context); } sb.append(']'); } }
public CharTree<V> append(String s, V value) { return append(s.toCharArray(), value); }
public CharTree<V> append(String s, V value) { return append(s.toCharArray(), value); }
public CharTree<V> appendReverse(String s, V value) { return append(reverse(s.toCharArray()), value); }
public CharTree<V> appendReverse(String s, V value) { return append(reverse(s.toCharArray()), value); }
public CharTree<Pair<String, JsonFieldInfo>> getFieldsTree() { if (fieldsTree != null) return fieldsTree; fieldsTree = new CharTree<Pair<String, JsonFieldInfo>>(); for (JsonFieldInfo info : fields.fields()) { fieldsTree.append(info.field.getName(), Pair.of(info.field.getName(), info)); } return fieldsTree; } }
@Test public void test2() { CharTree<String> tree = new CharTree<String>() .append("foo", "foo") .append("bar", "bar") .append("foobar", "foobar") .append("foo", "foo"); Assert.assertEquals("foo", tree.get("foo".toCharArray())); Assert.assertEquals("bar", tree.get("bar".toCharArray())); Assert.assertEquals("foobar", tree.get("foobar".toCharArray())); }
@Test public void testStarts() { CharTree<String> tree = new CharTree<String>() .append("foo", "foo") .append("bar", "bar") .append("foobar", "foobar"); Assert.assertEquals("foo", tree.findStarts("foo_".toCharArray())); Assert.assertEquals("bar", tree.findStarts("bar_".toCharArray())); Assert.assertEquals("foo", tree.findStarts("foobar_".toCharArray())); Assert.assertEquals("[foo, foobar]", tree.findAllStarts("foobar_".toCharArray()).toString()); }
@Test public void test1() { String[] strings = new String[]{ "Accept", "Accept-Encoding", "Accept-Language", "Cache-Control", "Connection", "Cookie", "Host", "Pragma", "User-Agent", "Content-Type", "Content-Length", "Close", "Keep-Alive" }; CharTree<String> tree = new CharTree<String>(); for (String string : strings) { tree.append(string, string); } for (String string : strings) { Assert.assertEquals(string, tree.get(string.toCharArray())); } }
Assert.assertEquals(4, JsonUtils.parseKey(null, "k : ".toCharArray(), 0, 5)); Binder.fieldsNames.append("k\\\"ey", Pair.of("k\\\"ey", (JsonFieldInfo) null)); Assert.assertEquals(8, JsonUtils.parseKey(null, "'k\\\"ey':value".toCharArray(), 0, 15));