public QueryHandlerSyncCacheDecorator(
            IOutputCacheDependenciesStore cacheKeyStore,
            ICacheHelper cacheHelper,
            QueryCacheSettings queryCacheSettings,
            IQueryHandlerSync <TQuery, TResponse> handler)
        {
            Guard.Against.Null(cacheKeyStore, nameof(cacheKeyStore));
            Guard.Against.Null(queryCacheSettings, nameof(queryCacheSettings));
            Guard.Against.Null(handler, nameof(handler));
            Guard.Against.Null(cacheHelper, nameof(cacheHelper));

            this.cacheKeyStore      = cacheKeyStore;
            this.cacheHelper        = cacheHelper;
            this.queryCacheSettings = queryCacheSettings;
            this.handler            = handler;
        }
        public QueryHandlerSyncLogDecorator(IQueryHandlerSync <TQuery, TResponse> handler)
        {
            Guard.Against.Null(handler, nameof(handler));

            this.handler = handler;
        }