diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModelFactory.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModelFactory.java index bd7c72d874d1..e16c6bf25c1b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModelFactory.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModelFactory.java @@ -18,36 +18,12 @@ package org.openapitools.codegen; import java.lang.reflect.InvocationTargetException; -import java.util.HashMap; -import java.util.Map; public final class CodegenModelFactory { - - private static final Map> typeMapping = new HashMap>(); - - /** - * Configure a different implementation class. - * - * @param type the type that shall be replaced - * @param implementation the implementation class must extend the default class and must provide a public no-arg constructor - */ - public static void setTypeMapping(CodegenModelType type, Class implementation) { - if (!type.getDefaultImplementation().isAssignableFrom(implementation)) { - throw new IllegalArgumentException(implementation.getSimpleName() + " doesn't extend " + type.getDefaultImplementation().getSimpleName()); - } - try { - implementation.getDeclaredConstructor().newInstance(); - } catch (Exception e) { - throw new IllegalArgumentException(e); - } - typeMapping.put(type, implementation); - } - @SuppressWarnings("unchecked") public static T newInstance(CodegenModelType type) { - Class classType = typeMapping.get(type); try { - return (T) (classType != null ? classType : type.getDefaultImplementation()).getDeclaredConstructor().newInstance(); + return (T) type.getDefaultImplementation().getDeclaredConstructor().newInstance(); } catch (IllegalAccessException | InstantiationException | NoSuchMethodException | InvocationTargetException e) { throw new RuntimeException(e); }