package javax.sip; import java.util.TooManyListenersException; import javax.sip.header.CallIdHeader; import javax.sip.message.Request; import javax.sip.message.Response; public interface SipProvider { /** * @deprecated * @see #addListeningPoint(ListeningPoint) */ void setListeningPoint(ListeningPoint listeningPoint) throws ObjectInUseException; void addListeningPoint(ListeningPoint listeningPoint) throws ObjectInUseException; void removeListeningPoint(ListeningPoint listeningPoint) throws ObjectInUseException; void removeListeningPoints(); /** * @deprecated * @see #getListeningPoints() */ ListeningPoint getListeningPoint(); ListeningPoint getListeningPoint(String transport); ListeningPoint[] getListeningPoints(); void addSipListener(SipListener sipListener) throws TooManyListenersException; void removeSipListener(SipListener sipListener); CallIdHeader getNewCallId(); ClientTransaction getNewClientTransaction(Request request) throws TransactionUnavailableException; ServerTransaction getNewServerTransaction(Request request) throws TransactionAlreadyExistsException, TransactionUnavailableException; Dialog getNewDialog(Transaction transaction) throws SipException; boolean isAutomaticDialogSupportEnabled(); void setAutomaticDialogSupportEnabled(boolean flag); SipStack getSipStack(); void sendRequest(Request request) throws SipException; void sendResponse(Response response) throws SipException; }