示例#1
0
        public static LeafVarBinding SetBankThresholdVariablesEatonPDU_M2(BankThreshold threshold, DevModelConfig modelcfg)
        {
            LeafVarBinding          leafVarBinding         = new LeafVarBinding();
            int                     bankNumber             = threshold.BankNumber;
            EatonGroupEntryMib_M2   eatonGroupEntryMib_M   = new EatonGroupEntryMib_M2(bankNumber);
            EatonGroupCurrentMib_M2 eatonGroupCurrentMib_M = new EatonGroupCurrentMib_M2(bankNumber);

            if (!string.IsNullOrEmpty(threshold.BankName))
            {
                leafVarBinding.Add(eatonGroupEntryMib_M.GroupName, threshold.BankName);
            }
            else
            {
                leafVarBinding.Add(eatonGroupEntryMib_M.GroupName, "/empty");
            }
            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(eatonGroupCurrentMib_M.MaxCurrentMT, System.Convert.ToInt32(threshold.MaxCurrentMT * 1000f));
            }
            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(eatonGroupCurrentMib_M.CurrentUpperCritical, System.Convert.ToInt32(threshold.MaxCurrentMT * 1000f));
            }
            return(leafVarBinding);
        }
示例#2
0
        public static LeafVarBinding SetDeviceThresholdVariablesEatonPDU_M2(DeviceThreshold threshold, DevModelConfig modelcfg)
        {
            int                     inputNum               = 1;
            LeafVarBinding          leafVarBinding         = new LeafVarBinding();
            EatonInputCurrentMib_M2 eatonInputCurrentMib_M = new EatonInputCurrentMib_M2(inputNum);
            EatonInputVoltageMib_M2 eatonInputVoltageMib_M = new EatonInputVoltageMib_M2(inputNum);

            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(eatonInputCurrentMib_M.MaxCurrentMT, System.Convert.ToInt32(threshold.MaxCurrentMT * 1000f));
            }
            if (threshold.MaxVoltageMT != -500f)
            {
                leafVarBinding.Add(eatonInputVoltageMib_M.MaxVoltageMT, System.Convert.ToInt32(threshold.MaxVoltageMT * 1000f));
            }
            if (threshold.MinVoltageMT != -500f)
            {
                leafVarBinding.Add(eatonInputVoltageMib_M.MinVoltageMt, System.Convert.ToInt32(threshold.MinVoltageMT * 1000f));
            }
            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(eatonInputCurrentMib_M.CurrentUpperCritical, System.Convert.ToInt32(threshold.MaxCurrentMT * 1000f));
            }
            if (threshold.MaxVoltageMT != -500f)
            {
                leafVarBinding.Add(eatonInputVoltageMib_M.VoltageUpperCritical, System.Convert.ToInt32(threshold.MaxVoltageMT * 1000f));
            }
            return(leafVarBinding);
        }
示例#3
0
        public static LeafVarBinding GetEatonPDUPropertiesRequest_M2()
        {
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(EatonPDUBaseMib_M2.DeviceName);
            leafVarBinding.Add(EatonPDUBaseMib_M2.FWversion);
            leafVarBinding.Add(EatonPDUBaseMib_M2.Mac);
            leafVarBinding.Add(EatonPDUBaseMib_M2.ModelName);
            return(leafVarBinding);
        }
示例#4
0
        public static LeafVarBinding GetApcPDUPropertiesRequest()
        {
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(ApcPDUBaseMib.DeviceName);
            leafVarBinding.Add(ApcPDUBaseMib.FWversion);
            leafVarBinding.Add(ApcPDUBaseMib.Mac);
            leafVarBinding.Add(ApcPDUBaseMib.ModelName);
            return(leafVarBinding);
        }
