public RuntimeDependencyResolver(ScriptProjectProvider scriptProjectProvider, LogFactory logFactory, ScriptEnvironment scriptEnvironment, bool useRestoreCache)
 {
     _scriptProjectProvider   = scriptProjectProvider;
     _scriptEnvironment       = scriptEnvironment;
     _dependencyContextReader = new ScriptDependencyContextReader(logFactory);
     _restorer = CreateRestorer(logFactory, useRestoreCache);
 }
Exemple #2
0
 public CompilationDependencyResolver(ScriptProjectProvider scriptProjectProvider, ScriptDependencyContextReader scriptDependencyContextReader, ICompilationReferenceReader compilationReferenceReader, LogFactory logFactory)
 {
     _scriptProjectProvider = scriptProjectProvider;
     this._scriptDependencyContextReader = scriptDependencyContextReader;
     _compilationReferenceReader         = compilationReferenceReader;
     _restorer = CreateRestorer(logFactory);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="CachedRestorer"/> class.
 /// </summary>
 /// <param name="restorer">The <see cref="IRestorer"/> to be used when we miss the cache.</param>
 /// <param name="logFactory">The <see cref="LogFactory"/> to be used for logging.</param>
 public CachedRestorer(IRestorer restorer, LogFactory logFactory)
 {
     _restorer = restorer;
     _logger   = logFactory.CreateLogger <CachedRestorer>();
 }
        public PersistencyTracking(ILogger <PersistencyTracking> logger, TrackingConfiguration configuration, IRatingStream stream, IRestorer restorer)
        {
            if (stream == null)
            {
                throw new ArgumentNullException(nameof(stream));
            }

            if (restorer == null)
            {
                throw new ArgumentNullException(nameof(restorer));
            }

            if (string.IsNullOrEmpty(configuration?.Persistency))
            {
                throw new ArgumentNullException(nameof(configuration.Persistency));
            }

            this.logger = logger ?? throw new ArgumentNullException(nameof(logger));
            logger.LogInformation("Creating persistency {0}", configuration.Persistency);
            Path.GetDirectoryName(configuration.Persistency).EnsureDirectoryExistence();
            restorer.Load(configuration.Persistency);
            var subscription = stream.Stream.Subscribe(item => Process(item.Item1, item.Item2));

            disposable.Add(subscription);
            configuration.Persistency.Backup();
            streamWriter = new StreamWriter(configuration.Persistency, false);
            disposable.Add(streamWriter);
            writer = new CsvWriter(streamWriter, CultureInfo.CurrentCulture);
            disposable.Add(writer);
            writer.WriteField("Date");
            writer.WriteField("Tag");
            writer.WriteField("Type");
            writer.WriteField("Id");
            writer.WriteField("Rating");
            writer.NextRecord();
        }
 public ScriptDependencyInfoProvider(IRestorer restorer, LogFactory logFactory)
 {
     _restorer = restorer;
     _logger   = logFactory.CreateLogger <ScriptDependencyInfoProvider>();
 }
Exemple #6
0
 public ProfiledRestorer(IRestorer restorer, LogFactory logFactory)
 {
     _restorer = restorer;
     _logger   = logFactory.CreateLogger <ProfiledRestorer>();
 }