模式:对于多种action的一致性处理
项目中有这样需求,对于多种action:PUT,GET,SCAN,DELETE 等等, 希望能够得到一致性处理;在对action操作进行处理之前有一致的准备操作,希望能够灵活地对各种action用统一的函数进行处理,方法如下:
void function(configForPrepare, action){
exec(configForPrepare, new ActionRunnable(){
@Override
void run(handle){
handle.process(action);
}
}) ;
}
void exec(configForPrepare, actionRunnable){
handle=doPrepare(configForPrepare);
actionRunnable.run(handle);
}
interface ActionRunnable{
void run(handle);
}
其中,程序的主函数是function,调用exec来完成对action的执行,exec中,首先准备action的运行句柄,然后直接处理action;
从中,虽然各种action有不同的操作逻辑和调用方法,但是有共同的操作句柄的准备过程,所以使用起来比较灵活。
浙公网安备 33010602011771号