Class Jackson2HalModule.HalResourcesSerializer

java.lang.Object
com.fasterxml.jackson.databind.JsonSerializer<T>
com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
com.fasterxml.jackson.databind.ser.ContainerSerializer<Collection<?>>
org.springframework.hateoas.mediatype.hal.Jackson2HalModule.HalResourcesSerializer
All Implemented Interfaces:
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable, com.fasterxml.jackson.databind.jsonschema.SchemaAware, com.fasterxml.jackson.databind.ser.ContextualSerializer, Serializable
Enclosing class:
Jackson2HalModule

public static class Jackson2HalModule.HalResourcesSerializer extends com.fasterxml.jackson.databind.ser.ContainerSerializer<Collection<?>> implements com.fasterxml.jackson.databind.ser.ContextualSerializer
Custom JsonSerializer to render EntityModel-Lists in HAL compatible JSON. Renders the list as a Map.
Author:
Alexander Baetz, Oliver Gierke
See Also:
  • Nested Class Summary

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

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

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

    _handledType
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    HalResourcesSerializer(Jackson2HalModule.EmbeddedMapper embeddedMapper, HalConfiguration configuration, com.fasterxml.jackson.databind.BeanProperty property)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected com.fasterxml.jackson.databind.ser.ContainerSerializer<?>
    _withValueTypeSerializer(com.fasterxml.jackson.databind.jsontype.TypeSerializer vts)
     
    com.fasterxml.jackson.databind.JsonSerializer<?>
    createContextual(com.fasterxml.jackson.databind.SerializerProvider prov, com.fasterxml.jackson.databind.BeanProperty property)
     
    com.fasterxml.jackson.databind.JsonSerializer<?>
     
    com.fasterxml.jackson.databind.JavaType
     
    boolean
     
    boolean
    isEmpty(com.fasterxml.jackson.databind.SerializerProvider provider, Collection<?> value)
     
    void
    serialize(Collection<?> value, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider provider)
     

    Methods inherited from class com.fasterxml.jackson.databind.ser.ContainerSerializer

    hasContentTypeAnnotation, withValueTypeSerializer

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

    _neitherNull, _nonEmpty, acceptJsonFormatVisitor, createSchemaNode, createSchemaNode, findAnnotatedContentSerializer, findContextualConvertingSerializer, findConvertingContentSerializer, findFormatFeature, findFormatOverrides, findIncludeOverrides, findPropertyFilter, getSchema, getSchema, handledType, isDefaultSerializer, visitArrayFormat, visitArrayFormat, visitFloatFormat, visitIntFormat, visitIntFormat, visitStringFormat, visitStringFormat, wrapAndThrow, wrapAndThrow

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

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

    Methods inherited from class java.lang.Object

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

  • Method Details

    • serialize

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

      public com.fasterxml.jackson.databind.JsonSerializer<?> createContextual(com.fasterxml.jackson.databind.SerializerProvider prov, com.fasterxml.jackson.databind.BeanProperty property) throws com.fasterxml.jackson.databind.JsonMappingException
      Specified by:
      createContextual in interface com.fasterxml.jackson.databind.ser.ContextualSerializer
      Throws:
      com.fasterxml.jackson.databind.JsonMappingException
    • getContentType

      @Nullable public com.fasterxml.jackson.databind.JavaType getContentType()
      Specified by:
      getContentType in class com.fasterxml.jackson.databind.ser.ContainerSerializer<Collection<?>>
    • getContentSerializer

      @Nullable public com.fasterxml.jackson.databind.JsonSerializer<?> getContentSerializer()
      Specified by:
      getContentSerializer in class com.fasterxml.jackson.databind.ser.ContainerSerializer<Collection<?>>
    • isEmpty

      public boolean isEmpty(com.fasterxml.jackson.databind.SerializerProvider provider, Collection<?> value)
      Overrides:
      isEmpty in class com.fasterxml.jackson.databind.JsonSerializer<Collection<?>>
    • hasSingleElement

      public boolean hasSingleElement(Collection<?> value)
      Specified by:
      hasSingleElement in class com.fasterxml.jackson.databind.ser.ContainerSerializer<Collection<?>>
    • _withValueTypeSerializer

      @Nullable protected com.fasterxml.jackson.databind.ser.ContainerSerializer<?> _withValueTypeSerializer(com.fasterxml.jackson.databind.jsontype.TypeSerializer vts)
      Specified by:
      _withValueTypeSerializer in class com.fasterxml.jackson.databind.ser.ContainerSerializer<Collection<?>>