public void startNextUntriedBranch()
	{
		if(this.parallel) 
			throw new IllegalStateException("This method is only for sequantial proxying");
		
		for(final MobicentsProxyBranch pbi: this.proxyBranches.values())
		{			
			// Issue http://code.google.com/p/mobicents/issues/detail?id=2461
			// don't start the branch is it has been cancelled already
			if(!pbi.isStarted() && !pbi.isCanceled())
			{
				pbi.start();
				return;
			}
		}
	}
public void startNextUntriedBranch ( ) { if ( this . parallel ) throw new IllegalStateException ( "This method is only for sequantial proxying" ) ; for ( final MobicentsProxyBranch pbi : this . proxyBranches . values ( ) ) { if ( ! pbi . isStarted ( ) && ! pbi . isCanceled ( ) ) { pbi . start ( ) ; return ; } } }
In sequential proxying get some untried branch and start it, then wait for response and repeat