provider.setAttribute(KEY_CONTENT_CONVERTER_LOCK, conversions);
public class MyClassSerializer extends JsonSerializer<MyClass> { private final JsonSerializer<Object> defaultSerializer; public MyClassSerializer(JsonSerializer<Object> defaultSerializer) { this.defaultSerializer = checkNotNull(defaultSerializer); } @Override public void serialize(MyClass myclass, JsonGenerator gen, SerializerProvider provider) throws IOException { if (myclass.getSomeProperty() == true) { provider.setAttribute("special", true); } defaultSerializer.serialize(myclass, gen, provider); } }
public static List<Link> getLinksFromContext(Object value, SerializerProvider prov) { LOG.trace("Retrieving links from context"); List<Link> links = (List<Link>) prov.getAttribute(getAttributeKeyLink(value)); if (links == null) { LOG.trace("No found links, initialize them in the context"); links = new ArrayList<>(); prov.setAttribute(getAttributeKeyLink(value), links); } LOG.trace("Links: {}", links); return links; }
public static List<Link> getLinksFromContext(Object value, SerializerProvider prov) { LOG.trace("Retrieving links from context"); List<Link> links = (List<Link>) prov.getAttribute(getAttributeKeyLink(value)); if (links == null) { LOG.trace("No found links, initialize them in the context"); links = new ArrayList<>(); prov.setAttribute(getAttributeKeyLink(value), links); } LOG.trace("Links: {}", links); return links; }
provider.setAttribute(KEY_CONTENT_CONVERTER_LOCK, conversions);
@Override public void serialize(Object bean, JsonGenerator jgen, SerializerProvider serializerProvider) throws IOException { if (!isUnwrappingSerializer()) { jgen.writeStartObject(); } Deque<String> deque = (Deque<String>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (deque == null) { deque = new ArrayDeque<String>(); serializerProvider.setAttribute(KEY_LD_CONTEXT, deque); } serializeContext(bean, jgen, serializerProvider, deque); serializeType(bean, jgen, serializerProvider); serializeFields(bean, jgen, serializerProvider); if (!isUnwrappingSerializer()) { jgen.writeEndObject(); } deque = (Deque<String>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (!deque.isEmpty()) { deque.pop(); } }
@Override public void serialize(Object bean, JsonGenerator jgen, SerializerProvider serializerProvider) throws IOException { if (!isUnwrappingSerializer()) { jgen.writeStartObject(); } Deque<LdContext> contextStack = (Deque<LdContext>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (contextStack == null) { contextStack = new ArrayDeque<LdContext>(); serializerProvider.setAttribute(KEY_LD_CONTEXT, contextStack); } serializeContext(bean, jgen, serializerProvider, contextStack); serializeType(bean, jgen, serializerProvider); serializeFields(bean, jgen, serializerProvider); if (!isUnwrappingSerializer()) { jgen.writeEndObject(); } contextStack = (Deque<LdContext>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (!contextStack.isEmpty()) { contextStack.pop(); } }
@Override public void serialize(Object bean, JsonGenerator jgen, SerializerProvider serializerProvider) throws IOException { if (!isUnwrappingSerializer()) { jgen.writeStartObject(); } Deque<LdContext> contextStack = (Deque<LdContext>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (contextStack == null) { contextStack = new ArrayDeque<LdContext>(); serializerProvider.setAttribute(KEY_LD_CONTEXT, contextStack); } serializeContext(bean, jgen, serializerProvider, contextStack); serializeType(bean, jgen, serializerProvider); serializeFields(bean, jgen, serializerProvider); if (!isUnwrappingSerializer()) { jgen.writeEndObject(); } contextStack = (Deque<LdContext>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (!contextStack.isEmpty()) { contextStack.pop(); } }
if (contextStack == null) { contextStack = new ArrayDeque<LdContext>(); serializerProvider.setAttribute(KEY_LD_CONTEXT, contextStack);
AnnotatedMember m = prop.getMember(); if (m != null) { provider.setAttribute(CONVERTING_CONTENT_CONVERTER_LOCK, Boolean.TRUE); Object convDef; try { convDef = intr.findSerializationContentConverter(m); } finally { provider.setAttribute(CONVERTING_CONTENT_CONVERTER_LOCK, null);