/** * The default value of the {@code objectWrapper} setting, when {@code null} is passed for it * to the {@link Engine} constructor. */ private static BeansWrapper createDefaultObjectWrapper(Version recommendedDefaults, Version fmIncompImprovements) { BeansWrapper objectWrapper; if (recommendedDefaultsGE0916(recommendedDefaults) && fmIncompImprovements.intValue() >= Configuration.VERSION_2_3_21.intValue()) { DefaultObjectWrapperBuilder dowb = new DefaultObjectWrapperBuilder(fmIncompImprovements); dowb.setForceLegacyNonListCollections(false); dowb.setIterableSupport(true); objectWrapper = dowb.build(); } else { if (fmIncompImprovements == null || fmIncompImprovements.intValue() < Configuration.VERSION_2_3_21.intValue()) { // The old (deprecated) way: BeansWrapper bw = fmIncompImprovements != null ? new BeansWrapper(fmIncompImprovements) : new BeansWrapper(); bw.setSimpleMapWrapper(true); objectWrapper = bw; } else { BeansWrapperBuilder bwb = new BeansWrapperBuilder(fmIncompImprovements); bwb.setSimpleMapWrapper(true); objectWrapper = bwb.build(); } } return objectWrapper; }