Commit 65559df0 authored by guus's avatar guus

* Updating 'sip' plugin to make use of SLF4J instead of custom logging (OF-53).

* Applied java generics.
* Removed unused code.

git-svn-id: http://svn.igniterealtime.org/svn/repos/openfire/trunk@11448 b35dd754-fafc-0310-a699-88a17e54d16e
parent 74c0d766
...@@ -44,6 +44,14 @@ ...@@ -44,6 +44,14 @@
SIP Plugin Changelog SIP Plugin Changelog
</h1> </h1>
<p><b>1.0.6</b> -- December 2, 2009</p>
<ul>
<li>Now requires Openfire 3.6.5.</li>
<li>Applied Java generics.</li>
<li>Removed unused code.</li>
<li>[<a href='http://www.igniterealtime.org/issues/browse/OF-53'>OF-53</a>] - Replace custom logging implementation with a third party library.</li>
</ul>
<p><b>1.0.5</b> -- March 11, 2008</p> <p><b>1.0.5</b> -- March 11, 2008</p>
<ul> <ul>
......
...@@ -5,11 +5,11 @@ ...@@ -5,11 +5,11 @@
<name>SIP Phone Plugin</name> <name>SIP Phone Plugin</name>
<description>Provides support for SIP account management</description> <description>Provides support for SIP account management</description>
<author>Ignite Realtime</author> <author>Ignite Realtime</author>
<version>1.0.5</version> <version>1.0.6</version>
<date>11/14/2008</date> <date>12/2/2009</date>
<databaseKey>sip</databaseKey> <databaseKey>sip</databaseKey>
<databaseVersion>2</databaseVersion> <databaseVersion>2</databaseVersion>
<minServerVersion>3.6.0</minServerVersion> <minServerVersion>3.6.5</minServerVersion>
<adminconsole> <adminconsole>
<tab id="tab-server"> <tab id="tab-server">
......
...@@ -32,6 +32,8 @@ import org.jivesoftware.util.JiveGlobals; ...@@ -32,6 +32,8 @@ import org.jivesoftware.util.JiveGlobals;
import org.jivesoftware.util.Log; import org.jivesoftware.util.Log;
import org.jivesoftware.util.PropertyEventDispatcher; import org.jivesoftware.util.PropertyEventDispatcher;
import org.jivesoftware.util.PropertyEventListener; import org.jivesoftware.util.PropertyEventListener;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.xmpp.component.ComponentManager; import org.xmpp.component.ComponentManager;
import org.xmpp.component.ComponentManagerFactory; import org.xmpp.component.ComponentManagerFactory;
...@@ -42,6 +44,8 @@ import org.xmpp.component.ComponentManagerFactory; ...@@ -42,6 +44,8 @@ import org.xmpp.component.ComponentManagerFactory;
*/ */
public class SipManager implements Plugin, PropertyEventListener { public class SipManager implements Plugin, PropertyEventListener {
private static final Logger Log = LoggerFactory.getLogger(SipManager.class);
private String serviceName; private String serviceName;
private ComponentManager componentManager; private ComponentManager componentManager;
...@@ -71,13 +75,13 @@ public class SipManager implements Plugin, PropertyEventListener { ...@@ -71,13 +75,13 @@ public class SipManager implements Plugin, PropertyEventListener {
componentManager.addComponent(serviceName, sipComponent); componentManager.addComponent(serviceName, sipComponent);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
componentManager.addComponent(LogComponent.NAME, logComponent); componentManager.addComponent(LogComponent.NAME, logComponent);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
PropertyEventDispatcher.addListener(this); PropertyEventDispatcher.addListener(this);
...@@ -91,12 +95,12 @@ public class SipManager implements Plugin, PropertyEventListener { ...@@ -91,12 +95,12 @@ public class SipManager implements Plugin, PropertyEventListener {
try { try {
componentManager.removeComponent(serviceName); componentManager.removeComponent(serviceName);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
componentManager.removeComponent(LogComponent.NAME); componentManager.removeComponent(LogComponent.NAME);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
sipComponent = null; sipComponent = null;
...@@ -139,12 +143,12 @@ public class SipManager implements Plugin, PropertyEventListener { ...@@ -139,12 +143,12 @@ public class SipManager implements Plugin, PropertyEventListener {
try { try {
componentManager.removeComponent(this.serviceName); componentManager.removeComponent(this.serviceName);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
componentManager.addComponent(serviceName, sipComponent); componentManager.addComponent(serviceName, sipComponent);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
this.serviceName = serviceName; this.serviceName = serviceName;
} }
......
...@@ -20,9 +20,6 @@ ...@@ -20,9 +20,6 @@
package org.jivesoftware.openfire.sip.calllog; package org.jivesoftware.openfire.sip.calllog;
import org.jivesoftware.database.DbConnectionManager;
import org.jivesoftware.util.Log;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
...@@ -32,6 +29,10 @@ import java.util.Collection; ...@@ -32,6 +29,10 @@ import java.util.Collection;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import org.jivesoftware.database.DbConnectionManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/** /**
* Database persistence for CallLog class and database methods for call log store * Database persistence for CallLog class and database methods for call log store
* *
...@@ -39,6 +40,8 @@ import java.util.List; ...@@ -39,6 +40,8 @@ import java.util.List;
*/ */
public class CallLogDAO { public class CallLogDAO {
private static final Logger Log = LoggerFactory.getLogger(CallLogDAO.class);
final static CallFilter emptyFilter = new CallFilter("", new ArrayList<String>()); final static CallFilter emptyFilter = new CallFilter("", new ArrayList<String>());
/** /**
...@@ -82,21 +85,21 @@ public class CallLogDAO { ...@@ -82,21 +85,21 @@ public class CallLogDAO {
} }
rs.close(); rs.close();
} catch (SQLException e) { } catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} finally { } finally {
try { try {
if (pstmt != null) { if (pstmt != null) {
pstmt.close(); pstmt.close();
} }
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
if (con != null) { if (con != null) {
con.close(); con.close();
} }
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
return calls; return calls;
...@@ -226,21 +229,21 @@ public class CallLogDAO { ...@@ -226,21 +229,21 @@ public class CallLogDAO {
} }
rs.close(); rs.close();
} catch (SQLException e) { } catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} finally { } finally {
try { try {
if (pstmt != null) { if (pstmt != null) {
pstmt.close(); pstmt.close();
} }
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
if (con != null) { if (con != null) {
con.close(); con.close();
} }
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
return count; return count;
......
...@@ -21,7 +21,8 @@ ...@@ -21,7 +21,8 @@
package org.jivesoftware.openfire.sip.log; package org.jivesoftware.openfire.sip.log;
import org.dom4j.Element; import org.dom4j.Element;
import org.jivesoftware.util.Log; import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.xmpp.component.Component; import org.xmpp.component.Component;
import org.xmpp.component.ComponentManager; import org.xmpp.component.ComponentManager;
import org.xmpp.packet.IQ; import org.xmpp.packet.IQ;
...@@ -36,6 +37,8 @@ import org.xmpp.packet.Packet; ...@@ -36,6 +37,8 @@ import org.xmpp.packet.Packet;
*/ */
public class LogComponent implements Component{ public class LogComponent implements Component{
private static final Logger Log = LoggerFactory.getLogger(LogComponent.class);
ComponentManager componentManager = null; ComponentManager componentManager = null;
private LogListener logListener = null; private LogListener logListener = null;
...@@ -109,7 +112,7 @@ public class LogComponent implements Component{ ...@@ -109,7 +112,7 @@ public class LogComponent implements Component{
try { try {
componentManager.sendPacket(this, reply); componentManager.sendPacket(this, reply);
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} // Other Methods } // Other Methods
......
...@@ -28,6 +28,8 @@ import org.jivesoftware.openfire.sip.calllog.CallLog; ...@@ -28,6 +28,8 @@ import org.jivesoftware.openfire.sip.calllog.CallLog;
import org.jivesoftware.openfire.sip.calllog.CallLogDAO; import org.jivesoftware.openfire.sip.calllog.CallLogDAO;
import org.jivesoftware.openfire.sip.calllog.CallLogExtension; import org.jivesoftware.openfire.sip.calllog.CallLogExtension;
import org.jivesoftware.util.Log; import org.jivesoftware.util.Log;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.xmpp.component.ComponentManager; import org.xmpp.component.ComponentManager;
import org.xmpp.packet.IQ; import org.xmpp.packet.IQ;
...@@ -39,6 +41,8 @@ import org.xmpp.packet.IQ; ...@@ -39,6 +41,8 @@ import org.xmpp.packet.IQ;
*/ */
public class LogListenerImpl implements LogListener { public class LogListenerImpl implements LogListener {
private static final Logger Log = LoggerFactory.getLogger(LogListenerImpl.class);
ComponentManager componentManager = null; ComponentManager componentManager = null;
public LogListenerImpl(ComponentManager componentmanager) { public LogListenerImpl(ComponentManager componentmanager) {
...@@ -74,7 +78,7 @@ public class LogListenerImpl implements LogListener { ...@@ -74,7 +78,7 @@ public class LogListenerImpl implements LogListener {
try { try {
CallLogDAO.insert(callLog); CallLogDAO.insert(callLog);
} catch (SQLException e) { } catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
} }
......
...@@ -20,9 +20,6 @@ ...@@ -20,9 +20,6 @@
package org.jivesoftware.openfire.sip.sipaccount; package org.jivesoftware.openfire.sip.sipaccount;
import org.jivesoftware.database.DbConnectionManager;
import org.jivesoftware.util.Log;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
...@@ -31,6 +28,10 @@ import java.util.ArrayList; ...@@ -31,6 +28,10 @@ import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import org.jivesoftware.database.DbConnectionManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/** /**
* *
* Database persistence for SipAccount class and database methods for stored SIP Accounts * Database persistence for SipAccount class and database methods for stored SIP Accounts
...@@ -39,6 +40,8 @@ import java.util.List; ...@@ -39,6 +40,8 @@ import java.util.List;
*/ */
public class SipAccountDAO { public class SipAccountDAO {
private static final Logger Log = LoggerFactory.getLogger(SipAccountDAO.class);
public static SipAccount getAccountByUser(String username) { public static SipAccount getAccountByUser(String username) {
String sql = "SELECT username, sipusername, sipauthuser, sipdisplayname, sippassword, sipserver, enabled, " + String sql = "SELECT username, sipusername, sipauthuser, sipdisplayname, sippassword, sipserver, enabled, " +
...@@ -229,21 +232,21 @@ public class SipAccountDAO { ...@@ -229,21 +232,21 @@ public class SipAccountDAO {
} }
rs.close(); rs.close();
} catch (SQLException e) { } catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} finally { } finally {
try { try {
if (pstmt != null) { if (pstmt != null) {
pstmt.close(); pstmt.close();
} }
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
if (con != null) { if (con != null) {
con.close(); con.close();
} }
} catch (Exception e) { } catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
return sipAccounts; return sipAccounts;
...@@ -266,13 +269,13 @@ public class SipAccountDAO { ...@@ -266,13 +269,13 @@ public class SipAccountDAO {
rs.close(); rs.close();
} }
catch (SQLException e) { catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
finally { finally {
try { if (pstmt != null) { pstmt.close(); } } try { if (pstmt != null) { pstmt.close(); } }
catch (Exception e) { Log.error(e); } catch (Exception e) { Log.error(e.getMessage(), e); }
try { if (con != null) { con.close(); } } try { if (con != null) { con.close(); } }
catch (Exception e) { Log.error(e); } catch (Exception e) { Log.error(e.getMessage(), e); }
} }
return count; return count;
} }
......
...@@ -26,7 +26,8 @@ import org.dom4j.Element; ...@@ -26,7 +26,8 @@ import org.dom4j.Element;
import org.jivesoftware.openfire.event.SessionEventDispatcher; import org.jivesoftware.openfire.event.SessionEventDispatcher;
import org.jivesoftware.openfire.event.SessionEventListener; import org.jivesoftware.openfire.event.SessionEventListener;
import org.jivesoftware.openfire.session.Session; import org.jivesoftware.openfire.session.Session;
import org.jivesoftware.util.Log; import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.xmpp.component.Component; import org.xmpp.component.Component;
import org.xmpp.component.ComponentManager; import org.xmpp.component.ComponentManager;
import org.xmpp.component.ComponentManagerFactory; import org.xmpp.component.ComponentManagerFactory;
...@@ -43,6 +44,8 @@ import org.xmpp.packet.PacketError; ...@@ -43,6 +44,8 @@ import org.xmpp.packet.PacketError;
*/ */
public class SipComponent implements Component, SessionEventListener { public class SipComponent implements Component, SessionEventListener {
private static final Logger Log = LoggerFactory.getLogger(SipComponent.class);
ComponentManager componentManager = null; ComponentManager componentManager = null;
/** /**
...@@ -140,7 +143,7 @@ public class SipComponent implements Component, SessionEventListener { ...@@ -140,7 +143,7 @@ public class SipComponent implements Component, SessionEventListener {
SipAccountDAO.update(sipAccount); SipAccountDAO.update(sipAccount);
} }
catch (SQLException e) { catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
} }
...@@ -156,7 +159,7 @@ public class SipComponent implements Component, SessionEventListener { ...@@ -156,7 +159,7 @@ public class SipComponent implements Component, SessionEventListener {
componentManager.sendPacket(this, reply); componentManager.sendPacket(this, reply);
} }
catch (Exception e) { catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
Log.debug("PACKET SENT: " + reply.toXML()); Log.debug("PACKET SENT: " + reply.toXML());
} // Other Methods } // Other Methods
...@@ -200,7 +203,7 @@ public class SipComponent implements Component, SessionEventListener { ...@@ -200,7 +203,7 @@ public class SipComponent implements Component, SessionEventListener {
SipAccountDAO.update(sipAccount); SipAccountDAO.update(sipAccount);
} }
catch (SQLException e) { catch (SQLException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
......
...@@ -35,7 +35,7 @@ import java.util.Hashtable; ...@@ -35,7 +35,7 @@ import java.util.Hashtable;
class CredentialsCache { class CredentialsCache {
// Contains call->realms mappings // Contains call->realms mappings
private Hashtable authenticatedRealms = new Hashtable(); private Hashtable<String, CredentialsCacheEntry> authenticatedRealms = new Hashtable<String, CredentialsCacheEntry>();
/** /**
* Cache credentials for the specified call and realm * Cache credentials for the specified call and realm
......
...@@ -40,7 +40,7 @@ class CredentialsCacheEntry { ...@@ -40,7 +40,7 @@ class CredentialsCacheEntry {
* not reached this class). The transactionHistory's elements are Strings * not reached this class). The transactionHistory's elements are Strings
* corresponding to branch ids. * corresponding to branch ids.
*/ */
private Vector transactionHistory = new Vector(); private Vector<String> transactionHistory = new Vector<String>();
/** /**
* Adds the specified branch id to the transaction history list. * Adds the specified branch id to the transaction history list.
......
...@@ -53,7 +53,7 @@ class RegisterProcessing { ...@@ -53,7 +53,7 @@ class RegisterProcessing {
private Timer reRegisterTimer = null; private Timer reRegisterTimer = null;
private int keepAlivePort = 0; //private int keepAlivePort = 0;
private Timer keepAliveTimer = null; private Timer keepAliveTimer = null;
...@@ -242,7 +242,7 @@ class RegisterProcessing { ...@@ -242,7 +242,7 @@ class RegisterProcessing {
} }
// User Agent Header // User Agent Header
UserAgentHeader uaHeader = null; UserAgentHeader uaHeader = null;
ArrayList userAgentList = new ArrayList(); ArrayList<String> userAgentList = new ArrayList<String>();
userAgentList.add(SIPConfig.getStackName()); userAgentList.add(SIPConfig.getStackName());
try { try {
......
...@@ -39,7 +39,7 @@ import java.util.List; ...@@ -39,7 +39,7 @@ import java.util.List;
public class SIPTest implements CommunicationsListener { public class SIPTest implements CommunicationsListener {
private SipAccount sipAccount; private SipAccount sipAccount;
private InetAddress localAddress; //private InetAddress localAddress;
private Result result = null; private Result result = null;
private SipManager sipManager = null; private SipManager sipManager = null;
private List<TestListener> listeners = new ArrayList<TestListener>(); private List<TestListener> listeners = new ArrayList<TestListener>();
...@@ -52,7 +52,7 @@ public class SIPTest implements CommunicationsListener { ...@@ -52,7 +52,7 @@ public class SIPTest implements CommunicationsListener {
public SIPTest(InetAddress localAddress, SipAccount sipAccount) { public SIPTest(InetAddress localAddress, SipAccount sipAccount) {
this.sipAccount = sipAccount; this.sipAccount = sipAccount;
this.localAddress = localAddress; //this.localAddress = localAddress;
sipManager = new SipManager(localAddress); sipManager = new SipManager(localAddress);
} }
...@@ -93,25 +93,25 @@ public class SIPTest implements CommunicationsListener { ...@@ -93,25 +93,25 @@ public class SIPTest implements CommunicationsListener {
sipManager.startRegisterProcess(sipAccount.getSipUsername(), sipAccount.getAuthUsername(), sipAccount.getPassword()); sipManager.startRegisterProcess(sipAccount.getSipUsername(), sipAccount.getAuthUsername(), sipAccount.getPassword());
} catch (CommunicationsException e) { } catch (CommunicationsException e) {
setResult(Result.NetworkError); setResult(Result.NetworkError);
Log.error(e); Log.error(e.getMessage(), e);
} }
try { try {
Thread.sleep(timeout); Thread.sleep(timeout);
} catch (InterruptedException e) { } catch (InterruptedException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
if (getResult().equals(Result.Trying)) setResult(Result.Timeout); if (getResult().equals(Result.Trying)) setResult(Result.Timeout);
} catch (CommunicationsException e) { } catch (CommunicationsException e) {
setResult(Result.NetworkError); setResult(Result.NetworkError);
Log.error(e); Log.error(e.getMessage(), e);
} finally { } finally {
try { try {
sipManager.stop(); sipManager.stop();
} catch (CommunicationsException e) { } catch (CommunicationsException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
} }
...@@ -135,7 +135,7 @@ public class SIPTest implements CommunicationsListener { ...@@ -135,7 +135,7 @@ public class SIPTest implements CommunicationsListener {
try { try {
sipManager.unregister(); sipManager.unregister();
} catch (CommunicationsException e) { } catch (CommunicationsException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
...@@ -161,7 +161,7 @@ public class SIPTest implements CommunicationsListener { ...@@ -161,7 +161,7 @@ public class SIPTest implements CommunicationsListener {
sipManager.stop(); sipManager.stop();
Log.debug("Stopped"); Log.debug("Stopped");
} catch (CommunicationsException e) { } catch (CommunicationsException e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
......
...@@ -82,13 +82,13 @@ public class SipCommRouter implements Router { ...@@ -82,13 +82,13 @@ public class SipCommRouter implements Router {
* *
* @param sipRequest is the sip request to route. * @param sipRequest is the sip request to route.
*/ */
public ListIterator getNextHops(Request sipRequest) { public ListIterator<Hop> getNextHops(Request sipRequest) {
URI requestURI = sipRequest.getRequestURI(); URI requestURI = sipRequest.getRequestURI();
if (requestURI == null) { if (requestURI == null) {
throw new IllegalArgumentException("Bad message: Null requestURI"); throw new IllegalArgumentException("Bad message: Null requestURI");
} }
LinkedList hops = new LinkedList(); LinkedList<Hop> hops = new LinkedList<Hop>();
if (outboundProxy != null) { if (outboundProxy != null) {
hops.add(outboundProxy); hops.add(outboundProxy);
} }
......
...@@ -77,7 +77,7 @@ public class SipManager implements SipListener { ...@@ -77,7 +77,7 @@ public class SipManager implements SipListener {
protected int registrarPort = -1; protected int registrarPort = -1;
protected int registrationsExpiration = -1; protected int registrationsExpiration = -1;
protected String registrarTransport = null; protected String registrarTransport = null;
private int registerRetries = 0; //private int registerRetries = 0;
protected String stackAddress = null; protected String stackAddress = null;
protected String stackName = "JiveSIP"; protected String stackName = "JiveSIP";
protected FromHeader fromHeader = null; protected FromHeader fromHeader = null;
...@@ -102,7 +102,7 @@ public class SipManager implements SipListener { ...@@ -102,7 +102,7 @@ public class SipManager implements SipListener {
this.localAddress = localAddress; this.localAddress = localAddress;
registerProcessing = new RegisterProcessing(this); registerProcessing = new RegisterProcessing(this);
sipSecurityManager = new SipSecurityManager(); sipSecurityManager = new SipSecurityManager();
registerRetries = 0; //registerRetries = 0;
} }
/** /**
...@@ -258,8 +258,8 @@ public class SipManager implements SipListener { ...@@ -258,8 +258,8 @@ public class SipManager implements SipListener {
if (sipStack != null) { if (sipStack != null) {
for (Iterator it = sipStack.getSipProviders(); it.hasNext();) { for (Iterator<SipProvider> it = sipStack.getSipProviders(); it.hasNext();) {
SipProvider element = (SipProvider) it.next(); SipProvider element = it.next();
try { try {
sipStack.deleteSipProvider(element); sipStack.deleteSipProvider(element);
} }
...@@ -580,7 +580,7 @@ public class SipManager implements SipListener { ...@@ -580,7 +580,7 @@ public class SipManager implements SipListener {
* @throws CommunicationsException if a ParseException is to occur while initializing the array * @throws CommunicationsException if a ParseException is to occur while initializing the array
* list. * list.
*/ */
public ArrayList getLocalViaHeaders() throws CommunicationsException { public ArrayList<ViaHeader> getLocalViaHeaders() throws CommunicationsException {
if (viaHeaders != null) { if (viaHeaders != null) {
return viaHeaders; return viaHeaders;
} }
...@@ -739,7 +739,7 @@ public class SipManager implements SipListener { ...@@ -739,7 +739,7 @@ public class SipManager implements SipListener {
} }
catch (Exception e) { catch (Exception e) {
Log.error(e); Log.error(e.getMessage(), e);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment