package de.tobiyas.racesandclasses.util.traitutil;
import java.lang.reflect.Method;
import de.tobiyas.racesandclasses.traitcontainer.interfaces.annotations.configuration.TraitInfos;
import de.tobiyas.racesandclasses.traitcontainer.interfaces.markerinterfaces.Trait;
public class TraitVisible {
/**
* Checks if a Trait is visible by checking it's import Trait Annotation
*
* @param trait
* @return
*/
public static boolean isVisible(Trait trait) {
try{
Method importMethod = trait.getClass().getMethod("importTrait");
TraitInfos infos = importMethod.getAnnotation(TraitInfos.class);
boolean isVisable = infos.visible();
return isVisable;
}catch(Exception exp){}
return false;
}
}