Java OpenGL GL 接口包含大约 2000 个方法,出于调试目的,我想包装一个实例并将调用委托给它,同时进行一些日志记录。在每种情况下,日志代码都可以推送到相同的方法,因此写出方法实现的任务看起来可以自动化。我正在尝试做的一个例子:
import javax.media.opengl.GL;
public class GLErrorLogger implements GL {
private final GL backing;
public GLErrorLogger(GL delegateToMe) {
backing = delegateToMe;
}
private void checkErrorCode() {
// Log frame and thread details depending on gl state
}
/**
* Example of a method
*/
@Override
public int glGenLists(int arg0) {
checkErrorCode();
int retVal = backing.glGenLists(arg0);
checkErrorCode();
return retVal;
}
// rest of methods here...
}
换句话说,将方法名称和参数(减去它们的类型)复制到对支持对象的调用中,围绕对日志记录方法的调用,如果有返回类型,则将结果分配给该类型的变量并返回它在方法结束时。
我查看了创建一次性 Eclipse 代码模板来自动生成方法,但是没有一种立即明显的方法来对返回类型进行模式匹配。任何人都可以建议一种在 Eclipse 或其任何代码生成工具中执行此操作的方法来节省我拉出正则表达式工具包的时间吗?