@@ -54,31 +54,36 @@ public ConfigOverrides() {
54
54
// !!! TODO: change to (ALWAYS, ALWAYS)?
55
55
JsonInclude .Value .empty (),
56
56
JsonSetter .Value .empty (),
57
- VisibilityChecker .Std .defaultInstance ()
57
+ VisibilityChecker .Std .defaultInstance (),
58
+ null
58
59
);
59
60
}
60
61
61
62
protected ConfigOverrides (Map <Class <?>, MutableConfigOverride > overrides ,
62
63
JsonInclude .Value defIncl ,
63
64
JsonSetter .Value defSetter ,
64
- VisibilityChecker <?> defVisibility ) {
65
+ VisibilityChecker <?> defVisibility ,
66
+ Boolean defMergeable ) {
65
67
_overrides = overrides ;
66
68
_defaultInclusion = defIncl ;
67
69
_defaultSetterInfo = defSetter ;
68
70
_visibilityChecker = defVisibility ;
71
+ _defaultMergeable = defMergeable ;
69
72
}
70
73
71
74
public ConfigOverrides copy ()
72
75
{
76
+ Map <Class <?>, MutableConfigOverride > newOverrides ;
73
77
if (_overrides == null ) {
74
- return new ConfigOverrides ();
75
- }
76
- Map <Class <?>, MutableConfigOverride > newOverrides = _newMap ();
77
- for (Map .Entry <Class <?>, MutableConfigOverride > entry : _overrides .entrySet ()) {
78
- newOverrides .put (entry .getKey (), entry .getValue ().copy ());
78
+ newOverrides = null ;
79
+ } else {
80
+ newOverrides = _newMap ();
81
+ for (Map .Entry <Class <?>, MutableConfigOverride > entry : _overrides .entrySet ()) {
82
+ newOverrides .put (entry .getKey (), entry .getValue ().copy ());
83
+ }
79
84
}
80
85
return new ConfigOverrides (newOverrides ,
81
- _defaultInclusion , _defaultSetterInfo , _visibilityChecker );
86
+ _defaultInclusion , _defaultSetterInfo , _visibilityChecker , _defaultMergeable );
82
87
}
83
88
84
89
/*
@@ -131,28 +136,34 @@ public VisibilityChecker<?> getDefaultVisibility() {
131
136
return _visibilityChecker ;
132
137
}
133
138
139
+ /**
140
+ * @since 2.9
141
+ */
134
142
public void setDefaultInclusion (JsonInclude .Value v ) {
135
143
_defaultInclusion = v ;
136
144
}
137
145
146
+ /**
147
+ * @since 2.9
148
+ */
138
149
public void setDefaultSetterInfo (JsonSetter .Value v ) {
139
150
_defaultSetterInfo = v ;
140
151
}
141
152
142
153
/**
143
154
* @since 2.9
144
155
*/
145
- public void setDefaultVisibility ( VisibilityChecker <?> v ) {
146
- _visibilityChecker = v ;
156
+ public void setDefaultMergeable ( Boolean v ) {
157
+ _defaultMergeable = v ;
147
158
}
148
159
149
160
/**
150
161
* @since 2.9
151
162
*/
152
- public void setDefaultMergeable ( Boolean v ) {
153
- _defaultMergeable = v ;
163
+ public void setDefaultVisibility ( VisibilityChecker <?> v ) {
164
+ _visibilityChecker = v ;
154
165
}
155
-
166
+
156
167
/*
157
168
/**********************************************************
158
169
/* Helper methods
0 commit comments