All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.tosan.http.server.starter.util.AspectUtil Maven / Gradle / Ivy

package com.tosan.http.server.starter.util;

import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.aop.support.AopUtils;

import java.lang.annotation.Annotation;
import java.lang.reflect.Method;

/**
 * @author AmirHossein ZamanZade
 * @since 10/26/2022
 */
public class AspectUtil {
    public  T getAnnotation(ProceedingJoinPoint pjp, Class clazz) {
        MethodSignature methodSignature = (MethodSignature) pjp.getSignature();
        Method method = methodSignature.getMethod();
        Method meth = AopUtils.getMostSpecificMethod(method, pjp.getTarget().getClass());
        return (T) meth.getAnnotation(clazz);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy