public void initialize(String pathName, boolean prettyEncoding) { if (!initialized) { try { System.setProperty("gov.nist.core.STRIP_ADDR_SCOPES", "true"); sipFactory = SipFactory.getInstance(); sipFactory.setPathName(pathName); addressFactory = sipFactory.createAddressFactory(); headerFactory = sipFactory.createHeaderFactory(); if(prettyEncoding) { ((HeaderFactoryImpl)headerFactory).setPrettyEncoding(prettyEncoding); } messageFactory = sipFactory.createMessageFactory(); initialized = true; } catch (PeerUnavailableException ex) { logger.error("Could not instantiate factories -- exitting", ex); throw new IllegalArgumentException("Cannot instantiate factories ", ex); } } }
public SipConfiguration() { sipFactory = SipFactory.getInstance(); sipFactory.setPathName(IMPLEMENTATION); }
public MobicentsDNSResolver(DNSServerLocator dnsServerLocator) { this.dnsServerLocator = dnsServerLocator; try { createAddressFactory = SipFactory.getInstance().createAddressFactory(); } catch (Exception e) { logger.warn("Error getting address factory", e); } }
public void updateDialog(HASipDialog haSipDialog, Map<String, Object> dialogMetaData, Object dialogAppData) throws SipCacheException { if(dialogMetaData != null) { final long currentVersion = haSipDialog.getVersion(); final Long cacheVersion = ((Long)dialogMetaData.get(AbstractHASipDialog.VERSION)); if(cacheVersion != null && currentVersion < cacheVersion.longValue()) { if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("HA SIP Dialog " + haSipDialog + " with dialogId " + haSipDialog.getDialogIdToReplicate() + " is older " + currentVersion + " than the one in the cache " + cacheVersion + " updating it"); } try { final String lastResponseStringified = (String) dialogMetaData.get(AbstractHASipDialog.LAST_RESPONSE); final SIPResponse lastResponse = (SIPResponse) SipFactory.getInstance().createMessageFactory().createResponse(lastResponseStringified); haSipDialog.setLastResponse(lastResponse); updateDialogMetaData(dialogMetaData, dialogAppData, haSipDialog, false); } catch (PeerUnavailableException e) { throw new SipCacheException("A problem occured while retrieving the following dialog " + haSipDialog.getDialogIdToReplicate() + " from the TreeCache", e); } catch (ParseException e) { throw new SipCacheException("A problem occured while retrieving the following dialog " + haSipDialog.getDialogIdToReplicate() + " from the TreeCache", e); } } else { if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("HA SIP Dialog " + haSipDialog + " with dialogId " + haSipDialog.getDialogIdToReplicate() + " is not older " + currentVersion + " than the one in the cache " + cacheVersion + ", not updating it"); } } } }
/** * Update the haSipDialog passed in param with the dialogMetaData and app meta data * @param dialogMetaData * @param dialogAppData * @param haSipDialog * @throws ParseException * @throws PeerUnavailableException */ private void updateDialogMetaData(Map<String, Object> dialogMetaData, Object dialogAppData, HASipDialog haSipDialog, boolean recreation) throws ParseException, PeerUnavailableException { haSipDialog.setMetaDataToReplicate(dialogMetaData, recreation); haSipDialog.setApplicationDataToReplicate(dialogAppData); final String contactStringified = (String) dialogMetaData.get(AbstractHASipDialog.CONTACT_HEADER); if(contactStringified != null) { Address contactAddress = SipFactory.getInstance().createAddressFactory().createAddress(contactStringified); ContactHeader contactHeader = SipFactory.getInstance().createHeaderFactory().createContactHeader(contactAddress); haSipDialog.setContactHeader(contactHeader); } }
public void setHeaderInternal(String name, String value, boolean bypassSystemHeaderCheck) { if(name == null) { throw new NullPointerException ("name parameter is null"); } if(value == null) { throw new NullPointerException ("value parameter is null"); } if(!bypassSystemHeaderCheck && isSystemHeader(getModifiableRule(name))) { throw new IllegalArgumentException(name + " is a system header !"); } try { Header header = SipFactory.getInstance().createHeaderFactory() .createHeader(name, value); this.message.setHeader(header); } catch (Exception e) { throw new IllegalArgumentException("Error creating header!", e); } }
@SuppressWarnings("unchecked") private void createFactoriesAndHeaders(Map<String, Object> parameters, SipComponent component) throws Exception { headerFactory = sipFactory.createHeaderFactory(); addressFactory = sipFactory.createAddressFactory(); setMessageFactory(sipFactory.createMessageFactory());
sipStack = sipApplicationDispatcher.getSipFactory().getJainSipFactory().createSipStack(sipStackProperties); LoadBalancerHeartBeatingService loadBalancerHeartBeatingService = null; if(sipStack instanceof ClusteredSipStack) {
SipFactory.getInstance().resetFactory();
public void updateDialog(HASipDialog haSipDialog, Map<String, Object> dialogMetaData, Object dialogAppData) throws SipCacheException { if(dialogMetaData != null) { final long currentVersion = haSipDialog.getVersion(); final Long cacheVersion = ((Long)dialogMetaData.get(AbstractHASipDialog.VERSION)); if(cacheVersion != null && currentVersion < cacheVersion.longValue()) { if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("HA SIP Dialog " + haSipDialog + " with dialogId " + haSipDialog.getDialogIdToReplicate() + " is older " + currentVersion + " than the one in the cache " + cacheVersion + " updating it"); } try { final String lastResponseStringified = (String) dialogMetaData.get(AbstractHASipDialog.LAST_RESPONSE); final SIPResponse lastResponse = (SIPResponse) SipFactory.getInstance().createMessageFactory().createResponse(lastResponseStringified); haSipDialog.setLastResponse(lastResponse); updateDialogMetaData(dialogMetaData, dialogAppData, haSipDialog, false); } catch (PeerUnavailableException e) { throw new SipCacheException("A problem occured while retrieving the following dialog " + haSipDialog.getDialogIdToReplicate() + " from the TreeCache", e); } catch (ParseException e) { throw new SipCacheException("A problem occured while retrieving the following dialog " + haSipDialog.getDialogIdToReplicate() + " from the TreeCache", e); } } else { if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("HA SIP Dialog " + haSipDialog + " with dialogId " + haSipDialog.getDialogIdToReplicate() + " is not older " + currentVersion + " than the one in the cache " + cacheVersion + ", not updating it"); } } } }
/** * Update the haSipDialog passed in param with the dialogMetaData and app meta data * @param dialogMetaData * @param dialogAppData * @param haSipDialog * @throws ParseException * @throws PeerUnavailableException */ private void updateDialogMetaData(Map<String, Object> dialogMetaData, Object dialogAppData, HASipDialog haSipDialog, boolean recreation) throws ParseException, PeerUnavailableException { haSipDialog.setMetaDataToReplicate(dialogMetaData, recreation); haSipDialog.setApplicationDataToReplicate(dialogAppData); final String contactStringified = (String) dialogMetaData.get(AbstractHASipDialog.CONTACT_HEADER); if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("contactStringified " + contactStringified); } if(contactStringified != null) { Address contactAddress = SipFactory.getInstance().createAddressFactory().createAddress(contactStringified); ContactHeader contactHeader = SipFactory.getInstance().createHeaderFactory().createContactHeader(contactAddress); if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("contactHeader " + contactHeader); logger.logDebug("contactURI " + contactHeader.getAddress().getURI()); } haSipDialog.setContactHeader(contactHeader); } }
Header header = SipFactory.getInstance().createHeaderFactory().createHeader(nameToAdd, value); this.message.setHeader(header); } else { List<Header> headers = SipFactory.getInstance().createHeaderFactory() .createHeaders(name + ":" + value); for (Header header : headers) { Header header = SipFactory.getInstance().createHeaderFactory() .createHeader(name, value); this.message.addLast(header);
throw new PeerUnavailableException(errmsg, e); loadBalancerElector.setAddressFactory(SipFactory.getInstance().createAddressFactory()); loadBalancerElector.setStackLogger(getStackLogger()); loadBalancerElector.setService(loadBalancerHeartBeatingService);
sipStack = sipApplicationDispatcher.getSipFactory().getJainSipFactory().createSipStack(sipStackProperties);
public static void initialize(String pathName, boolean prettyEncoding) { if (!initialized) { try { System.setProperty("gov.nist.core.STRIP_ADDR_SCOPES", "true"); sipFactory = SipFactory.getInstance(); sipFactory.setPathName(pathName); addressFactory = sipFactory.createAddressFactory(); headerFactory = sipFactory.createHeaderFactory(); if(prettyEncoding) { ((HeaderFactoryImpl)headerFactory).setPrettyEncoding(prettyEncoding); } messageFactory = sipFactory.createMessageFactory(); initialized = true; } catch (PeerUnavailableException ex) { logger.error("Could not instantiate factories -- exitting", ex); throw new IllegalArgumentException("Cannot instantiate factories ", ex); } } } }
public void setMetaDataToReplicate(Map<String, Object> transactionMetaData, boolean recreation) throws PeerUnavailableException, ParseException { String originalRequestString = (String) transactionMetaData.get(ORIGINAL_REQUEST); if(originalRequestString != null) { final SIPRequest origRequest = (SIPRequest) SipFactory.getInstance().createMessageFactory().createRequest(originalRequestString); setOriginalRequest(origRequest); if (logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug(transactionId + " : original Request " + originalRequest); } } String dialogId = (String) transactionMetaData.get(DIALOG_ID); if(dialogId != null) { SIPDialog sipDialog = sipStack.getDialog(dialogId); if(sipDialog != null) { setDialog(sipDialog, dialogId); sipDialog.addTransaction(this); } if (logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug(transactionId + " : dialog Id " + dialogId + " dialog " + sipDialog); } } Integer state = (Integer) transactionMetaData.get(CURRENT_STATE); if(state != null && super.getState() == null) { setState(state); if (logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug(transactionId + " : state " + getState()); } } }
/** * Update the haSipDialog passed in param with the dialogMetaData and app meta data * @param dialogMetaData * @param dialogAppData * @param haSipDialog * @throws ParseException * @throws PeerUnavailableException */ private void updateDialogMetaData(Map<String, Object> dialogMetaData, Object dialogAppData, HASipDialog haSipDialog, boolean recreation) throws ParseException, PeerUnavailableException { haSipDialog.setMetaDataToReplicate(dialogMetaData, recreation); haSipDialog.setApplicationDataToReplicate(dialogAppData); final String contactStringified = (String) dialogMetaData.get(AbstractHASipDialog.CONTACT_HEADER); if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("contactStringified " + contactStringified); } if(contactStringified != null) { Address contactAddress = SipFactory.getInstance().createAddressFactory().createAddress(contactStringified); ContactHeader contactHeader = SipFactory.getInstance().createHeaderFactory().createContactHeader(contactAddress); if(logger.isLoggingEnabled(StackLogger.TRACE_DEBUG)) { logger.logDebug("contactHeader " + contactHeader); logger.logDebug("contactURI " + contactHeader.getAddress().getURI()); } haSipDialog.setContactHeader(contactHeader); } }
List<Header> headers = SipFactory.getInstance().createHeaderFactory() .createHeaders(name + ":" + value); for (Header header : headers) { Header header = SipFactory.getInstance().createHeaderFactory() .createHeader(name, value); this.message.setHeader(header);
sipStack = sipApplicationDispatcher.getSipFactory().getJainSipFactory().createSipStack(sipStackProperties); LoadBalancerHeartBeatingService loadBalancerHeartBeatingService = null; if (sipStack instanceof ClusteredSipStack) {
public static void initialize(String pathName, boolean prettyEncoding) { if (!initialized) { try { System.setProperty("gov.nist.core.STRIP_ADDR_SCOPES", "true"); sipFactory = SipFactory.getInstance(); sipFactory.setPathName(pathName); addressFactory = sipFactory.createAddressFactory(); headerFactory = sipFactory.createHeaderFactory(); if (prettyEncoding) { ((HeaderFactoryImpl) headerFactory).setPrettyEncoding(prettyEncoding); } messageFactory = sipFactory.createMessageFactory(); initialized = true; } catch (PeerUnavailableException ex) { logger.error("Could not instantiate factories -- exitting", ex); throw new IllegalArgumentException("Cannot instantiate factories ", ex); } } } }