[reSIProcate] Purging expired registrations
    Daniel Pocock 
    daniel at readytechnology.co.uk
       
    Wed Jun 28 17:21:42 CDT 2006
    
    
  
I notice the following code in InMemoryRegistrationDatabase.cxx, 
getContacts() is similar, it appears that the aor and/or contacts are 
returned without checking for expiry. 
I am happy to write patches for InMemoryRegistrationDatabase to purge 
the expired registrations whenever the relevent aor is queried.
Furthermore, if a class implementing RegistrationPersistenceManager is 
modified to purge expired registrations in this way, will it need to 
initiate (possibly through the stack) some callback to the 
ServerRegistrationHandler?
bool
InMemoryRegistrationDatabase::aorIsRegistered(const Uri& aor)
{
  database_map_t::iterator i;
  Lock g(mDatabaseMutex);
  i = mDatabase.find(aor);
  if (i == mDatabase.end() || i->second == 0)
  {
    return false;
  }
  return true;
}
    
    
More information about the resiprocate-devel
mailing list