From 20443e22a9a24907484aa1cd2d6843cdcfef3977 Mon Sep 17 00:00:00 2001 From: Tatu Saloranta Date: Wed, 15 Apr 2020 18:41:42 -0700 Subject: Remove some of work wrt #2678 (approach not feasible) --- .../databind/deser/BasicDeserializerFactory.java | 8 ++--- .../introspect/BeanPropertyDefinition.java | 8 ----- .../databind/introspect/POJOPropertyBuilder.java | 37 ++-------------------- .../jackson/failing/JacksonInject2678Test.java | 7 +--- 4 files changed, 7 insertions(+), 53 deletions(-) diff --git a/src/main/java/com/fasterxml/jackson/databind/deser/BasicDeserializerFactory.java b/src/main/java/com/fasterxml/jackson/databind/deser/BasicDeserializerFactory.java index df19716f9..b4c5ca490 100644 --- a/src/main/java/com/fasterxml/jackson/databind/deser/BasicDeserializerFactory.java +++ b/src/main/java/com/fasterxml/jackson/databind/deser/BasicDeserializerFactory.java @@ -461,17 +461,17 @@ index, owner, defs[index], propDef); for (int i = 0; i < argCount; ++i) { final AnnotatedParameter param = ctor.getParameter(i); BeanPropertyDefinition propDef = candidate.propertyDef(i); - JacksonInject.Value injectId = intr.findInjectableValue(param); + JacksonInject.Value injectable = intr.findInjectableValue(param); final PropertyName name = (propDef == null) ? null : propDef.getFullName(); if (propDef != null && propDef.isExplicitlyNamed()) { ++explicitNameCount; - properties[i] = constructCreatorProperty(ctxt, beanDesc, name, i, param, injectId); + properties[i] = constructCreatorProperty(ctxt, beanDesc, name, i, param, injectable); continue; } - if (injectId != null) { + if (injectable != null) { ++injectCount; - properties[i] = constructCreatorProperty(ctxt, beanDesc, name, i, param, injectId); + properties[i] = constructCreatorProperty(ctxt, beanDesc, name, i, param, injectable); continue; } NameTransformer unwrapper = intr.findUnwrappingNameTransformer(param); diff --git a/src/main/java/com/fasterxml/jackson/databind/introspect/BeanPropertyDefinition.java b/src/main/java/com/fasterxml/jackson/databind/introspect/BeanPropertyDefinition.java index 85be2e9b6..caa2663c6 100644 --- a/src/main/java/com/fasterxml/jackson/databind/introspect/BeanPropertyDefinition.java +++ b/src/main/java/com/fasterxml/jackson/databind/introspect/BeanPropertyDefinition.java @@ -2,7 +2,6 @@ package com.fasterxml.jackson.databind.introspect; import java.util.Iterator; -import com.fasterxml.jackson.annotation.JacksonInject; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.*; @@ -259,13 +258,6 @@ public abstract class BeanPropertyDefinition return (ref == null) ? null : ref.getName(); } - /** - * @since 2.11 - */ - public JacksonInject.Value findValueInjection() { - return null; - } - /** * Method used to check whether this logical property has a marker * to indicate it should be used as the type id for polymorphic type diff --git a/src/main/java/com/fasterxml/jackson/databind/introspect/POJOPropertyBuilder.java b/src/main/java/com/fasterxml/jackson/databind/introspect/POJOPropertyBuilder.java index 04a29d94e..da593dc64 100644 --- a/src/main/java/com/fasterxml/jackson/databind/introspect/POJOPropertyBuilder.java +++ b/src/main/java/com/fasterxml/jackson/databind/introspect/POJOPropertyBuilder.java @@ -2,11 +2,11 @@ package com.fasterxml.jackson.databind.introspect; import java.util.*; -import com.fasterxml.jackson.annotation.JacksonInject; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonSetter; import com.fasterxml.jackson.annotation.Nulls; + import com.fasterxml.jackson.databind.*; import com.fasterxml.jackson.databind.cfg.ConfigOverride; import com.fasterxml.jackson.databind.cfg.MapperConfig; @@ -30,13 +30,6 @@ public class POJOPropertyBuilder private final static AnnotationIntrospector.ReferenceProperty NOT_REFEFERENCE_PROP = AnnotationIntrospector.ReferenceProperty.managed(""); - /** - * Marker value for case of "no value injection found" - * - * @since 2.11 - */ - private final static JacksonInject.Value NO_VALUE_INJECTION = JacksonInject.Value.empty(); - /** * Whether property is being composed for serialization * (true) or deserialization (false) @@ -78,13 +71,6 @@ public class POJOPropertyBuilder */ protected transient AnnotationIntrospector.ReferenceProperty _referenceInfo; - /** - * Lazily accessed information about value injection information. - * - * @since 2.11 - */ - protected transient JacksonInject.Value _injectedValue; - public POJOPropertyBuilder(MapperConfig config, AnnotationIntrospector ai, boolean forSerialization, PropertyName internalName) { this(config, ai, forSerialization, internalName, internalName); @@ -455,7 +441,7 @@ public class POJOPropertyBuilder @Override public AnnotatedMethod getSetter() { - // Easy with zero or one getters... + // Easy with zero or one setters... Linked curr = _setters; if (curr == null) { return null; @@ -652,25 +638,6 @@ public class POJOPropertyBuilder return result; } - @Override - public JacksonInject.Value findValueInjection() { -// protected transient ; - JacksonInject.Value result = _injectedValue; - if (result != null) { - if (result == NO_VALUE_INJECTION) { - return null; - } - } - result = fromMemberAnnotations(new WithMember() { - @Override - public JacksonInject.Value withMember(AnnotatedMember member) { - return _annotationIntrospector.findInjectableValue(member); - } - }); - _injectedValue = (result == null) ? NO_VALUE_INJECTION : result; - return result; - } - @Override public boolean isTypeId() { Boolean b = fromMemberAnnotations(new WithMember() { diff --git a/src/test/java/com/fasterxml/jackson/failing/JacksonInject2678Test.java b/src/test/java/com/fasterxml/jackson/failing/JacksonInject2678Test.java index 9ca2bca29..d0cf6c708 100644 --- a/src/test/java/com/fasterxml/jackson/failing/JacksonInject2678Test.java +++ b/src/test/java/com/fasterxml/jackson/failing/JacksonInject2678Test.java @@ -16,6 +16,7 @@ public class JacksonInject2678Test extends BaseMapTest protected static class Some { private String field1; + @JacksonInject(value = "defaultValueForField2", useInput = OptBoolean.TRUE) private String field2; public Some(@JsonProperty("field1") final String field1, @@ -34,12 +35,6 @@ public class JacksonInject2678Test extends BaseMapTest public String getField2() { return field2; } - - @JacksonInject(value = "defaultValueForField2", useInput = OptBoolean.TRUE) - public void setField2(String v) { -//System.err.println("DEBUG: setField2, was ["+field2+"], set to ["+v+"]"); - field2 = v; - } } // [databind#2678] -- cgit v1.2.3