Ejemplo n.º 1
0
 void IGXDLMSBase.Load(GXXmlReader reader)
 {
     Time      = reader.ReadElementContentAsDateTime("Time");
     TimeZone  = reader.ReadElementContentAsInt("TimeZone");
     Status    = (ClockStatus)reader.ReadElementContentAsInt("Status");
     Begin     = reader.ReadElementContentAsDateTime("Begin");
     End       = reader.ReadElementContentAsDateTime("End");
     Deviation = reader.ReadElementContentAsInt("Deviation");
     Enabled   = reader.ReadElementContentAsInt("Enabled") != 0;
     ClockBase = (ClockBase)reader.ReadElementContentAsInt("ClockBase");
 }
 void IGXDLMSBase.Load(GXXmlReader reader)
 {
     Operator            = reader.ReadElementContentAsString("Operator");
     Status              = (GsmStatus)reader.ReadElementContentAsInt("Status");
     CircuitSwitchStatus = (GsmCircuitSwitchStatus)reader.ReadElementContentAsInt("CircuitSwitchStatus");
     PacketSwitchStatus  = (GsmPacketSwitchStatus)reader.ReadElementContentAsInt("PacketSwitchStatus");
     if (reader.IsStartElement("CellInfo", true))
     {
         CellInfo.CellId        = (UInt16)reader.ReadElementContentAsInt("CellId");
         CellInfo.LocationId    = (UInt16)reader.ReadElementContentAsInt("LocationId");
         CellInfo.SignalQuality = (byte)reader.ReadElementContentAsInt("SignalQuality");
         CellInfo.Ber           = (byte)reader.ReadElementContentAsInt("Ber");
         reader.ReadEndElement("CellInfo");
     }
     AdjacentCells.Clear();
     if (reader.IsStartElement("AdjacentCells", true))
     {
         while (reader.IsStartElement("Item", true))
         {
             AdjacentCell it = new Objects.AdjacentCell();
             it.CellId        = (UInt32)reader.ReadElementContentAsInt("CellId");
             it.SignalQuality = (byte)reader.ReadElementContentAsInt("SignalQuality");
             AdjacentCells.Add(it);
         }
         reader.ReadEndElement("AdjacentCells");
     }
     CaptureTime = reader.ReadElementContentAsDateTime("CaptureTime");
 }
Ejemplo n.º 3
0
        void IGXDLMSBase.Load(GXXmlReader reader)
        {
            if (reader.IsStartElement("MonitoredValue", true))
            {
                ObjectType ot = (ObjectType)reader.ReadElementContentAsInt("ObjectType");
                string     ln = reader.ReadElementContentAsString("LN");
                if (ot != ObjectType.None && ln != null)
                {
                    MonitoredValue = reader.Objects.FindByLN(ot, ln);
                    //If item is not serialized yet.
                    if (MonitoredValue == null)
                    {
                        MonitoredValue             = GXDLMSClient.CreateObject(ot);
                        MonitoredValue.LogicalName = ln;
                    }
                }
                reader.ReadEndElement("MonitoredValue");
            }
            ThresholdActive           = reader.ReadElementContentAsObject("ThresholdActive", null, this, 3);
            ThresholdNormal           = reader.ReadElementContentAsObject("ThresholdNormal", null, this, 4);
            ThresholdEmergency        = reader.ReadElementContentAsObject("ThresholdEmergency", null, this, 5);
            MinOverThresholdDuration  = (UInt16)reader.ReadElementContentAsInt("MinOverThresholdDuration");
            MinUnderThresholdDuration = (UInt16)reader.ReadElementContentAsInt("MinUnderThresholdDuration");
            if (reader.IsStartElement("EmergencyProfile", true))
            {
                EmergencyProfile.ID             = (UInt16)reader.ReadElementContentAsInt("ID");
                EmergencyProfile.ActivationTime = reader.ReadElementContentAsDateTime("Time");
                EmergencyProfile.Duration       = (UInt16)reader.ReadElementContentAsInt("Duration");
                reader.ReadEndElement("EmergencyProfile");
            }
            List <UInt16> list = new List <ushort>();

            if (reader.IsStartElement("EmergencyProfileGroupIDs", true))
            {
                while (reader.IsStartElement("Value", false))
                {
                    list.Add((UInt16)reader.ReadElementContentAsInt("Value"));
                }
                reader.ReadEndElement("EmergencyProfileGroupIDs");
            }
            EmergencyProfileGroupIDs = list.ToArray();
            EmergencyProfileActive   = reader.ReadElementContentAsInt("Active") != 0;

            if (reader.IsStartElement("ActionOverThreshold", true))
            {
                ActionOverThreshold.LogicalName    = reader.ReadElementContentAsString("LN");
                ActionOverThreshold.ScriptSelector = (UInt16)reader.ReadElementContentAsInt("ScriptSelector");
                reader.ReadEndElement("ActionOverThreshold");
            }
            if (reader.IsStartElement("ActionUnderThreshold", true))
            {
                ActionUnderThreshold.LogicalName    = reader.ReadElementContentAsString("LN");
                ActionUnderThreshold.ScriptSelector = (UInt16)reader.ReadElementContentAsInt("ScriptSelector");
                reader.ReadEndElement("ActionUnderThreshold");
            }
        }
