private void CreateOrCloseEnclosureMpAlarm(bool isHaveOldAlarm, EnclosureCollection currentState)
 {
     if (currentState.Health != Health.OK)
     {
         if (!isHaveOldAlarm)
         {
             OnLog("Insert Event:Enclosure ManagementPack Missing");
             var alarm = new ApplianceAlarm
             {
                 OptType       = "1",
                 AlarmName     = "Enclosure ManagementPack Missing",
                 AlarmType     = EnumAlarmType.EnclosureMpMissing,
                 PossibleCause = "The Management Pack of the plug-in is uninstalled.",
                 Suggstion     = "import the Huawei.FusionDirector.Enclosure.Library.mpb",
                 Additional    = currentState.ErrorMsg
             };
             var applianceEvent = new ApplianceEvent(alarm);
             ApplianceConnector.Instance.InsertEvent(applianceEvent);
         }
     }
     else
     {
         if (isHaveOldAlarm)
         {
             OnLog("Close Event:Enclosure ManagementPack Missing");
             var alarm = new ApplianceAlarm
             {
                 OptType   = "2",
                 AlarmType = EnumAlarmType.EnclosureMpMissing,
             };
             var applianceEvent = new ApplianceEvent(alarm);
             ApplianceConnector.Instance.InsertEvent(applianceEvent);
         }
     }
 }
        /// <summary>
        /// Updates the enclosure collection.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="existObj">The exist object.</param>
        private void UpdateEnclosureCollection(EnclosureCollection model, MonitoringObject existObj)
        {
            var propertys = this.EnclosureCollectionClass.PropertyCollection;

            existObj[propertys["ResourceName"]].Value = model.ResourceName;
            existObj[propertys["Health"]].Value       = model.Health.ToString();
            existObj[this.DisplayNameField].Value     = model.ResourceName;
        }
        /// <summary>
        /// Creates the enclosure collection.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <returns>MPObject.</returns>
        private MPObject CreateEnclosureCollection(EnclosureCollection model)
        {
            var propertys = this.EnclosureCollectionClass.PropertyCollection;
            var obj       = new MPObject(MGroup.Instance, this.EnclosureCollectionClass);

            obj[propertys["ResourceName"]].Value = model.ResourceName;
            obj[propertys["Health"]].Value       = model.Health.ToString();
            obj[this.DisplayNameField].Value     = model.ResourceName;
            return(obj);
        }