/// <summary>
 /// Updates the expiration time on the given session record
 /// </summary>
 /// <returns>An awaitable task.</returns>
 /// <param name="record">The record to update.</param>
 public virtual Task UpdateSessionExpirationAsync(SessionRecord record)
 {
     return(m_lock.LockedAsync(() =>
                               m_connection.Update <SessionRecord>(
                                   new { record.Expires },
                                   x => x.UserID == record.UserID &&
                                   x.Cookie == record.Cookie &&
                                   x.XSRFToken == record.XSRFToken
                                   )
                               ));
 }