// pept.broker.Broker
//
public ClientInvocationInfo createOrIncrementInvocationInfo()
{
StackImpl invocationInfoStack =
(StackImpl) clientInvocationInfoStack.get();
ClientInvocationInfo clientInvocationInfo = null;
if (!invocationInfoStack.empty()) {
clientInvocationInfo =
(ClientInvocationInfo) invocationInfoStack.peek();
}
if ((clientInvocationInfo == null) ||
(!clientInvocationInfo.isRetryInvocation()))
{
// This is a new call - not a retry.
clientInvocationInfo = new CorbaInvocationInfo(this);
startingDispatch();
invocationInfoStack.push(clientInvocationInfo);
}
// Reset retry so recursive calls will get a new info object.
clientInvocationInfo.setIsRetryInvocation(false);
clientInvocationInfo.incrementEntryCount();
return clientInvocationInfo;