示例#5
0
        public static System.Collections.Generic.List <LeafVarBinding> GetValuesRequestApcPDU(DevModelConfig modelcfg, DevRealConfig realcfg, int sensorNum)
        {
            int num     = 1;
            int bankNum = modelcfg.bankNum;

            System.Collections.Generic.List <LeafVarBinding> list = new System.Collections.Generic.List <LeafVarBinding>();
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(ApcPDUBaseMib.Mac);
            for (int i = 1; i <= num; i++)
            {
                ApcDeviceStatusMib apcDeviceStatusMib = new ApcDeviceStatusMib(i);
                leafVarBinding.Add(apcDeviceStatusMib.PowerStatus);
                leafVarBinding.Add(apcDeviceStatusMib.PowerDsptStatus);
                ApcPhaseStatusMib apcPhaseStatusMib = new ApcPhaseStatusMib(i);
                leafVarBinding.Add(apcPhaseStatusMib.CurrentStatus);
                leafVarBinding.Add(apcPhaseStatusMib.VoltageStatus);
            }
            for (int j = 1; j <= bankNum; j++)
            {
                ApcBankStatusMib apcBankStatusMib = new ApcBankStatusMib(j);
                leafVarBinding.Add(apcBankStatusMib.CurrentStatus);
            }
            for (int k = 1; k <= sensorNum; k++)
            {
                ApcSensorStatusMib apcSensorStatusMib = new ApcSensorStatusMib(k);
                leafVarBinding.Add(apcSensorStatusMib.Temperature);
                leafVarBinding.Add(apcSensorStatusMib.Humidity);
            }
            list.Add(leafVarBinding);
            return(list);
        }
示例#6
0
        public virtual System.Collections.Generic.Dictionary <string, string> GetBulk(string startVariable)
        {
            if (string.IsNullOrEmpty(startVariable))
            {
                throw new System.ArgumentNullException("The startVariable for the " + SnmpOperationType.GetBulk + " operation is null or empty.");
            }
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(startVariable);
            return(this.SendPacket(SnmpOperationType.GetBulk, leafVarBinding));
        }
示例#7
0
        public static System.Collections.Generic.List <LeafVarBinding> SetBankThresholdVariablesApcPDU(BankThreshold threshold, DevModelConfig modelcfg)
        {
            System.Collections.Generic.List <LeafVarBinding> list = new System.Collections.Generic.List <LeafVarBinding>();
            LeafVarBinding   leafVarBinding   = new LeafVarBinding();
            LeafVarBinding   leafVarBinding2  = new LeafVarBinding();
            int              bankNumber       = threshold.BankNumber;
            ApcBankConfigMib apcBankConfigMib = new ApcBankConfigMib(bankNumber);

            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(apcBankConfigMib.MinCurrentConfig, 0);
                leafVarBinding.Add(apcBankConfigMib.NearCurrentConfig, 1);
                leafVarBinding2.Add(apcBankConfigMib.MaxCurrentConfig, System.Convert.ToInt32(threshold.MaxCurrentMT));
                leafVarBinding2.Add(apcBankConfigMib.NearCurrentConfig, System.Convert.ToInt32(threshold.MaxCurrentMT));
            }
            if (threshold.MinCurrentMt != -500f)
            {
                leafVarBinding2.Add(apcBankConfigMib.MinCurrentConfig, System.Convert.ToInt32(threshold.MinCurrentMt));
            }
            list.Add(leafVarBinding);
            list.Add(leafVarBinding2);
            return(list);
        }
示例#8
0
        public static System.Collections.Generic.List <LeafVarBinding> SetSensorThresholdVariablesApcPDU(SensorThreshold threshold, DevModelConfig modelcfg)
        {
            System.Collections.Generic.List <LeafVarBinding> list = new System.Collections.Generic.List <LeafVarBinding>();
            LeafVarBinding     leafVarBinding     = new LeafVarBinding();
            LeafVarBinding     leafVarBinding2    = new LeafVarBinding();
            int                sensorNumber       = threshold.SensorNumber;
            ApcSensorConfigMib apcSensorConfigMib = new ApcSensorConfigMib(sensorNumber);

            if (threshold.MaxTemperatureMT != -500f && threshold.MaxTemperatureMT != -600f)
            {
                leafVarBinding.Add(apcSensorConfigMib.HighTemperature, 0);
                leafVarBinding2.Add(apcSensorConfigMib.MaxTemperature, System.Convert.ToInt32(threshold.MaxTemperatureMT));
                leafVarBinding2.Add(apcSensorConfigMib.HighTemperature, System.Convert.ToInt32(threshold.MaxTemperatureMT) - 1);
            }
            if (threshold.MinHumidityMT != -500f && threshold.MinHumidityMT != -600f)
            {
                leafVarBinding.Add(apcSensorConfigMib.LowHumidity, 99);
                leafVarBinding2.Add(apcSensorConfigMib.MinHumidity, System.Convert.ToInt32(threshold.MinHumidityMT));
                leafVarBinding2.Add(apcSensorConfigMib.LowHumidity, System.Convert.ToInt32(threshold.MinHumidityMT) + 1);
            }
            list.Add(leafVarBinding);
            list.Add(leafVarBinding2);
            return(list);
        }
