/// <summary> /// Adds the cart to cache. /// </summary> /// <param name="cart">The cart.</param> public virtual void AddCartToCache(CommerceCart cart) { var cacheProvider = GetCacheProvider(); var id = this.GetCustomerId(cart.CustomerId); if (cacheProvider.Contains(Infrastructure.Constants.CommerceConstants.KnownCachePrefixes.Sitecore, Infrastructure.Constants.CommerceConstants.KnownCacheNames.CommerceCartCache, id)) { var msg = string.Format(CultureInfo.InvariantCulture, "CartCacheHelper::AddCartToCache - Cart for customer id {0} is already in the cache!", id); CommerceTrace.Current.Write(msg); } cacheProvider.AddData(Infrastructure.Constants.CommerceConstants.KnownCachePrefixes.Sitecore, Infrastructure.Constants.CommerceConstants.KnownCacheNames.CommerceCartCache, id, cart); CartCookieHelper.CreateCartCookieForCustomer(id); }
/// <summary> /// Invalidates the cart cache. /// </summary> /// <param name="customerId">the customer id</param> public virtual void InvalidateCartCache([NotNull] string customerId) { var cacheProvider = GetCacheProvider(); var id = this.GetCustomerId(customerId); if (!cacheProvider.Contains(Infrastructure.Constants.CommerceConstants.KnownCachePrefixes.Sitecore, Infrastructure.Constants.CommerceConstants.KnownCacheNames.CommerceCartCache, id)) { var msg = string.Format(CultureInfo.InvariantCulture, "CartCacheHelper::InvalidateCartCache - Cart for customer id {0} is not in the cache!", id); CommerceTrace.Current.Write(msg); } cacheProvider.RemoveData(Infrastructure.Constants.CommerceConstants.KnownCachePrefixes.Sitecore, Infrastructure.Constants.CommerceConstants.KnownCacheNames.CommerceCartCache, id); CartCookieHelper.DeleteCartCookieForCustomer(id); }