/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.utils.common.security; import java.lang.annotation.Annotation; import java.lang.reflect.Method; /** * A {@link MethodPermissionCheck} that verifies the presence of an annotation on the target method. * * Note that annotations are only inherited from methods in parent <b>classes</b>, but <b>not</b> * from methods in implemented <b>interfaces</b>. * * @author Robert Mischke */ public final class MethodPermissionCheckHasAnnotation implements MethodPermissionCheck { private Class<? extends Annotation> annotationClass; public MethodPermissionCheckHasAnnotation(Class<? extends Annotation> annotationClass) { this.annotationClass = annotationClass; } @Override public boolean checkPermission(Method method) { return method.isAnnotationPresent(annotationClass); } }