public synchronized void addRoute(SIPRequest sipRequest) { if (sipStack.isLoggingEnabled()) { sipStack.logWriter.logDebug("setContact: dialogState: " + this + "state = " + this.getState()); } if (this.dialogState == CONFIRMED_STATE || this.dialogState == TERMINATED_STATE) { return; }  RecordRouteList rrlist = sipRequest.getRecordRouteHeaders();   if (rrlist != null) {
private void addRoute(RecordRouteList recordRouteList) { try { if (this.isClientDialog()) {    this.routeList = new RouteList();
	public synchronized void addRoute(SIPRequest sipRequest) {		if (sipStack.isLoggingEnabled()) {			sipStack.logWriter.logDebug("setContact: dialogState: " + this					+ "state = " + this.getState());		}		if (this.dialogState == CONFIRMED_STATE				|| this.dialogState == TERMINATED_STATE) {			return;		}		// Incoming Request has the route list		RecordRouteList rrlist = sipRequest.getRecordRouteHeaders();		// Add the route set from the incoming response in reverse		// order		if (rrlist != null) {			this.addRoute(rrlist);		} else {			// Set the rotue list to the last seen route list.			this.routeList = new RouteList();		}		// put the contact header from the incoming request into		// the route set.		ContactList contactList = sipRequest.getContactHeaders();		if (contactList != null) {			this.setRemoteTarget((ContactHeader) contactList.getFirst());		}	}