question: public void processInvite ( RequestEvent requestEvent , ServerTransaction serverTransaction ) { final Request request = requestEvent . getRequest ( ) ; final SipProvider sipProvider = ( SipProvider ) requestEvent . getSource ( ) ; ServerTransaction st = serverTransaction ; try { if ( st == null ) { try { st = sipProvider . getNewServerTransaction ( request ) ; } catch ( TransactionUnavailableException tae ) { tae . printStackTrace ( ) ; return ; } catch ( TransactionAlreadyExistsException taex ) { return ; } } final String toTag = "" + System . nanoTime ( ) ; Response response = messageFactory . createResponse ( Response . RINGING , request ) ; ToHeader toHeader = ( ToHeader ) response . getHeader ( ToHeader . NAME ) ; toHeader . setTag ( toTag ) ; st . sendResponse ( response ) ; response = messageFactory . createResponse ( Response . OK , request ) ; final Address address = addressFactory . createAddress ( "Shootme <sip:" + myAddress + ":" + myPort + ">" ) ; final ContactHeader contactHeader = headerFactory . createContactHeader ( address ) ; response . addHeader ( contactHeader ) ; toHeader = ( ToHeader ) response . getHeader ( ToHeader . NAME ) ; toHeader . setTag ( toTag ) ; st . sendResponse ( response ) ; } catch ( Exception ex ) { ex . printStackTrace ( ) ; } }
target:  Process the invite request.