示例#9
0
        public static System.Collections.Generic.List <LeafVarBinding> SetDeviceThresholdVariablesApcPDU(DeviceThreshold threshold, DevModelConfig modelcfg)
        {
            int inputNum = 1;

            System.Collections.Generic.List <LeafVarBinding> list = new System.Collections.Generic.List <LeafVarBinding>();
            ApcDeviceConfigMib apcDeviceConfigMib = new ApcDeviceConfigMib(inputNum);
            ApcPhaseConfigMib  apcPhaseConfigMib  = new ApcPhaseConfigMib(inputNum);
            LeafVarBinding     leafVarBinding     = new LeafVarBinding();
            LeafVarBinding     leafVarBinding2    = new LeafVarBinding();

            if (threshold.MaxPowerMT != -500f)
            {
                leafVarBinding.Add(apcDeviceConfigMib.MinPowerConfig, 0);
                leafVarBinding.Add(apcDeviceConfigMib.NearPowerConfig, 1);
                leafVarBinding2.Add(apcDeviceConfigMib.MaxPowerConfig, System.Convert.ToInt32(threshold.MaxPowerMT * 10f / 1000f));
                leafVarBinding2.Add(apcDeviceConfigMib.NearPowerConfig, System.Convert.ToInt32(threshold.MaxPowerMT * 10f / 1000f));
            }
            if (threshold.MinPowerMT != -500f)
            {
                leafVarBinding2.Add(apcDeviceConfigMib.MinPowerConfig, System.Convert.ToInt32(threshold.MinPowerMT * 10f / 1000f));
            }
            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(apcPhaseConfigMib.MinCurrentConfig, 0);
                leafVarBinding.Add(apcPhaseConfigMib.NearCurrentConfig, 1);
                leafVarBinding2.Add(apcPhaseConfigMib.MaxCurrentConfig, System.Convert.ToInt32(threshold.MaxCurrentMT));
                leafVarBinding2.Add(apcPhaseConfigMib.NearCurrentConfig, System.Convert.ToInt32(threshold.MaxCurrentMT));
            }
            if (threshold.MinCurrentMT != -500f)
            {
                leafVarBinding2.Add(apcPhaseConfigMib.MinCurrentConfig, System.Convert.ToInt32(threshold.MinCurrentMT));
            }
            list.Add(leafVarBinding);
            list.Add(leafVarBinding2);
            return(list);
        }
