Skip to content

Commit 4bbce44

Browse files
committed
...
1 parent 7d353ce commit 4bbce44

File tree

2 files changed

+29
-23
lines changed

2 files changed

+29
-23
lines changed

src/main/java/com/fasterxml/jackson/databind/cfg/MapperBuilder.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,7 @@ protected MapperBuilder(TokenStreamFactory streamFactory)
261261
_deserFeatures = DEFAULT_DESER_FEATURES;
262262
_serFeatures = DEFAULT_SER_FEATURES;
263263

264+
_typeFactory = null;
264265
_classIntrospector = null;
265266
_typeResolverProvider = null;
266267
_subtypeResolver = null;
@@ -298,6 +299,7 @@ protected MapperBuilder(MapperBuilderState state)
298299
_serFeatures = state._serFeatures;
299300

300301
// Handlers, introspection
302+
_typeFactory = state._typeFactory;
301303
_classIntrospector = state._classIntrospector;
302304
_typeResolverProvider = state._typeResolverProvider;
303305
_subtypeResolver = Snapshottable.takeSnapshot(state._subtypeResolver);
@@ -342,6 +344,7 @@ protected MapperBuilder(MapperBuilder<?,?> base)
342344
_formatParserFeatures = base._formatParserFeatures;
343345
_formatGeneratorFeatures = base._formatGeneratorFeatures;
344346

347+
_typeFactory = base._typeFactory;
345348
_classIntrospector = base._classIntrospector;
346349
_typeResolverProvider = base._typeResolverProvider;
347350
_subtypeResolver = base._subtypeResolver;

src/main/java/com/fasterxml/jackson/databind/cfg/MapperBuilderState.java

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import com.fasterxml.jackson.databind.ser.DefaultSerializerProvider;
1818
import com.fasterxml.jackson.databind.ser.FilterProvider;
1919
import com.fasterxml.jackson.databind.ser.SerializerFactory;
20+
import com.fasterxml.jackson.databind.type.TypeFactory;
2021
import com.fasterxml.jackson.databind.util.LinkedNode;
2122

2223
/**
@@ -70,6 +71,7 @@ public abstract class MapperBuilderState
7071
/**********************************************************************
7172
*/
7273

74+
protected final TypeFactory _typeFactory;
7375
protected final ClassIntrospector _classIntrospector;
7476
protected final TypeResolverProvider _typeResolverProvider;
7577
protected final SubtypeResolver _subtypeResolver;
@@ -114,38 +116,39 @@ public MapperBuilderState(MapperBuilder<?,?> src)
114116
{
115117
// Basic settings
116118

117-
this._baseSettings = src._baseSettings; // immutable
118-
this._streamFactory = src._streamFactory; // immutable
119-
this._configOverrides = Snapshottable.takeSnapshot(src._configOverrides);
119+
_baseSettings = src._baseSettings; // immutable
120+
_streamFactory = src._streamFactory; // immutable
121+
_configOverrides = Snapshottable.takeSnapshot(src._configOverrides);
120122

121123
// Feature flags
122-
this._mapperFeatures = src._mapperFeatures;
123-
this._serFeatures = src._serFeatures;
124-
this._deserFeatures = src._deserFeatures;
125-
this._parserFeatures = src._parserFeatures;
126-
this._generatorFeatures = src._generatorFeatures;
127-
this._formatParserFeatures = src._formatParserFeatures;
128-
this._formatGeneratorFeatures = src._formatGeneratorFeatures;
124+
_mapperFeatures = src._mapperFeatures;
125+
_serFeatures = src._serFeatures;
126+
_deserFeatures = src._deserFeatures;
127+
_parserFeatures = src._parserFeatures;
128+
_generatorFeatures = src._generatorFeatures;
129+
_formatParserFeatures = src._formatParserFeatures;
130+
_formatGeneratorFeatures = src._formatGeneratorFeatures;
129131

130132
// Handlers, introspection
131-
this._classIntrospector = src._classIntrospector;
132-
this._typeResolverProvider = src._typeResolverProvider;
133-
this._subtypeResolver = Snapshottable.takeSnapshot(src._subtypeResolver);
134-
this._mixInHandler = (MixInHandler) Snapshottable.takeSnapshot(src._mixInHandler);
133+
_typeFactory = src._typeFactory;
134+
_classIntrospector = src._classIntrospector;
135+
_typeResolverProvider = src._typeResolverProvider;
136+
_subtypeResolver = Snapshottable.takeSnapshot(src._subtypeResolver);
137+
_mixInHandler = (MixInHandler) Snapshottable.takeSnapshot(src._mixInHandler);
135138

136139
// Factories for serialization
137-
this._serializerFactory = src._serializerFactory;
138-
this._serializerProvider = src._serializerProvider;
139-
this._filterProvider = src._filterProvider;
140-
this._defaultPrettyPrinter = src._defaultPrettyPrinter;
140+
_serializerFactory = src._serializerFactory;
141+
_serializerProvider = src._serializerProvider;
142+
_filterProvider = src._filterProvider;
143+
_defaultPrettyPrinter = src._defaultPrettyPrinter;
141144

142145
// Factories for deserialization
143-
this._deserializerFactory = src._deserializerFactory;
144-
this._deserializationContext = src._deserializationContext;
145-
this._injectableValues = Snapshottable.takeSnapshot(src._injectableValues);
146+
_deserializerFactory = src._deserializerFactory;
147+
_deserializationContext = src._deserializationContext;
148+
_injectableValues = Snapshottable.takeSnapshot(src._injectableValues);
146149
// assume our usage of LinkedNode-based list is immutable here (should be)
147-
this._problemHandlers = src._problemHandlers;
148-
this._abstractTypeResolvers = src._abstractTypeResolvers;
150+
_problemHandlers = src._problemHandlers;
151+
_abstractTypeResolvers = src._abstractTypeResolvers;
149152

150153
// Modules
151154
if (src._modules == null) {

0 commit comments

Comments
 (0)