Ejemplo n.º 1
0
        public CachingHandler(IEntityTagStore entityTagStore, params string[] varyByHeaders)
        {
            AddLastModifiedHeader = true;
            AddVaryHeader = true;
            _varyByHeaders = varyByHeaders;
            _entityTagStore = entityTagStore;
            ETagValueGenerator = (resourceUri, headers) =>
                new EntityTagHeaderValue(
                    string.Format("\"{0}\"", Guid.NewGuid().ToString("N").ToLower()),
                varyByHeaders.Length == 0); // default ETag generation will create weak tags if varyByHeaders has zero items

            CacheKeyGenerator = (resourceUri, headers) =>
                new CacheKey(resourceUri, headers.SelectMany(h => h.Value));

            LinkedRoutePatternProvider = (uri, method) => new string[0]; // a dummy
            UriTrimmer = (uri) => uri.PathAndQuery;

            CacheControlHeaderProvider = (request) => new CacheControlHeaderValue()
            {
                Private = true,
                MustRevalidate = true,
                NoTransform = true,
                MaxAge = TimeSpan.FromDays(7)
            };
        }
Ejemplo n.º 2
0
 public EntityReplySubscriber(
     IUserNotificationTypeDefaults userNotificationTypeDefaults,
     IDummyClaimsPrincipalFactory <User> claimsPrincipalFactory,
     INotificationManager <TEntityReply> notificationManager,
     IEntityReplyStore <TEntityReply> entityReplyStore,
     IFollowStore <Follows.Models.Follow> followStore,
     IEntityTagStore <EntityTag> entityTagStore,
     IAuthorizationService authorizationService,
     IDeferredTaskManager deferredTaskManager,
     IPlatoUserStore <User> platoUserStore,
     IEntityStore <Topic> entityStore,
     IBroker broker)
 {
     _userNotificationTypeDefaults = userNotificationTypeDefaults;
     _claimsPrincipalFactory       = claimsPrincipalFactory;
     _authorizationService         = authorizationService;
     _deferredTaskManager          = deferredTaskManager;
     _notificationManager          = notificationManager;
     _entityReplyStore             = entityReplyStore;
     _entityTagStore = entityTagStore;
     _platoUserStore = platoUserStore;
     _followStore    = followStore;
     _entityStore    = entityStore;
     _broker         = broker;
 }
Ejemplo n.º 3
0
        public CachingHandler(IEntityTagStore entityTagStore, params string[] varyByHeaders)
        {
            AddLastModifiedHeader = true;
            AddVaryHeader         = true;
            _varyByHeaders        = varyByHeaders;
            _entityTagStore       = entityTagStore;
            ETagValueGenerator    = (resourceUri, headers) =>
                                    new EntityTagHeaderValue(
                string.Format("\"{0}\"", Guid.NewGuid().ToString("N").ToLower()),
                varyByHeaders.Length == 0);     // default ETag generation will create weak tags if varyByHeaders has zero items

            EntityTagKeyGenerator = (resourceUri, headers) =>
                                    new EntityTagKey(resourceUri, headers.SelectMany(h => h.Value));

            LinkedRoutePatternProvider = (uri, method) => new string[0]; // a dummy
            UriTrimmer = (uri) => uri.PathAndQuery;

            CacheControlHeaderProvider = (request) => new CacheControlHeaderValue
            {
                Private        = true,
                MustRevalidate = true,
                NoTransform    = true,
                MaxAge         = TimeSpan.FromDays(7)
            };
        }
Ejemplo n.º 4
0
 public EntityTagManager(
     IEntityTagStore <EntityTag> entityTagStore,
     IBroker broker)
 {
     _entityTagStore = entityTagStore;
     _broker         = broker;
 }
