private void cancelExpirationTimer() { if(expirationTimerTask != null) { // http://code.google.com/p/mobicents/issues/detail?id=2322 : Race condition can occur so making sure the expiration timer task is not null sipContext.getSipApplicationSessionTimerService().cancel(expirationTimerTask); } if(expirationTimerTask != null) { // http://code.google.com/p/mobicents/issues/detail?id=2322 : expiration Timer task can be null after calling cancel above due to Race condition expirationTimerTask.setSipApplicationSession(null); expirationTimerTask = null; } }