示例#10
0
        public static LeafVarBinding SetOutletThresholdVariablesEatonPDU_M2(OutletThreshold threshold, DevModelConfig modelcfg)
        {
            LeafVarBinding           leafVarBinding          = new LeafVarBinding();
            int                      outletNumber            = threshold.OutletNumber;
            EatonOutletEntryMib_M2   eatonOutletEntryMib_M   = new EatonOutletEntryMib_M2(outletNumber);
            EatonOutletVoltageMib_M2 eatonOutletVoltageMib_M = new EatonOutletVoltageMib_M2(outletNumber);
            EatonOutletCurrentMib_M2 eatonOutletCurrentMib_M = new EatonOutletCurrentMib_M2(outletNumber);

            if (!string.IsNullOrEmpty(threshold.OutletName))
            {
                leafVarBinding.Add(eatonOutletEntryMib_M.OutletName, threshold.OutletName);
            }
            else
            {
                leafVarBinding.Add(eatonOutletEntryMib_M.OutletName, "/empty");
            }
            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(eatonOutletCurrentMib_M.MaxCurrentMT, System.Convert.ToInt32(threshold.MaxCurrentMT * 1000f));
            }
            if (threshold.MaxVoltageMT != -500f)
            {
                leafVarBinding.Add(eatonOutletVoltageMib_M.MaxVoltageMT, System.Convert.ToInt32(threshold.MaxVoltageMT * 1000f));
            }
            if (threshold.MinVoltageMT != -500f)
            {
                leafVarBinding.Add(eatonOutletVoltageMib_M.MinVoltageMt, System.Convert.ToInt32(threshold.MinVoltageMT * 1000f));
            }
            if (threshold.MaxCurrentMT != -500f)
            {
                leafVarBinding.Add(eatonOutletCurrentMib_M.CurrentUpperCritical, System.Convert.ToInt32(threshold.MaxCurrentMT * 1000f));
            }
            if (threshold.MaxVoltageMT != -500f)
            {
                leafVarBinding.Add(eatonOutletVoltageMib_M.VoltageUpperCritical, System.Convert.ToInt32(threshold.MaxVoltageMT * 1000f));
            }
            return(leafVarBinding);
        }
示例#11
0
        public static System.Collections.Generic.List <VarBinding> GetThresholdsRequestEatonPDU_M2(DevModelConfig modelcfg, DevRealConfig realcfg)
        {
            int num       = 1;
            int portNum   = realcfg.portNum;
            int bankNum   = realcfg.bankNum;
            int sensorNum = realcfg.sensorNum;

            System.Collections.Generic.List <VarBinding> list = new System.Collections.Generic.List <VarBinding>();
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(EatonPDUBaseMib_M2.Mac);
            leafVarBinding.Add(EatonPDUBaseMib_M2.FWversion);
            leafVarBinding.Add(EatonPDUBaseMib_M2.DeviceName);
            for (int i = 1; i <= num; i++)
            {
                EatonInputCurrentMib_M2 eatonInputCurrentMib_M = new EatonInputCurrentMib_M2(i);
                leafVarBinding.Add(eatonInputCurrentMib_M.MaxCurrentMT);
                EatonInputVoltageMib_M2 eatonInputVoltageMib_M = new EatonInputVoltageMib_M2(i);
                leafVarBinding.Add(eatonInputVoltageMib_M.MinVoltageMt);
                leafVarBinding.Add(eatonInputVoltageMib_M.MaxVoltageMT);
            }
            for (int j = 1; j <= sensorNum; j++)
            {
                EatonSensorTemperatureMib_M2 eatonSensorTemperatureMib_M = new EatonSensorTemperatureMib_M2(j);
                leafVarBinding.Add(eatonSensorTemperatureMib_M.MinTemperatureMt);
                leafVarBinding.Add(eatonSensorTemperatureMib_M.MaxTemperatureMT);
                EatonSensorHumidityMib_M2 eatonSensorHumidityMib_M = new EatonSensorHumidityMib_M2(j);
                leafVarBinding.Add(eatonSensorHumidityMib_M.MinHumidityMt);
                leafVarBinding.Add(eatonSensorHumidityMib_M.MaxHumidityMT);
            }
            list.Add(leafVarBinding);
            LeafVarBinding leafVarBinding2 = new LeafVarBinding();

            for (int k = 1; k <= bankNum; k++)
            {
                EatonGroupEntryMib_M2 eatonGroupEntryMib_M = new EatonGroupEntryMib_M2(k);
                leafVarBinding2.Add(eatonGroupEntryMib_M.GroupName);
                EatonGroupCurrentMib_M2 eatonGroupCurrentMib_M = new EatonGroupCurrentMib_M2(k);
                leafVarBinding2.Add(eatonGroupCurrentMib_M.MaxCurrentMT);
            }
            if (bankNum > 0)
            {
                list.Add(leafVarBinding2);
            }
            if (portNum > 0)
            {
                int           nodes         = 4;
                LeafVBBuilder leafVBBuilder = new LeafVBBuilder(nodes, portNum);
                System.Collections.Generic.List <LeafVarBinding> list2 = new System.Collections.Generic.List <LeafVarBinding>();
                leafVBBuilder.BuildVbByIndex(list2, delegate(int index, LeafVarBinding leafVb)
                {
                    EatonOutletEntryMib_M2 eatonOutletEntryMib_M = new EatonOutletEntryMib_M2(index);
                    leafVb.Add(eatonOutletEntryMib_M.OutletName);
                    EatonOutletVoltageMib_M2 eatonOutletVoltageMib_M = new EatonOutletVoltageMib_M2(index);
                    leafVb.Add(eatonOutletVoltageMib_M.MinVoltageMt);
                    leafVb.Add(eatonOutletVoltageMib_M.MaxVoltageMT);
                    EatonOutletCurrentMib_M2 eatonOutletCurrentMib_M = new EatonOutletCurrentMib_M2(index);
                    leafVb.Add(eatonOutletCurrentMib_M.MaxCurrentMT);
                });
                foreach (LeafVarBinding current in list2)
                {
                    list.Add(current);
                }
            }
            return(list);
        }
