Ejemplo n.º 1
0
        public static Health GetHealth(StateDescriptionDto state, IEnumerable <NodeDto> dcs)
        {
            Health health = Health.Full;

            if (state.Description == Constants.StateLegacyMode)
            {
                health = Health.Legacy;
            }
            else
            {
                var activeDcs = dcs.Count(x => x.Active);
                health = (activeDcs >= 2) ? Health.Full
                                          : ((activeDcs == 1) ? Health.Limited
                                                              : Health.Down);
            }
            return(health);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets the description corresponding to the CDC DC State
        /// </summary>
        /// <returns>The description.</returns>
        /// <param name="cdcState">Cdc state.</param>
        public static StateDescriptionDto GetStateDescription(CDC_DC_STATE cdcState)
        {
            var stateDescription = new StateDescriptionDto();

            if (cdcState == CDC_DC_STATE.CDC_DC_STATE_LEGACY)
            {
                stateDescription.Description     = Constants.StateLegacyMode;
                stateDescription.LongDescription = Constants.StateDescHighAvailabilityDisabled;
            }
            else if (cdcState == CDC_DC_STATE.CDC_DC_STATE_NO_DC_LIST)
            {
                stateDescription.Description     = Constants.StateNoKnowledgeOfAnyDcs;
                stateDescription.LongDescription = Constants.StateDescNoKnowledgeOfAnyDcs;
            }
            else if (cdcState == CDC_DC_STATE.CDC_DC_STATE_SITE_AFFINITIZED)
            {
                stateDescription.Description     = Constants.StateSiteAffinitized;
                stateDescription.LongDescription = Constants.StateDescSiteAffinitized;
            }
            else if (cdcState == CDC_DC_STATE.CDC_DC_STATE_OFF_SITE)
            {
                stateDescription.Description     = Constants.StateAffinitizedToOffsiteDc;
                stateDescription.LongDescription = Constants.StateDescAffinitizedToOffsiteDc;
            }
            else if (cdcState == CDC_DC_STATE.CDC_DC_STATE_NO_DCS_ALIVE)
            {
                stateDescription.Description     = Constants.StateAllKnownDcsAreDown;
                stateDescription.LongDescription = Constants.StateDescAllKnownDcsAreDown;
            }
            else
            {
                stateDescription.Description     = Constants.StateInvalidState;
                stateDescription.LongDescription = Constants.StateDescInvalidState;
            }
            return(stateDescription);
        }