From fe308746069ae97865a2029e53ccbfaf33914f36 Mon Sep 17 00:00:00 2001
From: Tor-Einar Skog <tor-einar.skog@nibio.no>
Date: Fri, 23 Sep 2022 09:46:34 +0200
Subject: [PATCH] fix: Replace deprecated Reflections API method call

---
 .../java/no/nibio/vips/model/factory/ModelFactory.java     | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/main/java/no/nibio/vips/model/factory/ModelFactory.java b/src/main/java/no/nibio/vips/model/factory/ModelFactory.java
index 4edc675..ae55f70 100755
--- a/src/main/java/no/nibio/vips/model/factory/ModelFactory.java
+++ b/src/main/java/no/nibio/vips/model/factory/ModelFactory.java
@@ -19,6 +19,8 @@
 
 package no.nibio.vips.model.factory;
 
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
@@ -143,7 +145,7 @@ public class ModelFactory {
         for(Class<? extends Model> subType : subTypes)
         {
                try {
-                   Model model = subType.newInstance();
+                   Model model = subType.getDeclaredConstructor().newInstance();
                    if(models.get(model.getModelId().toString()) == null)
                    {
                         models.put(model.getModelId().toString(), model);
@@ -158,7 +160,8 @@ public class ModelFactory {
                        throw new DuplicateModelIdException(message);
                    }
                    //System.out.println("Model " + model.getModelName() + " with id=" + model.getModelId().toString() + " was found");
-               } catch (    InstantiationException | IllegalAccessException | DuplicateModelIdException | NoClassDefFoundError ex) {
+               } catch (InstantiationException | IllegalAccessException | DuplicateModelIdException | NoClassDefFoundError | NoSuchMethodException |
+                        InvocationTargetException ex) {
                    Logger.getLogger(ModelFactory.class.getName()).log(Level.SEVERE, null, ex);
                }
         }
-- 
GitLab