private MonadConnectionInfo DiscoverOrganizationConnectionInfo() { if (!WinformsHelper.IsRemoteEnabled()) { return(null); } if (this.Type == OrganizationType.RemoteOnPremise || this.Type == OrganizationType.Cloud) { this.ReportConnectToSpecifiedServerProgress(0); return(this.DiscoverConnectionInfo()); } if (this.Uri != null) { try { this.ReportConnectToSpecifiedServerProgress(0); return(this.DiscoverConnectionInfo()); } catch (PSRemotingDataStructureException) { } catch (PSRemotingTransportException) { } } this.ReportDiscoverServerProgress(15); this.Uri = PSConnectionInfoSingleton.GetRemotePowerShellUri(PSConnectionInfoSingleton.DiscoverExchangeServer()); this.ReportConnectToServerProgress(40); return(this.DiscoverConnectionInfo()); }
public override void Initialize(IProgressProvider progressProvider) { PSConnectionInfoSingleton.GetInstance().DisplayName = this.RootNodeDisplayName; PSConnectionInfoSingleton.GetInstance().Type = OrganizationType.ToolOrEdge; PSConnectionInfoSingleton.GetInstance().Uri = PSConnectionInfoSingleton.GetRemotePowerShellUri(this.Settings.RemotePSServer); PSConnectionInfoSingleton.GetInstance().LogonWithDefaultCredential = true; PSConnectionInfoSingleton.GetInstance().Enabled = true; base.Initialize(progressProvider); }
public void UpdateRemotePSServer(Fqdn server) { if (this.Type != OrganizationType.LocalOnPremise && this.Type != OrganizationType.ToolOrEdge) { throw new NotSupportedException(); } Uri uri = this.Uri; Uri remotePowerShellUri = PSConnectionInfoSingleton.GetRemotePowerShellUri(server); bool flag = true; try { this.Uri = remotePowerShellUri; this.DefaultConnectionInfo = this.DiscoverOrganizationConnectionInfo(); flag = false; } finally { if (flag) { this.Uri = uri; } } }
private MonadConnectionInfo DiscoverForestConnectionInfo(IUIService uiService, OrganizationSetting forestInfo) { SupportedVersionList supportedVersionList = null; switch (forestInfo.Type) { case OrganizationType.LocalOnPremise: return(new ConnectionRetryDiscoverer(uiService, OrganizationType.LocalOnPremise, Strings.MicrosoftExchangeOnPremise, PSConnectionInfoSingleton.GetRemotePowerShellUri(this.GetAutoDiscoveredServer()), true).DiscoverConnectionInfo(out supportedVersionList, string.Empty)); case OrganizationType.RemoteOnPremise: case OrganizationType.Cloud: return(new ConnectionRetryDiscoverer(forestInfo, uiService).DiscoverConnectionInfo(out supportedVersionList, string.Empty)); default: return(null); } }