/// <nodoc /> public ApiServer( IIpcProvider ipcProvider, string ipcMonikerId, FileContentManager fileContentManager, PipExecutionContext context, IServerConfig config, EngineCache engineCache, Tracing.IExecutionLogTarget executionLog, Tracing.BuildManifestGenerator buildManifestGenerator) { Contract.Requires(ipcMonikerId != null); Contract.Requires(fileContentManager != null); Contract.Requires(context != null); Contract.Requires(config != null); Contract.Requires(engineCache != null); Contract.Requires(executionLog != null); m_fileContentManager = fileContentManager; m_server = ipcProvider.GetServer(ipcProvider.LoadAndRenderMoniker(ipcMonikerId), config); m_context = context; m_engineCache = engineCache; m_executionLog = executionLog; m_buildManifestGenerator = buildManifestGenerator; m_inMemoryBuildManifestStore = new ConcurrentDictionary <ContentHash, ContentHash>(); }
/// <nodoc /> public ApiServer( IIpcProvider ipcProvider, string ipcMonikerId, FileContentManager fileContentManager, PipExecutionContext context, IServerConfig config, PipTwoPhaseCache pipTwoPhaseCache, Tracing.IExecutionLogTarget executionLog, Tracing.BuildManifestGenerator buildManifestGenerator, ServiceManager serviceManger, bool verifyFileContentOnBuildManifestHashComputation) { Contract.Requires(ipcMonikerId != null); Contract.Requires(fileContentManager != null); Contract.Requires(context != null); Contract.Requires(config != null); Contract.Requires(pipTwoPhaseCache != null); Contract.Requires(executionLog != null); m_fileContentManager = fileContentManager; m_server = ipcProvider.GetServer(ipcProvider.LoadAndRenderMoniker(ipcMonikerId), config); m_context = context; m_executionLog = executionLog; m_buildManifestGenerator = buildManifestGenerator; m_serviceManger = serviceManger; m_pipTwoPhaseCache = pipTwoPhaseCache; m_inMemoryBuildManifestStore = new ConcurrentBigMap <ContentHash, IReadOnlyList <ContentHash> >(); m_receivedStatistics = new ConcurrentBigMap <string, long>(); m_verifyFileContentOnBuildManifestHashComputation = verifyFileContentOnBuildManifestHashComputation; }
private WeakContentFingerprint GenerateSaltedWeakFingerprint(ContentHash hash) => new WeakContentFingerprint(FingerprintUtilities.Hash($"Hash: '{hash.ToHex()}' Salt: '{m_buildManifestHashCacheSalt}'")); // Changes to this string will invalidate all existing cache entries /// <nodoc /> public ApiServer( IIpcProvider ipcProvider, string ipcMonikerId, FileContentManager fileContentManager, PipExecutionContext context, IServerConfig config, EngineCache engineCache, Tracing.IExecutionLogTarget executionLog, Tracing.BuildManifestGenerator buildManifestGenerator) { Contract.Requires(ipcMonikerId != null); Contract.Requires(fileContentManager != null); Contract.Requires(context != null); Contract.Requires(config != null); Contract.Requires(engineCache != null); Contract.Requires(executionLog != null); m_fileContentManager = fileContentManager; m_server = ipcProvider.GetServer(ipcProvider.LoadAndRenderMoniker(ipcMonikerId), config); m_context = context; m_engineCache = engineCache; m_executionLog = executionLog; m_buildManifestGenerator = buildManifestGenerator; m_inMemoryBuildManifestStore = new ConcurrentBigMap <ContentHash, ContentHash>(); m_buildManifestHashCacheSalt = string.IsNullOrEmpty(Utilities.Configuration.EngineEnvironmentSettings.BuildManifestHashCacheSalt) ? string.Empty : Utilities.Configuration.EngineEnvironmentSettings.BuildManifestHashCacheSalt; }
/// <nodoc /> public ApiServer( IIpcProvider ipcProvider, string ipcMonikerId, FileContentManager fileContentManager, PipExecutionContext context, IServerConfig config) { Contract.Requires(ipcMonikerId != null); Contract.Requires(fileContentManager != null); Contract.Requires(context != null); Contract.Requires(config != null); m_fileContentManager = fileContentManager; m_server = ipcProvider.GetServer(ipcProvider.LoadAndRenderMoniker(ipcMonikerId), config); m_context = context; }