Ejemplo n.º 5
0
        public CachingHandler(HttpConfiguration configuration, IEntityTagStore entityTagStore, params string[] varyByHeaders)
        {
            _configuration        = configuration;
            AddLastModifiedHeader = true;
            AddVaryHeader         = true;
            _varyByHeaders        = varyByHeaders;
            _entityTagStore       = entityTagStore;
            ETagValueGenerator    = new DefaultETagGenerator().Generate;


            UriTrimmer = (uri) => uri.PathAndQuery;

            _routePatternProvider = new ConventionalRoutePatternProvider(configuration);


            // infinite - Never refresh
            CacheRefreshPolicyProvider = (message, httpConfiguration) => TimeSpan.MaxValue;

            // items by default get cached but must be revalidated
            CacheControlHeaderProvider = (request, cfg) => new CacheControlHeaderValue()
            {
                Private        = true,
                MustRevalidate = true,
                NoTransform    = true,
                MaxAge         = TimeSpan.Zero
            };
        }
Ejemplo n.º 6
0
        public CachingHandler(HttpConfiguration configuration, IEntityTagStore entityTagStore, params string[] varyByHeaders)
        {
            _configuration = configuration;
            AddLastModifiedHeader = true;
            AddVaryHeader = true;
            _varyByHeaders = varyByHeaders;
            _entityTagStore = entityTagStore;
            ETagValueGenerator = new DefaultETagGenerator().Generate;
            CacheKeyGenerator = (resourceUri, headers) =>
                new CacheKey(resourceUri, headers.SelectMany(h => h.Value));

            LinkedRoutePatternProvider = (uri, method) => new string[0]; // a dummy
            UriTrimmer = (uri) => uri.PathAndQuery;

            // infinite - Never refresh
            CacheRefreshPolicyProvider = (message, httpConfiguration) => TimeSpan.MaxValue;

            // items by default get cached but must be revalidated
            CacheControlHeaderProvider = (request, cfg) => new CacheControlHeaderValue()
            {
                Private = true,
                MustRevalidate = true,
                NoTransform = true,
                MaxAge = TimeSpan.Zero
            };
        }
Ejemplo n.º 7
0
 public TagOccurrencesUpdater(
     IEntityTagStore <EntityTag> entityTagStore,
     ITagManager <TModel> tagManager)
 {
     _entityTagStore = entityTagStore;
     _tagManager     = tagManager;
 }
Ejemplo n.º 8
0
        public CachingHandler(HttpConfiguration configuration, IEntityTagStore entityTagStore, params string[] varyByHeaders)
        {
            _configuration = configuration;
            AddLastModifiedHeader = true;
            AddVaryHeader = true;
            _varyByHeaders = varyByHeaders;
            _entityTagStore = entityTagStore;
            ETagValueGenerator = (resourceUri, headers) =>
                new EntityTagHeaderValue(
                    string.Format("\"{0}\"", Guid.NewGuid().ToString("N").ToLower()),
                varyByHeaders.Length == 0); // default ETag generation will create weak tags if varyByHeaders has zero items

            CacheKeyGenerator = (resourceUri, headers) =>
                new CacheKey(resourceUri, headers.SelectMany(h => h.Value));

            LinkedRoutePatternProvider = (uri, method, headers) => new string[0]; // a dummy
            UriTrimmer = (uri) => uri.PathAndQuery;

            // infinite - Never refresh
            CacheRefreshPolicyProvider = (message, httpConfiguration) => TimeSpan.MaxValue;

            // items by default get cached but must be revalidated
            CacheControlHeaderProvider = (request, cfg) => new CacheControlHeaderValue()
            {
                Private = true,
                MustRevalidate = true,
                NoTransform = true,
                MaxAge = TimeSpan.Zero
            };
        }
Ejemplo n.º 9
0
 public IdeaListItemViewAdapter(
     IEntityTagStore <EntityTag> entityTagStore,
     IActionContextAccessor actionContextAccessor)
 {
     _entityTagStore        = entityTagStore;
     _actionContextAccessor = actionContextAccessor;
     ViewName = "IdeaListItem";
 }
Ejemplo n.º 10
0
 public EntityReplySubscriber(
     ITagOccurrencesUpdater <TTag> tagOccurrencesUpdater,
     IEntityTagStore <EntityTag> entityTagStore,
     IBroker broker)
 {
     _tagOccurrencesUpdater = tagOccurrencesUpdater;
     _entityTagStore        = entityTagStore;
     _broker = broker;
 }
