Class TaskSearchRequestSingleItemAsListDeserializer
- java.lang.Object
-
- com.fasterxml.jackson.databind.JsonDeserializer<T>
-
- com.fasterxml.jackson.databind.deser.std.StdDeserializer<java.lang.Object>
-
- com.netgrif.application.engine.utils.SingleItemAsListDeserializer
-
- com.netgrif.application.engine.workflow.utils.TaskSearchRequestSingleItemAsListDeserializer
-
- All Implemented Interfaces:
com.fasterxml.jackson.databind.deser.ContextualDeserializer,com.fasterxml.jackson.databind.deser.NullValueProvider,com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable,java.io.Serializable
public class TaskSearchRequestSingleItemAsListDeserializer extends SingleItemAsListDeserializer
Custom deserializer for handling cases where single `TaskSearchRequest` items are sent as lists or standalone entities during JSON deserialization.This class extends the `SingleItemAsListDeserializer`, enabling support for deserialization scenarios where JSON may represent either a single item or a list of items. It ensures compatibility with `SingleTaskSearchRequestAsList` by sanitizing the `fullText` field in each `TaskSearchRequest` instance using the `ElasticsearchQuerySanitizer`.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedTaskSearchRequestSingleItemAsListDeserializer()protectedTaskSearchRequestSingleItemAsListDeserializer(java.lang.Class<? extends SingleItemAsList> vc)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.fasterxml.jackson.databind.JsonDeserializer<?>createContextual(com.fasterxml.jackson.databind.DeserializationContext deserializationContext, com.fasterxml.jackson.databind.BeanProperty beanProperty)java.lang.Objectdeserialize(com.fasterxml.jackson.core.JsonParser jsonParser, com.fasterxml.jackson.databind.DeserializationContext deserializationContext)Deserializes a JSON input into an object while handling cases where a single `TaskSearchRequest` or a list of `TaskSearchRequest` objects is included.-
Methods inherited from class com.netgrif.application.engine.utils.SingleItemAsListDeserializer
getItemClass, isWrapperClass
-
Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_byteOverflow, _checkBooleanToStringCoercion, _checkCoercionFail, _checkDoubleSpecialValue, _checkFloatSpecialValue, _checkFloatToIntCoercion, _checkFloatToStringCoercion, _checkFromStringCoercion, _checkFromStringCoercion, _checkIntToFloatCoercion, _checkIntToStringCoercion, _checkTextualNull, _checkToStringCoercion, _coerceBooleanFromInt, _coercedTypeDesc, _coercedTypeDesc, _coerceEmptyString, _coerceIntegral, _coerceNullToken, _coerceTextualNull, _deserializeFromArray, _deserializeFromEmpty, _deserializeFromEmptyString, _deserializeFromString, _deserializeWrappedValue, _failDoubleToIntCoercion, _findCoercionFromBlankString, _findCoercionFromEmptyArray, _findCoercionFromEmptyString, _findNullProvider, _hasTextualNull, _intOverflow, _isBlank, _isEmptyOrTextualNull, _isFalse, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _isTrue, _neitherNull, _nonNullNumber, _parseBoolean, _parseBooleanFromInt, _parseBooleanPrimitive, _parseBooleanPrimitive, _parseBytePrimitive, _parseDate, _parseDate, _parseDateFromArray, _parseDouble, _parseDouble, _parseDoublePrimitive, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseInteger, _parseInteger, _parseIntPrimitive, _parseIntPrimitive, _parseLong, _parseLong, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, deserializeWithType, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueInstantiator, getValueType, getValueType, handledType, handleMissingEndArrayForSingle, handleNestedArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer
-
Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserialize, deserializeWithType, findBackReference, getAbsentValue, getDelegatee, getEmptyAccessPattern, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, isCachable, logicalType, replaceDelegatee, supportsUpdate, unwrappingDeserializer
-
-
-
-
Constructor Detail
-
TaskSearchRequestSingleItemAsListDeserializer
protected TaskSearchRequestSingleItemAsListDeserializer()
-
TaskSearchRequestSingleItemAsListDeserializer
protected TaskSearchRequestSingleItemAsListDeserializer(java.lang.Class<? extends SingleItemAsList> vc)
-
-
Method Detail
-
createContextual
public com.fasterxml.jackson.databind.JsonDeserializer<?> createContextual(com.fasterxml.jackson.databind.DeserializationContext deserializationContext, com.fasterxml.jackson.databind.BeanProperty beanProperty)- Specified by:
createContextualin interfacecom.fasterxml.jackson.databind.deser.ContextualDeserializer- Overrides:
createContextualin classSingleItemAsListDeserializer
-
deserialize
public java.lang.Object deserialize(com.fasterxml.jackson.core.JsonParser jsonParser, com.fasterxml.jackson.databind.DeserializationContext deserializationContext) throws java.io.IOException, java.lang.IllegalArgumentExceptionDeserializes a JSON input into an object while handling cases where a single `TaskSearchRequest` or a list of `TaskSearchRequest` objects is included. If the object is a `SingleTaskSearchRequestAsList`, it processes each `TaskSearchRequest` in the list by sanitizing the `fullText` field using `ElasticsearchQuerySanitizer`.- Overrides:
deserializein classSingleItemAsListDeserializer- Parameters:
jsonParser- the JSON parser used to parse the incoming JSON contentdeserializationContext- the context for deserialization, providing shared state and configuration- Returns:
- the deserialized object, with sanitization applied to `TaskSearchRequest.fullText` if applicable
- Throws:
java.io.IOException- if an I/O error occurs during parsingjava.lang.IllegalArgumentException- if the deserialization process encounters an error
-
-