コード例 #1
0
        internal static ExchangeAssistance GetExchangeAssistanceObjectFromAD(OrganizationId organizationId)
        {
            ExchangeAssistance result = null;

            try
            {
                IConfigurationSession configurationSession;
                ADObjectId            adobjectId;
                if (organizationId == OrganizationId.ForestWideOrgId)
                {
                    configurationSession = HelpProvider.GetOrganizationConfigurationSession(organizationId);
                    adobjectId           = configurationSession.GetOrgContainerId();
                }
                else
                {
                    SharedConfiguration sharedConfiguration = SharedConfiguration.GetSharedConfiguration(organizationId);
                    if (sharedConfiguration != null)
                    {
                        adobjectId           = sharedConfiguration.SharedConfigurationCU.Id;
                        configurationSession = DirectorySessionFactory.Default.GetTenantOrTopologyConfigurationSession(ConsistencyMode.IgnoreInvalid, sharedConfiguration.GetSharedConfigurationSessionSettings(), 955, "GetExchangeAssistanceObjectFromAD", "f:\\15.00.1497\\sources\\dev\\UA\\src\\HelpProvider\\HelpProvider.cs");
                    }
                    else
                    {
                        adobjectId           = organizationId.ConfigurationUnit;
                        configurationSession = HelpProvider.GetOrganizationConfigurationSession(organizationId);
                    }
                }
                ADObjectId childId = adobjectId.GetChildId("ExchangeAssistance").GetChildId(HelpProvider.CurrentVersionExchangeAssistanceContainerName);
                result = configurationSession.Read <ExchangeAssistance>(childId);
            }
            catch (ADTransientException ex)
            {
                ExTraceGlobals.CoreTracer.TraceDebug <string>(0L, "ADTransient Exception in LoadBaseURL: {0}", ex.Message);
            }
            catch (ADOperationException ex2)
            {
                ExTraceGlobals.CoreTracer.TraceDebug <string>(0L, "ADOperationException in LoadBaseURL: {0}", ex2.Message);
            }
            return(result);
        }
コード例 #2
0
        protected override HelpProviderCache.Item CreateOnCacheMiss(OrganizationId key, ref bool shouldAdd)
        {
            shouldAdd = true;
            ExchangeAssistance exchangeAssistanceObjectFromAD = HelpProvider.GetExchangeAssistanceObjectFromAD(key);
            Uri  privacyStatementUrl       = null;
            Uri  communityUrl              = null;
            bool?privacyLinkDisplayEnabled = null;

            if (exchangeAssistanceObjectFromAD != null)
            {
                if (exchangeAssistanceObjectFromAD.CommunityLinkDisplayEnabled)
                {
                    communityUrl = exchangeAssistanceObjectFromAD.CommunityURL;
                }
                privacyLinkDisplayEnabled = new bool?(exchangeAssistanceObjectFromAD.PrivacyLinkDisplayEnabled);
                if (exchangeAssistanceObjectFromAD.PrivacyLinkDisplayEnabled)
                {
                    privacyStatementUrl = exchangeAssistanceObjectFromAD.PrivacyStatementURL;
                }
            }
            return(new HelpProviderCache.Item(privacyStatementUrl, communityUrl, privacyLinkDisplayEnabled));
        }
コード例 #3
0
 private static Uri UrlConstructHelperOwa(string contentId, HelpProvider.OwaHelpExperience owaExp, params string[] queryParams)
 {
     return(HelpProvider.ConstructFinalHelpUrl(HelpProvider.GetOwaBaseUrl(owaExp), contentId, HelpProvider.GetUserHelpLanguage(), queryParams));
 }
コード例 #4
0
 private static Uri LocaleBasedUrlConstructHelper(string contentId, string locale, params string[] queryParams)
 {
     return(HelpProvider.ConstructFinalHelpUrl(HelpProvider.baseUrl, contentId, locale, queryParams));
 }
コード例 #5
0
 private static Uri UrlConstructHelper(string contentId, params string[] queryParams)
 {
     return(HelpProvider.ConstructFinalHelpUrl(HelpProvider.baseUrl, contentId, HelpProvider.GetUserHelpLanguage(), queryParams));
 }
