Class JSON

  • All Implemented Interfaces:
    jakarta.ws.rs.ext.ContextResolver<com.fasterxml.jackson.databind.ObjectMapper>

    public class JSON
    extends Object
    implements jakarta.ws.rs.ext.ContextResolver<com.fasterxml.jackson.databind.ObjectMapper>
    • Constructor Detail

      • JSON

        public JSON()
    • Method Detail

      • setDateFormat

        public void setDateFormat​(DateFormat dateFormat)
        Set the date format for JSON (de)serialization with Date properties.
        Parameters:
        dateFormat - Date format
      • getContext

        public com.fasterxml.jackson.databind.ObjectMapper getContext​(Class<?> type)
        Specified by:
        getContext in interface jakarta.ws.rs.ext.ContextResolver<com.fasterxml.jackson.databind.ObjectMapper>
      • getMapper

        public static com.fasterxml.jackson.databind.ObjectMapper getMapper()
        Get the object mapper
        Returns:
        object mapper
      • getClassForElement

        public static Class<?> getClassForElement​(com.fasterxml.jackson.databind.JsonNode node,
                                                  Class<?> modelClass)
        Returns the target model class that should be used to deserialize the input data. The discriminator mappings are used to determine the target model class.
        Parameters:
        node - The input data.
        modelClass - The class that contains the discriminator mappings.
      • isInstanceOf

        public static boolean isInstanceOf​(Class<?> modelClass,
                                           Object inst,
                                           Set<Class<?>> visitedClasses)
        Returns true if inst is an instance of modelClass in the OpenAPI model hierarchy. The Java class hierarchy is not implemented the same way as the OpenAPI model hierarchy, so it's not possible to use the instanceof keyword.
        Parameters:
        modelClass - A OpenAPI model class.
        inst - The instance object.
      • registerDiscriminator

        public static void registerDiscriminator​(Class<?> modelClass,
                                                 String discriminatorPropertyName,
                                                 Map<String,​Class<?>> mappings)
        Register a model class discriminator.
        Parameters:
        modelClass - the model class
        discriminatorPropertyName - the name of the discriminator property
        mappings - a map with the discriminator mappings.
      • registerDescendants

        public static void registerDescendants​(Class<?> modelClass,
                                               Map<String,​jakarta.ws.rs.core.GenericType> descendants)
        Register the oneOf/anyOf descendants of the modelClass.
        Parameters:
        modelClass - the model class
        descendants - a map of oneOf/anyOf descendants.
      • getDefault

        public static JSON getDefault()
        Get the default JSON instance.
        Returns:
        the default JSON instance
      • setDefault

        public static void setDefault​(JSON json)
        Set the default JSON instance.
        Parameters:
        json - JSON instance to be used