public static void FinishSession(UserContext userContext) { using (RecipientCacheTransaction recipientCacheTransaction = new RecipientCacheTransaction("OWA.AutocompleteCache", userContext)) { AutoCompleteCache autoCompleteCache = AutoCompleteCache.TryGetCache(userContext); if (autoCompleteCache != null) { autoCompleteCache.FinishSession(new AutoCompleteCache(userContext, recipientCacheTransaction.Configuration), recipientCacheTransaction.Configuration); } } }
public static AutoCompleteCache TryGetCache(UserContext userContext, bool useInMemCache) { try { return(AutoCompleteCache.GetCache(userContext, useInMemCache)); } catch (Exception ex) { ExTraceGlobals.CoreCallTracer.TraceError <string, string>(0L, "Failed to get autocomplete cache from server. Error: {0}. Stack: {1}", ex.Message, ex.StackTrace); } return(null); }
private static AutoCompleteCache GetCache(UserContext userContext, bool useInMemCache) { if (userContext.AutoCompleteCache == null || !useInMemCache) { using (RecipientCacheTransaction recipientCacheTransaction = new RecipientCacheTransaction("OWA.AutocompleteCache", userContext)) { userContext.AutoCompleteCache = AutoCompleteCache.Load(userContext, recipientCacheTransaction.Configuration); if (!userContext.IsAutoCompleteSessionStarted) { userContext.AutoCompleteCache.StartCacheSession(); userContext.IsAutoCompleteSessionStarted = true; } } } return(userContext.AutoCompleteCache); }
public override void Commit(bool mergeBeforeCommit) { if (base.IsDirty) { using (RecipientCacheTransaction recipientCacheTransaction = new RecipientCacheTransaction("OWA.AutocompleteCache", base.UserContext)) { AutoCompleteCache backEndRecipientCache = null; if (mergeBeforeCommit) { backEndRecipientCache = new AutoCompleteCache(base.UserContext, recipientCacheTransaction.Configuration); } this.Commit(backEndRecipientCache, recipientCacheTransaction.Configuration); } } if (base.UserContext.RoomsCache != null && base.UserContext.RoomsCache.IsDirty) { base.UserContext.RoomsCache.Commit(true); } }
public static void UpdateAutoCompleteCacheFromRecipientInfoList(RecipientInfoAC[] entries, UserContext userContext) { if (entries == null) { throw new ArgumentNullException("entries"); } if (userContext == null) { throw new ArgumentNullException("userContext"); } AutoCompleteCache autoCompleteCache = AutoCompleteCache.TryGetCache(userContext); if (autoCompleteCache != null) { for (int i = 0; i < entries.Length; i++) { RecipientInfoCacheEntry recipientInfoCacheEntry = AutoCompleteCacheEntry.ParseClientEntry(entries[i]); if (recipientInfoCacheEntry != null) { autoCompleteCache.AddEntry(recipientInfoCacheEntry); } } } }
public static AutoCompleteCache TryGetCache(UserContext userContext) { return(AutoCompleteCache.TryGetCache(userContext, true)); }