コード例 #6
0
        private static void LoadBaseUrlViaADSession(HelpProvider.HelpAppName appName)
        {
            ExchangeAssistance exchangeAssistanceObjectFromAD = HelpProvider.GetExchangeAssistanceObjectFromAD(OrganizationId.ForestWideOrgId);

            if (exchangeAssistanceObjectFromAD != null)
            {
                HelpProvider.RegisterChangeNotification(exchangeAssistanceObjectFromAD.Id);
                if (appName.Equals(HelpProvider.HelpAppName.Ecp) || appName.Equals(HelpProvider.HelpAppName.TenantMonitoring))
                {
                    if (exchangeAssistanceObjectFromAD.ControlPanelHelpURL != null)
                    {
                        HelpProvider.baseUrl = Utilities.NormalizeUrl(exchangeAssistanceObjectFromAD.ControlPanelHelpURL);
                    }
                    if (exchangeAssistanceObjectFromAD.ControlPanelFeedbackEnabled)
                    {
                        HelpProvider.controlPanelFeedbackUrl = exchangeAssistanceObjectFromAD.ControlPanelFeedbackURL;
                    }
                    else
                    {
                        HelpProvider.controlPanelFeedbackUrl = null;
                    }
                }
                else if (appName.Equals(HelpProvider.HelpAppName.Owa))
                {
                    if (exchangeAssistanceObjectFromAD.OWALightHelpURL != null)
                    {
                        HelpProvider.baseOwaLightUrl = exchangeAssistanceObjectFromAD.OWALightHelpURL;
                    }
                    if (exchangeAssistanceObjectFromAD.OWAHelpURL != null)
                    {
                        HelpProvider.baseOwaPremiumUrl = exchangeAssistanceObjectFromAD.OWAHelpURL;
                    }
                    if (exchangeAssistanceObjectFromAD.OWAFeedbackEnabled)
                    {
                        HelpProvider.owaPremiumFeedbackUrl = exchangeAssistanceObjectFromAD.OWAFeedbackURL;
                    }
                    else
                    {
                        HelpProvider.owaPremiumFeedbackUrl = null;
                    }
                    if (exchangeAssistanceObjectFromAD.OWALightFeedbackEnabled)
                    {
                        HelpProvider.owaLightFeedbackUrl = exchangeAssistanceObjectFromAD.OWALightFeedbackURL;
                    }
                    else
                    {
                        HelpProvider.owaLightFeedbackUrl = null;
                    }
                }
                if (exchangeAssistanceObjectFromAD.PrivacyLinkDisplayEnabled)
                {
                    HelpProvider.privacyStatementUrl = exchangeAssistanceObjectFromAD.PrivacyStatementURL;
                }
                else
                {
                    HelpProvider.privacyStatementUrl = null;
                }
                if (exchangeAssistanceObjectFromAD.WindowsLiveAccountURLEnabled)
                {
                    HelpProvider.windowsLiveAccountUrl = exchangeAssistanceObjectFromAD.WindowsLiveAccountPageURL;
                }
                else
                {
                    HelpProvider.windowsLiveAccountUrl = null;
                }
                if (exchangeAssistanceObjectFromAD.CommunityLinkDisplayEnabled)
                {
                    HelpProvider.communityUrl = exchangeAssistanceObjectFromAD.CommunityURL;
                    return;
                }
                HelpProvider.communityUrl = null;
            }
        }
コード例 #7
0
 private static string GetServicePlanInfo(ExchangeRunspaceConfiguration rbacConfiguration)
 {
     return(HelpProvider.ConstructServicePlanInfo(Utilities.GetServicePlanName(rbacConfiguration)));
 }
コード例 #8
0
        private static string GetUserHelpLanguage()
        {
            CultureInfo userCulture = HelpProvider.GetUserCulture();

            return(userCulture.Name);
        }
コード例 #9
0
 public static bool TryGetCommunityUrl(OrganizationId organizationId, out Uri orgCommunityUrl)
 {
     orgCommunityUrl = HelpProvider.GetCommunityUrl(organizationId);
     return(orgCommunityUrl != null);
 }
コード例 #10
0
 public static void InitializeViaCmdlet(HelpProvider.HelpAppName appName, RunspaceServerSettingsPresentationObject runspaceServerSettings, MonadConnectionInfo monadConnectionInfo)
 {
     HelpProvider.LoadBaseUrlViaCmdlet(appName, runspaceServerSettings, monadConnectionInfo);
     HelpProvider.initializedViaCmdlet = true;
 }
コード例 #11
0
 public static bool TryGetPrivacyStatementUrl(OrganizationId organizationId, out Uri orgPrivacyStatementUrl)
 {
     orgPrivacyStatementUrl = HelpProvider.GetPrivacyStatementUrl(organizationId);
     return(orgPrivacyStatementUrl != null);
 }
コード例 #12
0
 public static void Initialize(HelpProvider.HelpAppName appName)
 {
     HelpProvider.LoadBaseUrl(appName);
     HelpProvider.initializedViaCmdlet = false;
 }