protected void execute(Resource r1, Resource r2) throws Exception {
throw new UnsupportedOperationException("Invoke execute with triple resource ");
}
protected void execute(Resource r1) throws Exception {
Resource r2 = getResource(r2Name, r2Timeout);
Resource r3 = getResource(r3Name, r3Timeout);
try {
execute(r1, r2, r3);
} finally {
releaseResource(r2Name, r2);
releaseResource(r3Name, r3);