List of usage examples for com.fasterxml.jackson.databind.util NameTransformer NOP
NameTransformer NOP
To view the source code for com.fasterxml.jackson.databind.util NameTransformer NOP.
Click Source Link
From source file:de.escalon.hypermedia.spring.hydra.ResourceSerializer.java
@Override public void serialize(Resource value, JsonGenerator jgen, SerializerProvider provider) throws IOException { final SerializationConfig config = provider.getConfig(); JavaType javaType = config.constructType(value.getClass()); JsonSerializer<Object> serializer = BeanSerializerFactory.instance.createSerializer(provider, javaType); jgen.writeStartObject();//from w w w .ja v a 2s.c o m serializer.unwrappingSerializer(NameTransformer.NOP).serialize(value, jgen, provider); jgen.writeEndObject(); }
From source file:de.escalon.hypermedia.spring.de.escalon.hypermedia.spring.jackson.ResourceSerializer.java
@Override public void serialize(Resource value, JsonGenerator jgen, SerializerProvider provider) throws IOException { final SerializationConfig config = provider.getConfig(); JavaType javaType = config.constructType(value.getClass()); JsonSerializer<Object> serializer = BeanSerializerFactory.instance.createSerializer(provider, javaType); jgen.writeStartObject();// w w w. j av a 2 s. c om serializer.unwrappingSerializer(NameTransformer.NOP).serialize(value, jgen, provider); // // make a Link Serializer // for (Link link : value.getLinks()) { // final String rel = link.getRel(); // String linkFieldName = IanaRels.isIanaRel(rel) ? IANA_REL_PREFIX + rel : rel; // jgen.writeFieldName(linkFieldName); // jgen.writeStartObject(); // jgen.writeStringField("@id", link.getHref()); // jgen.writeEndObject(); // } jgen.writeEndObject(); }
From source file:de.escalon.hypermedia.spring.hydra.PagedResourcesSerializer.java
@Override public void serialize(PagedResources pagedResources, JsonGenerator jgen, SerializerProvider serializerProvider) throws IOException { final SerializationConfig config = serializerProvider.getConfig(); JavaType javaType = config.constructType(pagedResources.getClass()); JsonSerializer<Object> serializer = BeanSerializerFactory.instance.createSerializer(serializerProvider, javaType);/*from w w w. j av a 2 s.c o m*/ // replicate pretty much everything from JacksonHydraSerializer // since we must reorganize the internals of pagedResources to get a hydra collection // with partial page view, we have to serialize pagedResources with an // unwrapping serializer Deque<LdContext> contextStack = (Deque<LdContext>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (contextStack == null) { contextStack = new ArrayDeque<LdContext>(); serializerProvider.setAttribute(KEY_LD_CONTEXT, contextStack); } // TODO: filter next/previous/first/last from link list - maybe create new PagedResources without them? List<Link> links = pagedResources.getLinks(); List<Link> filteredLinks = new ArrayList<Link>(); for (Link link : links) { String rel = link.getRel(); if (navigationRels.contains(rel)) { continue; } else { filteredLinks.add(link); } } PagedResources toRender = new PagedResources(pagedResources.getContent(), pagedResources.getMetadata(), filteredLinks); jgen.writeStartObject(); serializeContext(toRender, jgen, serializerProvider, contextStack); jgen.writeStringField(JsonLdKeywords.AT_TYPE, "hydra:Collection"); // serialize with PagedResourcesMixin serializer.unwrappingSerializer(NameTransformer.NOP).serialize(toRender, jgen, serializerProvider); PagedResources.PageMetadata metadata = pagedResources.getMetadata(); jgen.writeNumberField("hydra:totalItems", metadata.getTotalElements()); // begin hydra:view jgen.writeObjectFieldStart("hydra:view"); jgen.writeStringField(JsonLdKeywords.AT_TYPE, "hydra:PartialCollectionView"); writeRelLink(pagedResources, jgen, Link.REL_NEXT); writeRelLink(pagedResources, jgen, "previous"); // must also translate prev to its synonym previous writeRelLink(pagedResources, jgen, Link.REL_PREVIOUS, "previous"); writeRelLink(pagedResources, jgen, Link.REL_FIRST); writeRelLink(pagedResources, jgen, Link.REL_LAST); jgen.writeEndObject(); // end hydra:view jgen.writeEndObject(); contextStack = (Deque<LdContext>) serializerProvider.getAttribute(KEY_LD_CONTEXT); if (!contextStack.isEmpty()) { contextStack.pop(); } }
From source file:net.logstash.logback.marker.ObjectFieldsAppendingMarker.java
/** * Gets a serializer that will write the {@link #object} unwrapped. *//*from w w w . jav a2s . c o m*/ private JsonSerializer<Object> getBeanSerializer(ObjectMapper mapper) throws JsonMappingException { JsonSerializer<Object> jsonSerializer = beanSerializers.get(object.getClass()); if (jsonSerializer == null) { SerializerProvider serializerProvider = getSerializerProvider(mapper); JsonSerializer<Object> newSerializer = mapper.getSerializerFactory() .createSerializer(serializerProvider, mapper.getSerializationConfig().constructType(object.getClass())) .unwrappingSerializer(NameTransformer.NOP); if (newSerializer instanceof ResolvableSerializer) { ((ResolvableSerializer) newSerializer).resolve(serializerProvider); } JsonSerializer<Object> existingSerializer = beanSerializers.putIfAbsent(object.getClass(), newSerializer); jsonSerializer = (existingSerializer == null) ? newSerializer : existingSerializer; } return jsonSerializer; }