internal PnPContext(ILogger logger, IAuthenticationProvider authenticationProvider, SharePointRestClient sharePointRestClient, MicrosoftGraphClient microsoftGraphClient, IOptions <PnPContextFactoryOptions> contextOptions, IOptions <PnPGlobalSettingsOptions> globalOptions, TelemetryManager telemetryManager) : this(logger, authenticationProvider, sharePointRestClient, microsoftGraphClient, contextOptions?.Value, globalOptions?.Value, telemetryManager) { }
internal void ConnectTelemetry() { bool connectTelemetry = true; if (GlobalOptions != null && GlobalOptions.DisableTelemetry) { connectTelemetry = false; } #if NET5_0_OR_GREATER if (RuntimeInformation.RuntimeIdentifier == "browser-wasm") { connectTelemetry = false; } #endif if (connectTelemetry) { TelemetryManager = new TelemetryManager(GlobalOptions); } }
internal PnPContext(ILogger logger, IAuthenticationProvider authenticationProvider, SharePointRestClient sharePointRestClient, MicrosoftGraphClient microsoftGraphClient, PnPContextFactoryOptions contextOptions, PnPGlobalSettingsOptions globalOptions, TelemetryManager telemetryManager) { Id = Guid.NewGuid(); Logger = logger; #if DEBUG Mode = TestMode.Default; #endif AuthenticationProvider = authenticationProvider; RestClient = sharePointRestClient; GraphClient = microsoftGraphClient; GlobalOptions = globalOptions; ContextOptions = contextOptions; telemetry = telemetryManager; if (ContextOptions != null) { GraphFirst = ContextOptions.GraphFirst; GraphAlwaysUseBeta = ContextOptions.GraphAlwaysUseBeta; GraphCanUseBeta = ContextOptions.GraphCanUseBeta; } if (globalOptions != null && globalOptions.Environment.HasValue) { Environment = globalOptions.Environment.Value; // Ensure the Microsoft Graph URL is set depending on the used cloud environment GraphClient.UpdateBaseAddress(CloudManager.GetMicrosoftGraphAuthority(Environment.Value)); } BatchClient = new BatchClient(this, GlobalOptions, telemetryManager); }