@@ -536,12 +536,31 @@ public BeanDescription introspectBeanDescriptionForCreation(JavaType type) {
536
536
return classIntrospector ().introspectForCreation (type );
537
537
}
538
538
539
+ public BeanDescription .Supplier lazyIntrospectBeanDescriptionForCreation (JavaType type ) {
540
+ return new BeanDescription .Supplier (type ) {
541
+ @ Override
542
+ public BeanDescription _construct (JavaType forType ) {
543
+ return introspectBeanDescriptionForCreation (forType );
544
+ }
545
+ };
546
+ }
547
+
539
548
public BeanDescription introspectBeanDescriptionForBuilder (JavaType builderType ,
540
549
BeanDescription valueTypeDesc ) {
541
550
return classIntrospector ().introspectForDeserializationWithBuilder (builderType ,
542
551
valueTypeDesc );
543
552
}
544
553
554
+ public BeanDescription .Supplier lazyIntrospectBeanDescriptionForBuilder (final JavaType builderType ,
555
+ final BeanDescription valueTypeDesc ) {
556
+ return new BeanDescription .Supplier (builderType ) {
557
+ @ Override
558
+ public BeanDescription _construct (JavaType forType ) {
559
+ return introspectBeanDescriptionForBuilder (forType , valueTypeDesc );
560
+ }
561
+ };
562
+ }
563
+
545
564
/*
546
565
/**********************************************************************
547
566
/* Misc config access
@@ -1890,8 +1909,15 @@ public <T> T reportBadTypeDefinition(BeanDescription bean,
1890
1909
* regarding specific property (of a type), unrelated to actual JSON content to map.
1891
1910
* Default behavior is to construct and throw a {@link DatabindException}.
1892
1911
*/
1912
+ public <T > T reportBadPropertyDefinition (BeanDescription .Supplier beanDescRef ,
1913
+ BeanPropertyDefinition prop , String msg , Object ... msgArgs )
1914
+ throws DatabindException
1915
+ {
1916
+ return reportBadPropertyDefinition (beanDescRef .get (), prop , msg , msgArgs );
1917
+ }
1918
+
1893
1919
public <T > T reportBadPropertyDefinition (BeanDescription bean , BeanPropertyDefinition prop ,
1894
- String msg , Object ... msgArgs )
1920
+ String msg , Object ... msgArgs )
1895
1921
throws DatabindException
1896
1922
{
1897
1923
msg = _format (msg , msgArgs );
0 commit comments