Ejemplo n.º 11
0
 public ArticleListItemViewAdapter(
     IEntityService <Article> entityService,
     IEntityTagStore <EntityTag> entityTagStore,
     IActionContextAccessor actionContextAccessor)
 {
     _entityService         = entityService;
     _entityTagStore        = entityTagStore;
     _actionContextAccessor = actionContextAccessor;
     ViewName = "ArticleListItem";
 }
Ejemplo n.º 12
0
 public TopicListItemViewAdapter(
     IEntityService <Topic> entityService,
     IEntityTagStore <EntityTag> entityTagStore,
     IActionContextAccessor actionContextAccessor)
 {
     _entityService         = entityService;
     _entityTagStore        = entityTagStore;
     _actionContextAccessor = actionContextAccessor;
     ViewName = "TopicListItem";
 }
Ejemplo n.º 13
0
        public CachingHandler(IEntityTagStore entityTagStore, params string[] varyByHeaders)
        {
            AddLastModifiedHeader = true;
            AddVaryHeader = true;
            _varyByHeaders = varyByHeaders;
            _entityTagStore = entityTagStore;
            ETagValueGenerator = (resourceUri, headers) =>
                new EntityTagHeaderValue(
                    string.Format("\"{0}\"", Guid.NewGuid().ToString("N").ToLower()),
                varyByHeaders.Length ==0); // default ETag generation will create weak tags if varyByHeaders has zero items

            EntityTagKeyGenerator = (resourceUri, headers) =>
                new EntityTagKey(resourceUri, headers.SelectMany(h => h.Value));
            CacheController = (request) => new CacheControlHeaderValue(){Private = true, MustRevalidate = true, NoTransform = true};
        }
Ejemplo n.º 14
0
 public QuestionViewProvider(
     ITagStore <Tag> tagStore,
     IEntityStore <Question> entityStore,
     IEntityTagStore <EntityTag> entityTagStore,
     IHttpContextAccessor httpContextAccessor,
     IEntityTagManager <EntityTag> entityTagManager,
     ITagManager <Tag> tagManager,
     IFeatureFacade featureFacade,
     IContextFacade contextFacade)
 {
     _tagStore         = tagStore;
     _entityStore      = entityStore;
     _entityTagStore   = entityTagStore;
     _entityTagManager = entityTagManager;
     _tagManager       = tagManager;
     _featureFacade    = featureFacade;
     _contextFacade    = contextFacade;
     _request          = httpContextAccessor.HttpContext.Request;
 }
Ejemplo n.º 15
0
        public CommentViewProvider(
            IHttpContextAccessor httpContextAccessor,
            IStringLocalizer stringLocalize,
            IEntityTagManager <EntityTag> entityTagManager,
            IEntityTagStore <EntityTag> entityTagStore,
            IEntityReplyStore <Comment> replyStore,
            ITagManager <TagBase> tagManager,
            IFeatureFacade featureFacade,
            IContextFacade contextFacade,
            ITagStore <TagBase> tagStore)
        {
            _request          = httpContextAccessor.HttpContext.Request;
            _entityTagManager = entityTagManager;
            _entityTagStore   = entityTagStore;
            _featureFacade    = featureFacade;
            _contextFacade    = contextFacade;
            _tagManager       = tagManager;
            _tagStore         = tagStore;
            _replyStore       = replyStore;

            T = stringLocalize;
        }
Ejemplo n.º 16
0
 public IdeaTagsViewComponent(IEntityTagStore <EntityTag> tagStore)
 {
     _tagStore = tagStore;
 }
Ejemplo n.º 17
0
 public QuestionTagsViewComponent(IEntityTagStore <EntityTag> tagStore)
 {
     _tagStore = tagStore;
 }
Ejemplo n.º 18
0
 /// <summary>
 /// Assumes Web host and uses GlobalConfiguration.Configuration
 /// </summary>
 /// <param name="entityTagStore"></param>
 /// <param name="varyByHeaders"></param>
 public CachingHandler(IEntityTagStore entityTagStore, params string[] varyByHeaders)
     : this(GlobalConfiguration.Configuration, entityTagStore, varyByHeaders)
 {
 }
Ejemplo n.º 19
0
 public ArticleTagsViewComponent(IEntityTagStore <EntityTag> tagStore)
 {
     _tagStore = tagStore;
 }