示例#12
0
        public static System.Collections.Generic.List <LeafVarBinding> GetValuesRequestEatonPDU_M2(DevModelConfig modelcfg, DevRealConfig realcfg)
        {
            int num        = 1;
            int portNum    = realcfg.portNum;
            int bankNum    = realcfg.bankNum;
            int sensorNum  = realcfg.sensorNum;
            int contactNum = realcfg.contactNum;

            System.Collections.Generic.List <LeafVarBinding> list = new System.Collections.Generic.List <LeafVarBinding>();
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(EatonPDUBaseMib_M2.Mac);
            for (int l = 1; l <= num; l++)
            {
                EatonInputCurrentMib_M2 eatonInputCurrentMib_M = new EatonInputCurrentMib_M2(l);
                leafVarBinding.Add(eatonInputCurrentMib_M.CurrentValue);
                EatonInputVoltageMib_M2 eatonInputVoltageMib_M = new EatonInputVoltageMib_M2(l);
                leafVarBinding.Add(eatonInputVoltageMib_M.VoltageValue);
                EatonInputPowerMib_M2 eatonInputPowerMib_M = new EatonInputPowerMib_M2(1);
                leafVarBinding.Add(eatonInputPowerMib_M.PowerValue);
                leafVarBinding.Add(eatonInputPowerMib_M.PowerValue_VA);
            }
            for (int j = 1; j <= contactNum; j++)
            {
                EatonSensorContactMib_M2 eatonSensorContactMib_M = new EatonSensorContactMib_M2(j);
                leafVarBinding.Add(eatonSensorContactMib_M.ContactStatus);
            }
            for (int k = 1; k <= sensorNum; k++)
            {
                EatonSensorTemperatureMib_M2 eatonSensorTemperatureMib_M = new EatonSensorTemperatureMib_M2(k);
                leafVarBinding.Add(eatonSensorTemperatureMib_M.TemperatureValue);
                EatonSensorHumidityMib_M2 eatonSensorHumidityMib_M = new EatonSensorHumidityMib_M2(k);
                leafVarBinding.Add(eatonSensorHumidityMib_M.HumidityValue);
            }
            list.Add(leafVarBinding);
            if (portNum > 0)
            {
                LeafVBBuilder leafVBBuilder = new LeafVBBuilder(3, portNum);
                leafVBBuilder.BuildVbByIndex(list, delegate(int i, LeafVarBinding leafVb)
                {
                    EatonOutletVoltageMib_M2 eatonOutletVoltageMib_M = new EatonOutletVoltageMib_M2(i);
                    leafVb.Add(eatonOutletVoltageMib_M.VoltageValue);
                    EatonOutletCurrentMib_M2 eatonOutletCurrentMib_M = new EatonOutletCurrentMib_M2(i);
                    leafVb.Add(eatonOutletCurrentMib_M.CurrentValue);
                    EatonOutletPowerMib_M2 eatonOutletPowerMib_M = new EatonOutletPowerMib_M2(i);
                    leafVb.Add(eatonOutletPowerMib_M.PowerValue);
                });
            }
            if (bankNum > 0)
            {
                LeafVBBuilder leafVBBuilder2 = new LeafVBBuilder(2, bankNum);
                leafVBBuilder2.BuildVbByIndex(list, delegate(int i, LeafVarBinding leafVb)
                {
                    EatonGroupCurrentMib_M2 eatonGroupCurrentMib_M = new EatonGroupCurrentMib_M2(i);
                    leafVb.Add(eatonGroupCurrentMib_M.CurrentValue);
                    EatonGroupPowerMib_M2 eatonGroupPowerMib_M = new EatonGroupPowerMib_M2(i);
                    leafVb.Add(eatonGroupPowerMib_M.PowerValue);
                });
            }
            return(list);
        }
