[JOHNZON-332] add skipAccessModeWrapper toggle for backward compatibility
diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperBuilder.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperBuilder.java
index cbb2213..9646a90 100644
--- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperBuilder.java
+++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MapperBuilder.java
@@ -106,6 +106,7 @@
private boolean useBigDecimalForObjectNumbers;
private boolean supportEnumContainerDeserialization = true;
private Function<Class<?>, MapperConfig.CustomEnumConverter<?>> enumConverterFactory = type -> new EnumConverter(type);
+ private boolean skipAccessModeWrapper;
// @experimental polymorphic api
private Function<String, Class<?>> typeLoader;
@@ -200,7 +201,7 @@
throw new IllegalStateException("AccessMode is not an BaseAccessMode");
}
}
- if (!KnownNotOpenedJavaTypesAccessMode.class.isInstance(accessMode)) {
+ if (!skipAccessModeWrapper && !KnownNotOpenedJavaTypesAccessMode.class.isInstance(accessMode)) {
accessMode = new KnownNotOpenedJavaTypesAccessMode(accessMode);
}
@@ -561,4 +562,9 @@
this.discriminator = value;
return this;
}
+
+ public MapperBuilder setSkipAccessModeWrapper(final boolean skipAccessModeWrapper) {
+ this.skipAccessModeWrapper = skipAccessModeWrapper;
+ return this;
+ }
}