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

com.yuweix.kuafu.schedule.ScheduleAspect Maven / Gradle / Ivy

There is a newer version: 2.0.0
Show newest version
package com.yuweix.kuafu.schedule;


import com.yuweix.kuafu.schedule.base.AbstractTask;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;


/**
 * @author yuwei
 */
@Aspect
public class ScheduleAspect {
    @Pointcut("@annotation(com.yuweix.kuafu.schedule.Executable)")
    public void executable() {

    }

    @Around("executable()")
    public Object around(ProceedingJoinPoint point) throws Throwable {
        Object target = point.getTarget();
        if (!(target instanceof AbstractTask)) {
            return point.proceed();
        } else {
            ((AbstractTask) target).start();
            return null;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy