@@ -560,6 +560,9 @@ public abstract WritableObjectId findObjectId(Object forPojo,
560
560
* Note that serializers produced should NOT handle polymorphic serialization
561
561
* aspects; separate {@link TypeSerializer} is to be constructed by caller
562
562
* if and as necessary.
563
+ *<p>
564
+ * Note: this call will also contextualize serializer (call
565
+ * {@code serializer.createContextual()}) before returning it.
563
566
*
564
567
* @throws JsonMappingException if there are fatal problems with
565
568
* accessing suitable serializer; including that of not
@@ -602,7 +605,8 @@ public JsonSerializer<Object> findValueSerializer(Class<?> valueType, BeanProper
602
605
* This is necessary for accurate handling of external type information,
603
606
* to handle polymorphic types.
604
607
*<p>
605
- * Note: this call will also contextualize serializer before returning it.
608
+ * Note: this call will also contextualize serializer (call
609
+ * {@code serializer.createContextual()}) before returning it.
606
610
*
607
611
* @param property When creating secondary serializers, property for which
608
612
* serializer is needed: annotations of the property (or bean that contains it)
@@ -634,9 +638,10 @@ public JsonSerializer<Object> findValueSerializer(JavaType valueType, BeanProper
634
638
}
635
639
636
640
/**
637
- * Method variant used when we do NOT want contextualization to happen; it will need
638
- * to be handled at a later point, but caller wants to be able to do that
639
- * as needed; sometimes to avoid infinite loops
641
+ * Serializer lookup variant used when we do NOT want contextualization to happen;
642
+ * while contextualization MUST be handled at some point (many serializers will not be
643
+ * in usable state before contextualization), but caller wants to be able to do that
644
+ * later; sometimes to avoid infinite loops.
640
645
*
641
646
* @since 2.5
642
647
*/
@@ -663,9 +668,10 @@ public JsonSerializer<Object> findValueSerializer(Class<?> valueType) throws Jso
663
668
}
664
669
665
670
/**
666
- * Method variant used when we do NOT want contextualization to happen; it will need
667
- * to be handled at a later point, but caller wants to be able to do that
668
- * as needed; sometimes to avoid infinite loops
671
+ * Serializer lookup variant used when we do NOT want contextualization to happen;
672
+ * while contextualization MUST be handled at some point (many serializers will not be
673
+ * in usable state before contextualization), but caller wants to be able to do that
674
+ * later; sometimes to avoid infinite loops.
669
675
*
670
676
* @since 2.5
671
677
*/
@@ -697,8 +703,10 @@ public JsonSerializer<Object> findValueSerializer(JavaType valueType)
697
703
* certain that this is the primary property value serializer.
698
704
*
699
705
* @param valueType Type of values to serialize
700
- * @param property Property that is being handled; will never be null, and its
701
- * type has to match <code>valueType</code> parameter.
706
+ * @param property Property that directly refers to value being serialized (optional,
707
+ * may be {@code null} for root level serializers).
708
+ * Should not be null if property is known. If not null,
709
+ * its type must match {@code valueType} argument.
702
710
*
703
711
* @since 2.3
704
712
*/
0 commit comments