diff --git a/plugin/src/main/java/io/jenkins/plugins/casc/yaml/ModelConstructor.java b/plugin/src/main/java/io/jenkins/plugins/casc/yaml/ModelConstructor.java index 3fe03cce3b..c4b853c8ba 100644 --- a/plugin/src/main/java/io/jenkins/plugins/casc/yaml/ModelConstructor.java +++ b/plugin/src/main/java/io/jenkins/plugins/casc/yaml/ModelConstructor.java @@ -12,7 +12,7 @@ import org.yaml.snakeyaml.LoaderOptions; import org.yaml.snakeyaml.constructor.AbstractConstruct; import org.yaml.snakeyaml.constructor.Construct; -import org.yaml.snakeyaml.constructor.Constructor; +import org.yaml.snakeyaml.constructor.CustomClassLoaderConstructor; import org.yaml.snakeyaml.error.Mark; import org.yaml.snakeyaml.nodes.MappingNode; import org.yaml.snakeyaml.nodes.Node; @@ -23,19 +23,10 @@ /** * @author Nicolas De Loof */ -class ModelConstructor extends Constructor { - - /* - * TODO remove loader field and getClassForName method and extend CustomClassLoaderConstructor instead after this - * plugin requires SnakeYAML 2.0 - */ - - private final ClassLoader loader; +class ModelConstructor extends CustomClassLoaderConstructor { public ModelConstructor(LoaderOptions loadingConfig) { - super(Mapping.class, loadingConfig); - - this.loader = ModelConstructor.class.getClassLoader(); + super(Mapping.class, ModelConstructor.class.getClassLoader(), loadingConfig); this.yamlConstructors.put(Tag.BOOL, ConstructScalar); this.yamlConstructors.put(Tag.INT, ConstructScalar); @@ -95,16 +86,4 @@ protected void constructSequenceStep2(SequenceNode node, Collection collection) ((Sequence) collection).setSource(getSource(node)); super.constructSequenceStep2(node, collection); } - - /** - * Load the class - * - * @param name - the name - * @return Class to create - * @throws ClassNotFoundException - when cannot load the class - */ - @Override - protected Class getClassForName(String name) throws ClassNotFoundException { - return Class.forName(name, true, loader); - } } diff --git a/pom.xml b/pom.xml index 6b6bb7e0f1..b1037047a6 100644 --- a/pom.xml +++ b/pom.xml @@ -46,6 +46,17 @@ false + + + + + io.jenkins.plugins + snakeyaml-api + 2.2-111.vc6598e30cc65 + + + + repo.jenkins-ci.org