ComponentInvocation prevInv = beforeSize > 1 ? v.get(beforeSize - 2) : null;
ComponentInvocation curInv = v.get(beforeSize - 1);
try {
ComponentInvocationType invType = inv.getInvocationType();
if (invHandlers != null) {
for (ComponentInvocationHandler handler : invHandlers) {
handler.beforePostInvoke(invType, prevInv, curInv);
}
}
List<RegisteredComponentInvocationHandler> setCIH = regCompInvHandlerMap.get(invType);
if (setCIH != null) {
for (int i=0;i<setCIH.size();i++) {
setCIH.get(i).getComponentInvocationHandler().beforePostInvoke(invType, prevInv, curInv);
}
}
} finally {
// pop the stack
v.remove(beforeSize - 1);
if (invHandlers != null) {
for (ComponentInvocationHandler handler : invHandlers) {
handler.afterPostInvoke(inv.getInvocationType(), prevInv, inv);
}
}
ComponentInvocationType invType = inv.getInvocationType();
List<RegisteredComponentInvocationHandler> setCIH = regCompInvHandlerMap.get(invType);
if (setCIH != null) {
for (int i=0;i<setCIH.size();i++) {