示例#1
0
        public FeedbackFileLoggerProviderFactoryBase(FeedbackLogDirectoryProvider feedbackLogDirectoryProvider)
        {
            if (feedbackLogDirectoryProvider is null)
            {
                throw new ArgumentNullException(nameof(feedbackLogDirectoryProvider));
            }

            _feedbackLogDirectoryProvider = feedbackLogDirectoryProvider;
            _creationLock = new object();
        }
        public DefaultFeedbackFileLogWriter(FeedbackLogDirectoryProvider feedbackLogDirectoryProvider, string logFileIdentifier)
        {
            if (feedbackLogDirectoryProvider is null)
            {
                throw new ArgumentNullException(nameof(feedbackLogDirectoryProvider));
            }

            _logs         = new ConcurrentQueue <string>();
            _logSemaphore = new SemaphoreSlim(0);
            _writeToLock  = new object();
            _feedbackLogDirectoryProvider = feedbackLogDirectoryProvider;

            InitializeLogFile(logFileIdentifier);

            _logWriterTask = Task.Run(WriteToLogAsync);
        }
示例#3
0
        public RazorFeedbackDiagnosticFileProvider(
            JoinableTaskContext joinableTaskContext,
            FeedbackLogDirectoryProvider feedbackLogDirectoryProvider)
        {
            if (joinableTaskContext is null)
            {
                throw new ArgumentNullException(nameof(joinableTaskContext));
            }

            if (feedbackLogDirectoryProvider is null)
            {
                throw new ArgumentNullException(nameof(feedbackLogDirectoryProvider));
            }

            _feedbackLogDirectoryProvider = feedbackLogDirectoryProvider;
            _joinableTaskFactory          = joinableTaskContext.Factory;
        }
示例#4
0
 public RazorLanguageServerFeedbackFileLoggerProviderFactory(FeedbackLogDirectoryProvider feedbackLogDirectoryProvider)
     : base(feedbackLogDirectoryProvider)
 {
 }
示例#5
0
 public HTMLCSharpLanguageServerFeedbackFileLoggerProviderFactory(FeedbackLogDirectoryProvider feedbackLogDirectoryProvider)
     : base(feedbackLogDirectoryProvider)
 {
 }