Ejemplo n.º 4
0
 void IGXDLMSBase.Load(GXXmlReader reader)
 {
     PaymentMode         = (PaymentMode)reader.ReadElementContentAsInt("PaymentMode");
     AccountStatus       = (AccountStatus)reader.ReadElementContentAsInt("AccountStatus");
     CurrentCreditInUse  = (byte)reader.ReadElementContentAsInt("CurrentCreditInUse");
     CurrentCreditStatus = (AccountCreditStatus)reader.ReadElementContentAsInt("CurrentCreditStatus");
     AvailableCredit     = reader.ReadElementContentAsInt("AvailableCredit");
     AmountToClear       = reader.ReadElementContentAsInt("AmountToClear");
     ClearanceThreshold  = reader.ReadElementContentAsInt("ClearanceThreshold");
     AggregatedDebt      = reader.ReadElementContentAsInt("AggregatedDebt");
     LoadReferences(reader, "CreditReferences", CreditReferences);
     LoadReferences(reader, "ChargeReferences", ChargeReferences);
     LoadCreditChargeConfigurations(reader, CreditChargeConfigurations);
     LoadTokenGatewayConfigurations(reader, TokenGatewayConfigurations);
     AccountActivationTime        = reader.ReadElementContentAsDateTime("AccountActivationTime");
     AccountClosureTime           = reader.ReadElementContentAsDateTime("AccountClosureTime");
     Currency.Name                = reader.ReadElementContentAsString("CurrencyName");
     Currency.Scale               = (sbyte)reader.ReadElementContentAsInt("CurrencyScale");
     Currency.Unit                = (Currency)reader.ReadElementContentAsInt("CurrencyUnit");
     LowCreditThreshold           = reader.ReadElementContentAsInt("LowCreditThreshold");
     NextCreditAvailableThreshold = reader.ReadElementContentAsInt("NextCreditAvailableThreshold");
     MaxProvision       = (UInt16)reader.ReadElementContentAsInt("MaxProvision");
     MaxProvisionPeriod = reader.ReadElementContentAsInt("MaxProvisionPeriod");
 }
        void IGXDLMSBase.Load(GXXmlReader reader)
        {
            Unit   = (Unit)reader.ReadElementContentAsInt("Unit", 0);
            Scaler = reader.ReadElementContentAsDouble("Scaler", 1);
            Value  = reader.ReadElementContentAsObject("Value", null, this, 2);
            Status = reader.ReadElementContentAsObject("Status", null, this, 4);
            GXDateTime dt = reader.ReadElementContentAsDateTime("CaptureTime");

            if (dt == null)
            {
                CaptureTime = DateTime.MinValue;
            }
            else
            {
                CaptureTime = dt.Value.ToLocalTime().LocalDateTime;
            }
        }