blob: ba902232e97520bc89b665392fd3c0a979161878 [file] [log] [blame]
package org.codehaus.jackson.map.ser;
import java.io.IOException;
import java.util.*;
import org.codehaus.jackson.*;
import org.codehaus.jackson.map.*;
import org.codehaus.jackson.map.annotate.JsonSerialize;
public class TestJsonSerialize3 extends BaseMapTest
{
// [JACKSON-829]
static class FooToBarSerializer extends JsonSerializer<String> {
@Override
public void serialize(String value, JsonGenerator jgen, SerializerProvider provider)
throws IOException {
if ("foo".equals(value)) {
jgen.writeString("bar");
} else {
jgen.writeString(value);
}
}
}
static class MyObject {
@JsonSerialize(contentUsing = FooToBarSerializer.class)
List<String> list;
}
/*
/**********************************************************
/* Test methods
/**********************************************************
*/
public void testCustomContentSerializer() throws Exception
{
ObjectMapper m = new ObjectMapper();
MyObject object = new MyObject();
object.list = Arrays.asList("foo");
String json = m.writeValueAsString(object);
assertEquals("{\"list\":[\"bar\"]}", json);
}
}