Switch to internal Librarywrapper instance management.
This commit is contained in:
		| @@ -1,13 +1,24 @@ | ||||
| package net.tomatentum.marinara; | ||||
|  | ||||
| import java.lang.reflect.Constructor; | ||||
|  | ||||
| import net.tomatentum.marinara.registry.InteractionRegistry; | ||||
| import net.tomatentum.marinara.wrapper.LibraryWrapper; | ||||
|  | ||||
| public class Marinara { | ||||
|      | ||||
|     public static Marinara load(LibraryWrapper wrapper) { | ||||
|         InteractionRegistry registry = new InteractionRegistry(wrapper); | ||||
|         return new Marinara(registry); | ||||
|     public static <T extends LibraryWrapper> Marinara load(Class<T> clazz) { | ||||
|         try { | ||||
|             Constructor<T> ctor = clazz.getConstructor(); | ||||
|             ctor.setAccessible(true); | ||||
|             T wrapper = ctor.newInstance(); | ||||
|             InteractionRegistry registry = new InteractionRegistry(wrapper); | ||||
|             return new Marinara(registry); | ||||
|         }catch (Exception ex) { | ||||
|             System.err.println(ex); | ||||
|             System.exit(100); | ||||
|             return null; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private InteractionRegistry registry; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user