Skip to content

Commit 9b121c2

Browse files
committed
Start working on #4907
1 parent 63dd152 commit 9b121c2

File tree

5 files changed

+6
-40
lines changed

5 files changed

+6
-40
lines changed

src/main/java/tools/jackson/databind/BeanDescription.java

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import com.fasterxml.jackson.annotation.JsonFormat;
77
import com.fasterxml.jackson.annotation.JsonInclude;
88

9-
import tools.jackson.databind.annotation.JsonPOJOBuilder;
109
import tools.jackson.databind.introspect.*;
1110
import tools.jackson.databind.util.Annotations;
1211
import tools.jackson.databind.util.Converter;
@@ -255,12 +254,6 @@ public AnnotatedMember findJsonKeyAccessor() {
255254
*/
256255
public abstract Converter<Object,Object> findDeserializationConverter();
257256

258-
/**
259-
* Accessor for possible description for the bean type, used for constructing
260-
* documentation.
261-
*/
262-
public String findClassDescription() { return null; }
263-
264257
/*
265258
/**********************************************************************
266259
/* Basic API, other
@@ -269,19 +262,6 @@ public AnnotatedMember findJsonKeyAccessor() {
269262

270263
public abstract Map<Object, AnnotatedMember> findInjectables();
271264

272-
/**
273-
* Method for checking if the POJO type has annotations to
274-
* indicate that a builder is to be used for instantiating
275-
* instances and handling data binding, instead of standard
276-
* bean deserializer.
277-
*/
278-
public abstract Class<?> findPOJOBuilder();
279-
280-
/**
281-
* Method for finding configuration for POJO Builder class.
282-
*/
283-
public abstract JsonPOJOBuilder.Value findPOJOBuilderConfig();
284-
285265
/**
286266
* Method called to create a "default instance" of the bean, currently
287267
* only needed for obtaining default field values which may be used for

src/main/java/tools/jackson/databind/deser/BeanDeserializerFactory.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,8 @@ protected ValueDeserializer<Object> buildBuilderBasedDeserializer(
337337
addBackReferenceProperties(ctxt, builderDescRef, builder);
338338
addInjectables(ctxt, builderDescRef, builder);
339339

340-
JsonPOJOBuilder.Value builderConfig = builderDescRef.get().findPOJOBuilderConfig();
340+
JsonPOJOBuilder.Value builderConfig = ctxt.getAnnotationIntrospector()
341+
.findPOJOBuilderConfig(config, builderDescRef.getClassInfo());
341342
final String buildMethodName = (builderConfig == null) ?
342343
JsonPOJOBuilder.DEFAULT_BUILD_METHOD : builderConfig.buildMethodName;
343344

src/main/java/tools/jackson/databind/deser/DeserializerCache.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,8 @@ protected ValueDeserializer<Object> _createDeserializer(DeserializationContext c
338338
}
339339

340340
// We may also have a Builder type to consider...
341-
Class<?> builder = beanDescRef.get().findPOJOBuilder();
341+
Class<?> builder = ctxt.getAnnotationIntrospector().findPOJOBuilder(config,
342+
beanDescRef.getClassInfo());
342343
if (builder != null) {
343344
return (ValueDeserializer<Object>) factory.createBuilderBasedDeserializer(
344345
ctxt, type, beanDescRef, builder);

src/main/java/tools/jackson/databind/introspect/BasicBeanDescription.java

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import com.fasterxml.jackson.annotation.JsonInclude;
88

99
import tools.jackson.databind.*;
10-
import tools.jackson.databind.annotation.JsonPOJOBuilder;
1110
import tools.jackson.databind.cfg.HandlerInstantiator;
1211
import tools.jackson.databind.cfg.MapperConfig;
1312
import tools.jackson.databind.util.Annotations;
@@ -654,29 +653,13 @@ protected AnnotatedAndMetadata<AnnotatedMethod, JsonCreator.Mode> findFactoryMet
654653
/**********************************************************************
655654
*/
656655

657-
@Override
658-
public Class<?> findPOJOBuilder() {
659-
return _intr.findPOJOBuilder(_config, _classInfo);
660-
}
661-
662-
@Override
663-
public JsonPOJOBuilder.Value findPOJOBuilderConfig()
664-
{
665-
return _intr.findPOJOBuilderConfig(_config, _classInfo);
666-
}
667-
668656
@Override
669657
public Converter<Object,Object> findDeserializationConverter()
670658
{
671659
return _createConverter(_intr
672660
.findDeserializationConverter(_config, _classInfo));
673661
}
674662

675-
@Override
676-
public String findClassDescription() {
677-
return _intr.findClassDescription(_config, _classInfo);
678-
}
679-
680663
/*
681664
/**********************************************************************
682665
/* Helper methods, other

src/test/java/tools/jackson/databind/introspect/BeanDescriptionTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ static class DocumentedBean {
2424
public void testClassDesc() throws Exception
2525
{
2626
BeanDescription beanDesc = ObjectMapperTestAccess.beanDescriptionForDeser(MAPPER, DocumentedBean.class);
27-
assertEquals(CLASS_DESC, beanDesc.findClassDescription());
27+
assertEquals(CLASS_DESC, MAPPER.deserializationConfig().getAnnotationIntrospector()
28+
.findClassDescription(MAPPER.deserializationConfig(), beanDesc.getClassInfo()));
2829
}
2930
}

0 commit comments

Comments
 (0)