示例#1
0
 protected void AddResultToCache <T>(
     CalculatedDataItemType calculatedDataItemType,
     string localeISOCode,
     T result)
 {
     GetCacheCalculatedDataItem <T>(calculatedDataItemType, localeISOCode).Data = result;
 }
        public void ClearCalculatedDataItem(CalculatedDataItemType calculatedDataItemType)
        {
            List <CalculatedDataItemCacheKey> calculatedDataItemsCacheKeys = _calculatedDataItemsDictionary.Keys.Where(calculatedDataItemCacheKey => calculatedDataItemCacheKey.CalculatedDataItemType == calculatedDataItemType).ToList();

            foreach (CalculatedDataItemCacheKey calculatedDataItemCacheKey in calculatedDataItemsCacheKeys)
            {
                _calculatedDataItemsDictionary.Remove(calculatedDataItemCacheKey);
            }
        }
示例#3
0
        protected bool TryGetPrecalculatedResult <T>(
            CalculatedDataItemType calculatedDataItemType,
            out T result)
        {
            CalculatedDataItem <T> calculatedDataItem = DefaultResultsManager.GetCalculatedDataItem <T>(calculatedDataItemType);

            if (calculatedDataItem.HasData)
            {
                result = calculatedDataItem.Data;
                return(true);
            }

            result = default(T);
            return(false);
        }
示例#4
0
        protected bool TryGetCachedCalculatedResult <T>(
            CalculatedDataItemType calculatedDataItemType,
            out T result)
        {
            CalculatedDataItem <T> calculatedDataItem;

            MySettings.ResultCacheNeedsRefresh = false; // this works because we clear the cache when a setting is changed in MySettings. Perhaps change later...
            calculatedDataItem = GetCacheCalculatedDataItem <T>(calculatedDataItemType);
            if (calculatedDataItem.HasFreshData)
            {
                result = calculatedDataItem.Data;
                return(true);
            }

            result = default(T);
            return(false);
        }
示例#5
0
 public CalculatedDataItem <T> GetCacheCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType)
 {
     return(CalculatedDataItemCacheManager.GetCalculatedDataItemEx <T>(calculatedDataItemType, MySettings));
 }
示例#6
0
 protected void AddResultToCache <T>(
     CalculatedDataItemType calculatedDataItemType,
     T result)
 {
     GetCacheCalculatedDataItem <T>(calculatedDataItemType).Data = result;
 }
示例#7
0
 public static CalculatedDataItem <T> GetCalculatedDataItemEx <T>(CalculatedDataItemType calculatedDataItemType, MySettings.MySettings mySettings, string localeISOCode)
 {
     return(CalculatedDataItemCollection.GetCalculatedDataItem <T>(calculatedDataItemType, localeISOCode));
 }
示例#8
0
 public static CalculatedDataItem <T> GetCalculatedDataItemEx <T>(CalculatedDataItemType calculatedDataItemType, MySettings.MySettings mySettings)
 {
     return(CalculatedDataItemCollection.GetCalculatedDataItem <T>(calculatedDataItemType));
 }
 public CalculatedDataItemCacheKey(CalculatedDataItemType calculatedDataItemType, string localeIsoCode)
 {
     CalculatedDataItemType = calculatedDataItemType;
     LocaleIsoCode          = localeIsoCode;
 }
 public static CalculatedDataItem <T> GetCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType, string localeIsoCode)
 {
     return(CalculatedDataItemCollection.GetCalculatedDataItem <T>(calculatedDataItemType, localeIsoCode));
 }
 /// <summary>
 /// Adds a result base item.
 /// </summary>
 /// <typeparam name="T">The result base data type.</typeparam>
 /// <param name="calculatedDataItemType">Type of the result base.</param>
 /// <param name="localeIsoCode">The locale ISO code.</param>
 /// <param name="data">The data.</param>
 /// <returns>
 /// The newly created CalculatedDataItem object
 /// </returns>
 public CalculatedDataItem <T> AddCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType, string localeIsoCode, T data)
 {
     return(AddCalculatedDataItem(new CalculatedDataItemCacheKey(calculatedDataItemType, localeIsoCode), data));
 }
 /// <summary>
 /// Adds a result base item.
 /// </summary>
 /// <typeparam name="T">The result base data type.</typeparam>
 /// <param name="calculatedDataItemType">Type of the result base.</param>
 /// <param name="data">The data.</param>
 /// <returns>The newly created CalculatedDataItem object</returns>
 public CalculatedDataItem <T> AddCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType, T data)
 {
     return(AddCalculatedDataItem(new CalculatedDataItemCacheKey(calculatedDataItemType), data));
 }
 /// <summary>
 /// Gets a result base item.
 /// </summary>
 /// <typeparam name="T">The result base data type.</typeparam>
 /// <param name="calculatedDataItemType">Type of the result base (enum).</param>
 /// <returns>
 /// Returns a CalculatedDataItem if the CalculatedDataItemType was found in session cache.
 /// Otherwise a NullCalculatedDataItem object is returned.
 /// </returns>
 public CalculatedDataItem <T> GetCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType)
 {
     return(GetCalculatedDataItem <T>(new CalculatedDataItemCacheKey(calculatedDataItemType)));
 }
 /// <summary>
 /// Gets a result base item.
 /// </summary>
 /// <typeparam name="T">The result base data type.</typeparam>
 /// <param name="calculatedDataItemType">Type of the result base (enum).</param>
 /// <param name="localeIsoCode">The locale ISO code.</param>
 /// <returns>
 /// Returns a CalculatedDataItem if the CalculatedDataItemType was found in session cache.
 /// Otherwise a NullCalculatedDataItem object is returned.
 /// </returns>
 public CalculatedDataItem <T> GetCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType, string localeIsoCode)
 {
     return(GetCalculatedDataItem <T>(new CalculatedDataItemCacheKey(calculatedDataItemType, localeIsoCode)));
 }
示例#15
0
 public CalculatedDataItem <T> GetCacheCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType, string localeISOCode)
 {
     return(CalculatedDataItemCacheManager.GetCalculatedDataItemEx <T>(calculatedDataItemType, MySettings, localeISOCode));
 }
 public static CalculatedDataItem <T> GetCalculatedDataItem <T>(CalculatedDataItemType calculatedDataItemType)
 {
     return(CalculatedDataItemCollection.GetCalculatedDataItem <T>(calculatedDataItemType, null));
 }
 public CalculatedDataItemCacheKey(CalculatedDataItemType calculatedDataItemType)
 {
     CalculatedDataItemType = calculatedDataItemType;
 }