src/net/java/sip/communicator/impl/protocol/sip/IceTransportManagerSipImpl.java
/**
     * Starts transport candidate harvest. This method should complete rapidly
     * and, in case of lengthy procedures like STUN/TURN/UPnP candidate harvests
     * are necessary, they should be executed in a separate thread. Candidate
     * harvest would then need to be concluded in the
     * {@link #wrapupCandidateHarvest()} method which would be called once we
     * absolutely need the candidates.
     *
     * @param trickleCallback the callback that will be taking care of
     * candidates that we discover asynchronously.
     * @param  isInitiator specifies whether we are the initiating party in this
     * call and hence must be the controlling ICE agent.
     *
     * @throws OperationFailedException if we fail to allocate a port number.
     */
Starts transport candidate harvest. This method should complete rapidly
and, in case of lengthy procedures like STUN/TURN/UPnP candidate harvests
are necessary, they should be executed in a separate thread. Candidate
harvest would then need to be concluded in the
#wrapupCandidateHarvest() method which would be called once we
absolutely need the candidates.

@param trickleCallback the callback that will be taking care of
candidates that we discover asynchronously.
@param  isInitiator specifies whether we are the initiating party in this
call and hence must be the controlling ICE agent.

@throws OperationFailedException if we fail to allocate a port number.
Starts transport candidate harvest . This method should complete rapidly and in case of lengthy procedures like STUN / TURN / UPnP candidate harvests are necessary they should be executed in a separate thread . Candidate harvest would then need to be concluded in the #wrapupCandidateHarvest () method which would be called once we absolutely need the candidates . @param trickleCallback the callback that will be taking care of candidates that we discover asynchronously . @param isInitiator specifies whether we are the initiating party in this call and hence must be the controlling ICE agent . @throws OperationFailedException if we fail to allocate a port number .
public void startCandidateHarvest( SessionDescription theirOffer,
                                       SessionDescription ourAnswer,
                                       Object  trickleCallback,
                                      boolean isInitiator)
        throws OperationFailedException
    {
        iceAgent = createIceAgent();
        iceAgent.setControlling(false);
    }
public void startCandidateHarvest ( SessionDescription theirOffer , SessionDescription ourAnswer , Object trickleCallback , boolean isInitiator ) throws OperationFailedException { iceAgent = createIceAgent ( ) ; iceAgent . setControlling ( false ) ; }
Starts transport candidate harvest.
Starts transport candidate harvest .