示例#1
0
        /// <summary>
        /// Create a new instance of a read only vision file repository
        /// </summary>
        /// <param name="visionFileSystem">Vision file system</param>
        /// <param name="fileName">Vision file name</param>
        /// <param name="paginationTokenManager">Pagination token manager</param>
        /// <param name="cache">Memory cache</param>
        /// <param name="logger">Logger</param>
        public VisionReadOnlyRepository(string fileName,
                                        IVisionFileSystem visionFileSystem,
                                        IPaginationTokenManager paginationTokenManager,
                                        IMemoryCache cache,
                                        ILogger logger)
        {
            if (visionFileSystem == null)
            {
                throw new ArgumentNullException(nameof(visionFileSystem));
            }
            if (string.IsNullOrEmpty(fileName))
            {
                throw new ArgumentNullException(nameof(fileName));
            }
            if (paginationTokenManager == null)
            {
                throw new ArgumentNullException(nameof(paginationTokenManager));
            }
            if (cache == null)
            {
                throw new ArgumentNullException(nameof(cache));
            }

            VisionFileSystem       = visionFileSystem;
            FileName               = fileName;
            PaginationTokenManager = paginationTokenManager;
            Cache  = cache;
            Logger = logger ?? NullLogger.Instance;
        }
示例#2
0
 /// <summary>
 /// Create a new instance of a vision file repository
 /// </summary>
 /// <param name="visionFileSystem">Vision file system</param>
 /// <param name="fileName">Vision file name</param>
 /// <param name="paginationTokenManager">Pagination token manager</param>
 /// <param name="cache">Memory cache</param>
 /// <param name="logger">Logger</param>
 public VisionRepository(string fileName,
                         IVisionFileSystem visionFileSystem,
                         IPaginationTokenManager paginationTokenManager,
                         IMemoryCache cache,
                         ILogger logger)
     : base(fileName, visionFileSystem, paginationTokenManager, cache, logger)
 {
 }