com.github.nill14.utils.init.api.IMemberDescriptor Maven / Gradle / Ivy
package com.github.nill14.utils.init.api;
import java.lang.annotation.Annotation;
import java.lang.reflect.InvocationTargetException;
import java.util.Collection;
import java.util.Optional;
public interface IMemberDescriptor {
Optional getAnnotation(Class extends Annotation> annotation);
Collection getAnnotations();
Collection getParameterTypes();
Object invoke(Object receiver, Object... args) throws InvocationTargetException, ReflectiveOperationException;
/**
*
* All members are @Nullable or Inject(optional) so that we can skip invoke
* {@link java.util.Optional} is not such a case
*/
boolean isOptionalInject();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy