public void setOff(SipStack mySipStack) { /// System.out.println("=> BUNDLE: br.ufes.inf.ngn.televoto.client.logic | CLASS: LogicListener // | METOD: setOff ");//By Ju try { mySipProvider.removeSipListener(this); mySipProvider.removeListeningPoint(myListeningPoint); mySipStack.deleteListeningPoint(myListeningPoint); mySipStack.deleteSipProvider(mySipProvider); myListeningPoint = null; mySipProvider = null; mySipStack = null; // myRingTool=null; myTimer.cancel(); System.out.println("Finalizado..."); } catch (Exception e) { } }
public static void stopSipStack(SipStack sipStack, SipListener listener) { Iterator<SipProvider> sipProviderIterator = sipStack.getSipProviders(); try { while (sipProviderIterator.hasNext()) { SipProvider sipProvider = sipProviderIterator.next(); ListeningPoint[] listeningPoints = sipProvider.getListeningPoints(); for (ListeningPoint listeningPoint : listeningPoints) { sipProvider.removeListeningPoint(listeningPoint); sipStack.deleteListeningPoint(listeningPoint); listeningPoints = sipProvider.getListeningPoints(); } sipProvider.removeSipListener(listener); sipStack.deleteSipProvider(sipProvider); sipProviderIterator = sipStack.getSipProviders(); } } catch (Exception e) { throw new IllegalStateException("Cant remove the listening points or sip providers", e); } sipStack.stop(); sipStack = null; }