if (baseType != Type.NULL) {
proxyType.setSuperclass(baseType.getName());
proxyImports.add(baseType.getName());
}
ASMethod callMethod = proxyType.newMethod(Constants.METHOD_CALL, Visibility.PROTECTED, "Object");
callMethod.addParam("name", "String");
callMethod.addParam("...args", null);
callMethod.addStmt("throw new Error(\"Not Implemented\");");
ASMethod resultMethod = proxyType.newMethod(Constants.METHOD_ON_RESULT, Visibility.PROTECTED, Type.VOID.getName());
resultMethod.addParam("result", "Object");
ASMethod statusMethod = proxyType.newMethod(Constants.METHOD_ON_STATUS, Visibility.PROTECTED, Type.VOID.getName());
statusMethod.addParam("status", "Object");
}