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

org.dromara.sms4j.api.proxy.SmsProcessor Maven / Gradle / Ivy

package org.dromara.sms4j.api.proxy;


import org.dromara.sms4j.api.entity.SmsResponse;

import java.lang.reflect.Method;
/**
 * 执行器接口
 *
 * @author sh1yu
 * @since 2023/10/27 13:03
 */
public interface SmsProcessor extends Order {
    /**
     *  preProcessor
     * 

前置拦截方法 此方法将在短信发送方法之前进行执行,但请勿在此方法中修改实例对象或者方法对象,否则可能会导致并发问题 * @param method 方法对象 * @param source 实例对象 * @param param 参数列表 * @author :Wind */ default Object[] preProcessor(Method method, Object source, Object[] param) { return null; } /** * postProcessor *

后置拦截方法 此方法执行在发送方法执行完毕之后获取到返回值之后 * @param result 返回值 * @param param 参数列表 * @author :Wind */ default Object postProcessor(SmsResponse result, Object[] param) { return null; } /** * exceptionHandleProcessor *

异常拦截执行器,在发送方法执行过程中发生异常,将会通过此方法进行反馈。 *

请注意,此方法一旦捕捉到相应异常并抛出新异常后,会中断后续执行器的进行 如果在所有的异常执行器中均没有抛出异常,则后续会进入后置方法执行器 * @param method 方法对象 * @param source 实例对象 * @param param 参数列表 * @param exception 异常 * @author :Wind */ default void exceptionHandleProcessor(Method method, Object source, Object[] param, Exception exception) throws RuntimeException { } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy