Gurux.DLMS.GXDLMS.HandleConfirmedServiceError C# (CSharp) Méthode

HandleConfirmedServiceError() static private méthode

static private HandleConfirmedServiceError ( GXReplyData data ) : void
data GXReplyData
Résultat void
        internal static void HandleConfirmedServiceError(GXReplyData data)
        {
            if (data.Xml != null)
            {
                data.Xml.AppendStartTag(Command.ConfirmedServiceError);
                if (data.Xml.OutputType == TranslatorOutputType.StandardXml)
                {
                    data.Data.GetUInt8();
                    data.Xml.AppendStartTag(TranslatorTags.InitiateError);
                    ServiceError type = (ServiceError)data.Data.GetUInt8();

                    String tag = TranslatorStandardTags.serviceErrorToString(type);
                    String value = TranslatorStandardTags.GetServiceErrorValue(type,
                            (byte)data.Data.GetUInt8());
                    data.Xml.AppendLine("x:" + tag, null, value);
                    data.Xml.AppendEndTag(TranslatorTags.InitiateError);
                }
                else
                {
                    data.Xml.AppendLine(TranslatorTags.Service, "Value", data
                            .Xml.IntegerToHex(data.Data.GetUInt8(), 2));
                    ServiceError type = (ServiceError)data.Data.GetUInt8();
                    data.Xml.AppendStartTag(TranslatorTags.ServiceError);
                    data.Xml.AppendLine(
                            TranslatorSimpleTags.ServiceErrorToString(type),
                            "Value", TranslatorSimpleTags.GetServiceErrorValue(type,
                                    data.Data.GetUInt8()));
                    data.Xml.AppendEndTag(TranslatorTags.ServiceError);
                }
                data.Xml.AppendEndTag(Command.ConfirmedServiceError);
            }
            else
            {
                ConfirmedServiceError service = (ConfirmedServiceError)data.Data.GetUInt8();
                ServiceError type = (ServiceError)data.Data.GetUInt8();
                throw new GXDLMSException(service, type, data.Data.GetUInt8());
            }
        }