public MonadConnectionInfo GetMonadConnectionInfo(ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel)
        {
            MonadConnectionInfo monadConnectionInfo = this.GenerateMonadConnectionInfo();

            if (serializationLevel != ExchangeRunspaceConfigurationSettings.SerializationLevel.Full && monadConnectionInfo != null)
            {
                monadConnectionInfo = new MonadConnectionInfo(PSConnectionInfoSingleton.ExtractValidUri(monadConnectionInfo), monadConnectionInfo.Credentials, monadConnectionInfo.ShellUri, monadConnectionInfo.FileTypesXml, monadConnectionInfo.AuthenticationMechanism, serializationLevel, monadConnectionInfo.ClientApplication, monadConnectionInfo.ClientVersion, monadConnectionInfo.MaximumConnectionRedirectionCount, monadConnectionInfo.SkipServerCertificateCheck);
            }
            return(monadConnectionInfo);
        }
        // Token: 0x060013F2 RID: 5106 RVA: 0x00046384 File Offset: 0x00044584
        internal static ExchangeRunspaceConfigurationSettings CreateConfigurationSettingsFromNameValueCollection(Uri uri, NameValueCollection collection, ExchangeRunspaceConfigurationSettings.ExchangeApplication defaultApplication)
        {
            string text = collection.Get("organization");

            ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel = ExchangeRunspaceConfigurationSettings.SerializationLevel.Partial;
            if (collection.Get("serializationLevel") != null)
            {
                Enum.TryParse <ExchangeRunspaceConfigurationSettings.SerializationLevel>(collection.Get("serializationLevel"), true, out serializationLevel);
            }
            string text2 = collection.Get("clientApplication");

            ExchangeRunspaceConfigurationSettings.ExchangeApplication exchangeApplication = defaultApplication;
            if (text2 != null)
            {
                Enum.TryParse <ExchangeRunspaceConfigurationSettings.ExchangeApplication>(text2, true, out exchangeApplication);
            }
            PSLanguageMode pslanguageMode = PSLanguageMode.NoLanguage;

            if (exchangeApplication == ExchangeRunspaceConfigurationSettings.ExchangeApplication.EMC)
            {
                pslanguageMode = PSLanguageMode.NoLanguage;
            }
            ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod = ExchangeRunspaceConfigurationSettings.ProxyMethod.None;
            if (collection.Get("proxyMethod") != null)
            {
                Enum.TryParse <ExchangeRunspaceConfigurationSettings.ProxyMethod>(collection.Get("proxyMethod"), true, out proxyMethod);
            }
            bool flag = false;

            if (collection.Get("proxyFullSerialization") != null)
            {
                bool.TryParse(collection.Get("proxyFullSerialization"), out flag);
            }
            bool encodeDecodeKey = true;

            if (collection.Get("X-EncodeDecode-Key") != null)
            {
                bool.TryParse(collection.Get("X-EncodeDecode-Key"), out encodeDecodeKey);
            }
            bool isProxy = ExchangeRunspaceConfigurationSettings.IsCalledFromProxy(collection);

            return(new ExchangeRunspaceConfigurationSettings(uri, exchangeApplication, text, serializationLevel, pslanguageMode, proxyMethod, flag, encodeDecodeKey, isProxy));
        }
        public MonadConnectionInfo(Uri server, PSCredential credentials, string shellUri, string typesFile, AuthenticationMechanism authenticationMechanism, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string clientVersion, int maxRedirectionCount, bool skipCertificateCheck) : base(server, credentials, shellUri, typesFile, authenticationMechanism, skipCertificateCheck, maxRedirectionCount)
        {
            Uri uri = server;

            if (serializationLevel != ExchangeRunspaceConfigurationSettings.SerializationLevel.Partial)
            {
                uri = MonadConnectionInfo.AppendUriProperty(uri, "serializationLevel".ToString(), serializationLevel.ToString());
            }
            if (clientApplication != ExchangeRunspaceConfigurationSettings.ExchangeApplication.Unknown)
            {
                uri = MonadConnectionInfo.AppendUriProperty(uri, "clientApplication".ToString(), clientApplication.ToString());
            }
            if (MonadConnectionInfo.exchangeClientVersion != null)
            {
                uri = MonadConnectionInfo.AppendUriProperty(uri, "ExchClientVer", MonadConnectionInfo.exchangeClientVersion);
            }
            this.serverUri          = uri;
            this.clientApplication  = clientApplication;
            this.serializationLevel = serializationLevel;
            this.clientVersion      = clientVersion;
        }
 public MonadConnectionInfo(Uri server, PSCredential credentials, string shellUri, string typesFile, AuthenticationMechanism authenticationMechanism, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string clientVersion) : this(server, credentials, shellUri, typesFile, authenticationMechanism, serializationLevel, clientApplication, clientVersion, 0, true)
 {
 }
 // Token: 0x060013D2 RID: 5074 RVA: 0x00046180 File Offset: 0x00044380
 internal ExchangeRunspaceConfigurationSettings(Uri connectionUri, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, PSLanguageMode languageMode, ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod, bool proxyFullSerialization, bool encodeDecodeKey, bool isProxy, ExchangeRunspaceConfigurationSettings.ExchangeUserType user, IEnumerable <KeyValuePair <string, string> > additionalConstraints)
 {
     this.clientApplication      = clientApplication;
     this.serializationLevel     = serializationLevel;
     this.tenantOrganization     = tenantOrganization;
     this.languageMode           = languageMode;
     this.originalConnectionUri  = connectionUri;
     this.proxyMethod            = proxyMethod;
     this.proxyFullSerialization = proxyFullSerialization;
     this.EncodeDecodeKey        = encodeDecodeKey;
     this.IsProxy  = isProxy;
     this.UserType = user;
     this.additionalConstraints = additionalConstraints;
 }
 // Token: 0x060013D1 RID: 5073 RVA: 0x0004615C File Offset: 0x0004435C
 internal ExchangeRunspaceConfigurationSettings(Uri connectionUri, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, PSLanguageMode languageMode, ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod, bool proxyFullSerialization, bool encodeDecodeKey, bool isProxy) : this(connectionUri, clientApplication, tenantOrganization, serializationLevel, languageMode, proxyMethod, proxyFullSerialization, encodeDecodeKey, isProxy, ExchangeRunspaceConfigurationSettings.ExchangeUserType.Unknown, null)
 {
 }
 // Token: 0x060013CF RID: 5071 RVA: 0x00046118 File Offset: 0x00044318
 internal ExchangeRunspaceConfigurationSettings(Uri connectionUri, ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel, PSLanguageMode languageMode, ExchangeRunspaceConfigurationSettings.ProxyMethod proxyMethod) : this(connectionUri, clientApplication, tenantOrganization, serializationLevel, languageMode, proxyMethod, false, false)
 {
 }
 // Token: 0x060013CD RID: 5069 RVA: 0x000460FB File Offset: 0x000442FB
 internal ExchangeRunspaceConfigurationSettings(ExchangeRunspaceConfigurationSettings.ExchangeApplication clientApplication, string tenantOrganization, ExchangeRunspaceConfigurationSettings.SerializationLevel serializationLevel) : this(null, clientApplication, tenantOrganization, serializationLevel, PSLanguageMode.NoLanguage)
 {
 }