Integer.toString(hashCode()));
riToTag = Integer.toString(hashCode()));
	protected void setUp() throws Exception {		try {			super.setUp();			tiInvite = createTiInviteRequest(null, null, null);			//Send an invite request			try {				eventCollector.collectRequestEvent(riSipProvider);				cliTran = tiSipProvider.getNewClientTransaction(tiInvite);				cliTran.sendRequest();			} catch (TooManyListenersException e) {				throw new TckInternalError(					"Failed to register a listener with the RI",					e);			} catch (SipException e) {				throw new TiUnexpectedError(					"Failed to send initial invite request",					e);			}			//Wait for the invite to arrive			waitForMessage();			RequestEvent inviteReqEvt =				eventCollector.extractCollectedRequestEvent();			if (inviteReqEvt == null || inviteReqEvt.getRequest() == null)				throw new TiUnexpectedError("The TI did not send the initial invite request");			riInvite = inviteReqEvt.getRequest();			//get the dialog			dialog = cliTran.getDialog();			//Send ringing to initialise dialog			//start listening for the response			try {				eventCollector.collectResponseEvent(tiSipProvider);			} catch (TooManyListenersException e) {				throw new TiUnexpectedError(					"Failed to register a SipListener with the TI.",					e);			}			Response ringing = null;			try {				ringing =					riMessageFactory.createResponse(						Response.RINGING,						inviteReqEvt.getRequest());				((ToHeader) ringing.getHeader(ToHeader.NAME)).setTag(					Integer.toString(hashCode()));                // BUG report from Ben Evans: 				// set contact header on dialog-creating response                ringing.setHeader(createRiContact());				riSipProvider.sendResponse(ringing);			} catch (Exception e) {				throw new TckInternalError(					"Failed to create and send a RINGING response",					e);			}			waitForMessage();			ResponseEvent ringingRespEvt =				eventCollector.extractCollectedResponseEvent();			if (ringingRespEvt == null || ringingRespEvt.getResponse() == null)				throw new TiUnexpectedError("The TI did not dispatch a RINGING response.");		} catch (Throwable exc) {			exc.printStackTrace();			fail(exc.getClass().getName() + ": " + exc.getMessage());		}		assertTrue(new Exception().getStackTrace()[0].toString(), true);	}