Class CaseSearchRequestSingleItemAsListDeserializer
- 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.CaseSearchRequestSingleItemAsListDeserializer
-
- 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 CaseSearchRequestSingleItemAsListDeserializer extends SingleItemAsListDeserializer
Custom deserializer for handling JSON deserialization of objects that extend theSingleItemAsListclass, specifically designed for handlingCaseSearchRequestand ensuring its fields are properly sanitized.This deserializer extends the functionality of
SingleItemAsListDeserializerto additionally process the deserialized objects that represent case search requests. It ensures that the `fullText` field in each case search request is sanitized usingElasticsearchQuerySanitizer.It also provides a mechanism to dynamically determine the appropriate type using the contextual information during deserialization.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedCaseSearchRequestSingleItemAsListDeserializer()protectedCaseSearchRequestSingleItemAsListDeserializer(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 structure into an object, specifically handling instances that may extend theSingleCaseSearchRequestAsList.-
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
-
CaseSearchRequestSingleItemAsListDeserializer
protected CaseSearchRequestSingleItemAsListDeserializer()
-
CaseSearchRequestSingleItemAsListDeserializer
protected CaseSearchRequestSingleItemAsListDeserializer(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 structure into an object, specifically handling instances that may extend theSingleCaseSearchRequestAsList. During deserialization, it sanitizes the `fullText` field in eachCaseSearchRequestobject for security purposes usingElasticsearchQuerySanitizer.- Overrides:
deserializein classSingleItemAsListDeserializer- Parameters:
jsonParser- theJsonParserused for reading the JSON inputdeserializationContext- theDeserializationContextproviding access to contextual information during deserialization- Returns:
- the deserialized object, with sanitization applied if it is an instance of
SingleCaseSearchRequestAsList - Throws:
java.io.IOException- if any I/O error occurs during deserializationjava.lang.IllegalArgumentException- if the object could not be properly instantiated or deserialized
-
-