示例#13
0
        public static LeafVarBinding GetDiscoveryRequest_ALL()
        {
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(DeviceBaseMib.DeviceName);
            leafVarBinding.Add(DeviceBaseMib.FWversion);
            leafVarBinding.Add(DeviceBaseMib.Mac);
            leafVarBinding.Add(DeviceBaseMib.ModelName);
            leafVarBinding.Add(DashboardMib.DashboradRackname);
            leafVarBinding.Add(EatonPDUBaseMib.DeviceName);
            leafVarBinding.Add(EatonPDUBaseMib.FWversion);
            leafVarBinding.Add(EatonPDUBaseMib.Mac);
            leafVarBinding.Add(EatonPDUBaseMib.ModelName);
            leafVarBinding.Add(EatonPDUBaseMib_M2.DeviceName);
            leafVarBinding.Add(EatonPDUBaseMib_M2.FWversion);
            leafVarBinding.Add(EatonPDUBaseMib_M2.Mac);
            leafVarBinding.Add(EatonPDUBaseMib_M2.ModelName);
            return(leafVarBinding);
        }
示例#14
0
        public static System.Collections.Generic.List <VarBinding> GetThresholdsRequestApcPDU(DevModelConfig modelcfg, DevRealConfig realcfg, int sensorNum)
        {
            int num     = 1;
            int bankNum = modelcfg.bankNum;

            System.Collections.Generic.List <VarBinding> list = new System.Collections.Generic.List <VarBinding>();
            LeafVarBinding leafVarBinding = new LeafVarBinding();

            leafVarBinding.Add(ApcPDUBaseMib.Mac);
            leafVarBinding.Add(ApcPDUBaseMib.FWversion);
            leafVarBinding.Add(ApcPDUBaseMib.DeviceName);
            for (int i = 1; i <= num; i++)
            {
                ApcDeviceConfigMib apcDeviceConfigMib = new ApcDeviceConfigMib(i);
                leafVarBinding.Add(apcDeviceConfigMib.MinPowerConfig);
                leafVarBinding.Add(apcDeviceConfigMib.MaxPowerConfig);
                ApcPhaseConfigMib apcPhaseConfigMib = new ApcPhaseConfigMib(i);
                leafVarBinding.Add(apcPhaseConfigMib.MinCurrentConfig);
                leafVarBinding.Add(apcPhaseConfigMib.MaxCurrentConfig);
            }
            for (int j = 1; j <= bankNum; j++)
            {
                ApcBankConfigMib apcBankConfigMib = new ApcBankConfigMib(j);
                leafVarBinding.Add(apcBankConfigMib.MinCurrentConfig);
                leafVarBinding.Add(apcBankConfigMib.MaxCurrentConfig);
            }
            for (int k = 1; k <= sensorNum; k++)
            {
                ApcSensorConfigMib apcSensorConfigMib = new ApcSensorConfigMib(k);
                leafVarBinding.Add(apcSensorConfigMib.MaxTemperature);
                leafVarBinding.Add(apcSensorConfigMib.MinHumidity);
            }
            list.Add(leafVarBinding);
            return(list);
        }