mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2024-12-23 17:57:38 +00:00
Added a generic injector for commands
This commit is contained in:
parent
ef60fa94bf
commit
2af38feadc
@ -0,0 +1,23 @@
|
|||||||
|
package com.sk89q.minecraft.util.commands;
|
||||||
|
|
||||||
|
import java.lang.reflect.Constructor;
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
|
||||||
|
public class SimpleInjector<T> implements Injector {
|
||||||
|
private final T injectionObject;
|
||||||
|
public SimpleInjector(T injectionObject) {
|
||||||
|
this.injectionObject = injectionObject;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getInstance(Class<?> cls) throws InvocationTargetException,
|
||||||
|
IllegalAccessException, InstantiationException {
|
||||||
|
try {
|
||||||
|
Constructor<?> construct = cls.getConstructor(injectionObject.getClass());
|
||||||
|
return construct.newInstance(injectionObject);
|
||||||
|
} catch (NoSuchMethodException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user