/// <summary>
        /// Set PSU ALERT Default Power Cap for all blades
        /// </summary>
        public Contracts.AllBladesResponse SetAllBladesPsuAlertDefaultPowerCap(ushort defaultPowerCapInWatts, ushort waitTimeInMsecs)
        {
            Contracts.AllBladesResponse responses = new Contracts.AllBladesResponse();
            responses.statusDescription = String.Empty;
            responses.bladeResponseCollection = new List<BladeResponse>();
            Contracts.CompletionCode[] bladeInternalResponseCollection = new Contracts.CompletionCode[ConfigLoaded.Population];
            Tracer.WriteUserLog("Invoked SetAllBladesPsuAlertDefaultPowerCap");
            Tracer.WriteInfo("Received SetAllBladesPsuAlertDefaultPowerCap for all blades");

            for (int loop = 0; loop < ConfigLoaded.Population; loop++)
            {
                responses.bladeResponseCollection.Add(SetBladePsuAlertDefaultPowerCap(loop + 1, defaultPowerCapInWatts, waitTimeInMsecs));
                // Set the internal blade response to the blade completion code.
                bladeInternalResponseCollection[loop] = responses.bladeResponseCollection[loop].completionCode;
            }

            Contracts.ChassisResponse varResponse = new Contracts.ChassisResponse();
            varResponse = ChassisManagerUtil.ValidateAllBladeResponse(bladeInternalResponseCollection);
            responses.completionCode = varResponse.completionCode;
            responses.statusDescription = varResponse.statusDescription;
            return responses;
        }
        /// <summary>
        /// Activate Deactivate PSU ALERT Action against all blades.
        /// </summary>
        public Contracts.AllBladesResponse SetAllBladesPsuAlert(bool enableProchot, int action, bool removeCap)
        {
            Contracts.AllBladesResponse responses = new Contracts.AllBladesResponse();
            responses.completionCode = Contracts.CompletionCode.Unknown;
            responses.statusDescription = String.Empty;
            responses.bladeResponseCollection = new List<BladeResponse>();
            Contracts.CompletionCode[] bladeInternalResponseCollection = new Contracts.CompletionCode[ConfigLoaded.Population];

            Tracer.WriteUserLog("Invoked SetAllBladesPsuAlert");
            Tracer.WriteInfo("Received SetAllBladesPsuAlert");

            for (int loop = 0; loop < ConfigLoaded.Population; loop++)
            {
                responses.bladeResponseCollection.Add(SetBladePsuAlert(loop + 1, enableProchot, action, removeCap));
                // Set the internal blade response to the blade completion code.
                bladeInternalResponseCollection[loop] = responses.bladeResponseCollection[loop].completionCode;
            }

            Contracts.ChassisResponse varResponse = new Contracts.ChassisResponse();
            varResponse = ChassisManagerUtil.ValidateAllBladeResponse(bladeInternalResponseCollection);
            responses.completionCode = varResponse.completionCode;
            responses.statusDescription = varResponse.statusDescription;
            return responses;
        }