public PickerValueType(string fieldName, string aliasPrefix = Constants.SearchPrefix)
            : base(fieldName)
        {
            _publishedContentHelper = Current.Factory.GetInstance <PublishedContentHelper>();

            _aliasPrefix = aliasPrefix;
        }
예제 #2
0
        public override void RefreshAll()
        {
            //all property type cache
            ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.PropertyTypeCacheKey);
            //all content type property cache
            ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.ContentTypePropertiesCacheKey);
            //all content type cache
            ApplicationContext.Current.ApplicationCache.ClearCacheByKeySearch(CacheKeys.ContentTypeCacheKey);
            //clear static object cache
            global::umbraco.cms.businesslogic.ContentType.RemoveAllDataTypeCache();
            PublishedContentHelper.ClearPropertyTypeCache();

            base.RefreshAll();
        }
예제 #3
0
        /// <summary>
        /// Clears cache for an individual IContentTypeBase object
        /// </summary>
        /// <param name="payload"></param>
        /// <remarks>
        /// See notes for the other overloaded ClearContentTypeCache for
        /// full details on clearing cache.
        /// </remarks>
        /// <returns>
        /// Return true if the alias of the content type changed
        /// </returns>
        private static void ClearContentTypeCache(JsonPayload payload)
        {
            //clears the cache for each property type associated with the content type
            foreach (var pid in payload.PropertyTypeIds)
            {
                ApplicationContext.Current.ApplicationCache.ClearCacheItem(CacheKeys.PropertyTypeCacheKey + pid);
            }
            //clears the cache associated with the Content type itself
            ApplicationContext.Current.ApplicationCache.ClearCacheItem(string.Format("{0}{1}", CacheKeys.ContentTypeCacheKey, payload.Id));
            //clears the cache associated with the content type properties collection
            ApplicationContext.Current.ApplicationCache.ClearCacheItem(CacheKeys.ContentTypePropertiesCacheKey + payload.Id);

            //clears the dictionary object cache of the legacy ContentType
            global::umbraco.cms.businesslogic.ContentType.RemoveFromDataTypeCache(payload.Alias);
            PublishedContentHelper.ClearPropertyTypeCache();

            //need to recursively clear the cache for each child content type
            foreach (var descendant in payload.DescendantPayloads)
            {
                ClearContentTypeCache(descendant);
            }
        }
 public PublishedContentMapper(PublishedContentHelper publishedContentHelper)
 {
     _publishedContentHelper = publishedContentHelper;
 }
예제 #5
0
 public PickerValueType(string fieldName, char separator = ',')
     : base(fieldName, separator)
 {
     _publishedContentHelper = Current.Factory.GetInstance <PublishedContentHelper>();
 }