Class JsonText.JsonTextSerializer

java.lang.Object
com.fasterxml.jackson.databind.JsonSerializer<String>
com.fasterxml.jackson.databind.ser.std.StdSerializer<String>
org.diabetestechnology.drh.service.http.util.JsonText.JsonTextSerializer
All Implemented Interfaces:
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable, com.fasterxml.jackson.databind.jsonschema.SchemaAware, Serializable
Enclosing class:
JsonText

public static class JsonText.JsonTextSerializer extends com.fasterxml.jackson.databind.ser.std.StdSerializer<String>
Custom serializer for JSON text.

This serializer attempts to parse a string as JSON. If the string is valid JSON, it serializes the string as JSON. If the string is not valid JSON, it serializes the string as a plain string.

To use this serializer, annotate the relevant field or class with @JsonSerialize(using = JsonTextSerializer.class).

Example usage:

 
 public class Example {

     @JsonSerialize(using = JsonTextSerializer.class)
     private String jsonText;

     // getters and setters
 }
 
 

In this example, the jsonText field will be serialized using the JsonTextSerializer, which will serialize the value as JSON if it's valid JSON, or as a plain string otherwise.

See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonSerializer

    com.fasterxml.jackson.databind.JsonSerializer.None
  • Constructor Summary

    Constructors
    Constructor
    Description
     
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    serialize(String value, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider provider)
     

    Methods inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer

    acceptJsonFormatVisitor, getSchema, getSchema, handledType, wrapAndThrow, wrapAndThrow

    Methods inherited from class com.fasterxml.jackson.databind.JsonSerializer

    getDelegatee, isEmpty, isEmpty, isUnwrappingSerializer, properties, replaceDelegatee, serializeWithType, unwrappingSerializer, usesObjectId, withFilterId, withIgnoredProperties

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • JsonTextSerializer

      public JsonTextSerializer()
    • JsonTextSerializer

      public JsonTextSerializer(Class<String> t)
  • Method Details

    • serialize

      public void serialize(String value, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider provider) throws IOException
      Specified by:
      serialize in class com.fasterxml.jackson.databind.ser.std.StdSerializer<String>
      Throws:
      IOException