Exemplo n.º 1
0
        public static GetTraceResponse Unmarshall(UnmarshallerContext context)
        {
            GetTraceResponse getTraceResponse = new GetTraceResponse();

            getTraceResponse.HttpResponse = context.HttpResponse;
            getTraceResponse.RequestId    = context.StringValue("GetTrace.RequestId");

            List <GetTraceResponse.GetTrace_Span> getTraceResponse_spans = new List <GetTraceResponse.GetTrace_Span>();

            for (int i = 0; i < context.Length("GetTrace.Spans.Length"); i++)
            {
                GetTraceResponse.GetTrace_Span span = new GetTraceResponse.GetTrace_Span();
                span.TraceID       = context.StringValue("GetTrace.Spans[" + i + "].TraceID");
                span.OperationName = context.StringValue("GetTrace.Spans[" + i + "].OperationName");
                span.Duration      = context.LongValue("GetTrace.Spans[" + i + "].Duration");
                span.ServiceName   = context.StringValue("GetTrace.Spans[" + i + "].ServiceName");
                span.ServiceIp     = context.StringValue("GetTrace.Spans[" + i + "].ServiceIp");
                span.Timestamp     = context.LongValue("GetTrace.Spans[" + i + "].Timestamp");
                span.RpcId         = context.StringValue("GetTrace.Spans[" + i + "].RpcId");
                span.ResultCode    = context.StringValue("GetTrace.Spans[" + i + "].ResultCode");
                span.HaveStack     = context.BooleanValue("GetTrace.Spans[" + i + "].HaveStack");

                List <GetTraceResponse.GetTrace_Span.GetTrace_TagEntry> span_tagEntryList = new List <GetTraceResponse.GetTrace_Span.GetTrace_TagEntry>();
                for (int j = 0; j < context.Length("GetTrace.Spans[" + i + "].TagEntryList.Length"); j++)
                {
                    GetTraceResponse.GetTrace_Span.GetTrace_TagEntry tagEntry = new GetTraceResponse.GetTrace_Span.GetTrace_TagEntry();
                    tagEntry.Key    = context.StringValue("GetTrace.Spans[" + i + "].TagEntryList[" + j + "].Key");
                    tagEntry._Value = context.StringValue("GetTrace.Spans[" + i + "].TagEntryList[" + j + "].Value");

                    span_tagEntryList.Add(tagEntry);
                }
                span.TagEntryList = span_tagEntryList;

                List <GetTraceResponse.GetTrace_Span.GetTrace_LogEvent> span_logEventList = new List <GetTraceResponse.GetTrace_Span.GetTrace_LogEvent>();
                for (int j = 0; j < context.Length("GetTrace.Spans[" + i + "].LogEventList.Length"); j++)
                {
                    GetTraceResponse.GetTrace_Span.GetTrace_LogEvent logEvent = new GetTraceResponse.GetTrace_Span.GetTrace_LogEvent();
                    logEvent.Timestamp = context.LongValue("GetTrace.Spans[" + i + "].LogEventList[" + j + "].Timestamp");

                    List <GetTraceResponse.GetTrace_Span.GetTrace_LogEvent.GetTrace_TagEntry2> logEvent_tagEntryList1 = new List <GetTraceResponse.GetTrace_Span.GetTrace_LogEvent.GetTrace_TagEntry2>();
                    for (int k = 0; k < context.Length("GetTrace.Spans[" + i + "].LogEventList[" + j + "].TagEntryList.Length"); k++)
                    {
                        GetTraceResponse.GetTrace_Span.GetTrace_LogEvent.GetTrace_TagEntry2 tagEntry2 = new GetTraceResponse.GetTrace_Span.GetTrace_LogEvent.GetTrace_TagEntry2();
                        tagEntry2.Key    = context.StringValue("GetTrace.Spans[" + i + "].LogEventList[" + j + "].TagEntryList[" + k + "].Key");
                        tagEntry2._Value = context.StringValue("GetTrace.Spans[" + i + "].LogEventList[" + j + "].TagEntryList[" + k + "].Value");

                        logEvent_tagEntryList1.Add(tagEntry2);
                    }
                    logEvent.TagEntryList1 = logEvent_tagEntryList1;

                    span_logEventList.Add(logEvent);
                }
                span.LogEventList = span_logEventList;

                getTraceResponse_spans.Add(span);
            }
            getTraceResponse.Spans = getTraceResponse_spans;

            return(getTraceResponse);
        }
        public static GetTraceResponse Unmarshall(UnmarshallerContext context)
        {
            GetTraceResponse getTraceResponse = new GetTraceResponse();

            getTraceResponse.HttpResponse = context.HttpResponse;
            getTraceResponse.RequestId    = context.StringValue("GetTrace.RequestId");

            List <GetTraceResponse.GetTrace_CallChainInfo> getTraceResponse_data = new List <GetTraceResponse.GetTrace_CallChainInfo>();

            for (int i = 0; i < context.Length("GetTrace.Data.Length"); i++)
            {
                GetTraceResponse.GetTrace_CallChainInfo callChainInfo = new GetTraceResponse.GetTrace_CallChainInfo();
                callChainInfo.TraceID       = context.StringValue("GetTrace.Data[" + i + "].TraceID");
                callChainInfo.OperationName = context.StringValue("GetTrace.Data[" + i + "].OperationName");
                callChainInfo.Duration      = context.IntegerValue("GetTrace.Data[" + i + "].Duration");
                callChainInfo.ServiceName   = context.StringValue("GetTrace.Data[" + i + "].ServiceName");
                callChainInfo.ServiceIp     = context.StringValue("GetTrace.Data[" + i + "].ServiceIp");
                callChainInfo.Timestamp     = context.LongValue("GetTrace.Data[" + i + "].Timestamp");
                callChainInfo.RpcId         = context.StringValue("GetTrace.Data[" + i + "].RpcId");
                callChainInfo.ResultCode    = context.StringValue("GetTrace.Data[" + i + "].ResultCode");
                callChainInfo.HaveStack     = context.BooleanValue("GetTrace.Data[" + i + "].HaveStack");

                List <GetTraceResponse.GetTrace_CallChainInfo.GetTrace_TagEntry> callChainInfo_tagEntryList = new List <GetTraceResponse.GetTrace_CallChainInfo.GetTrace_TagEntry>();
                for (int j = 0; j < context.Length("GetTrace.Data[" + i + "].TagEntryList.Length"); j++)
                {
                    GetTraceResponse.GetTrace_CallChainInfo.GetTrace_TagEntry tagEntry = new GetTraceResponse.GetTrace_CallChainInfo.GetTrace_TagEntry();
                    tagEntry.Key    = context.StringValue("GetTrace.Data[" + i + "].TagEntryList[" + j + "].Key");
                    tagEntry._Value = context.StringValue("GetTrace.Data[" + i + "].TagEntryList[" + j + "].Value");

                    callChainInfo_tagEntryList.Add(tagEntry);
                }
                callChainInfo.TagEntryList = callChainInfo_tagEntryList;

                List <GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent> callChainInfo_logEventList = new List <GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent>();
                for (int j = 0; j < context.Length("GetTrace.Data[" + i + "].LogEventList.Length"); j++)
                {
                    GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent logEvent = new GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent();
                    logEvent.Timestamp = context.LongValue("GetTrace.Data[" + i + "].LogEventList[" + j + "].Timestamp");

                    List <GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent.GetTrace_TagEntry2> logEvent_tagEntryList1 = new List <GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent.GetTrace_TagEntry2>();
                    for (int k = 0; k < context.Length("GetTrace.Data[" + i + "].LogEventList[" + j + "].TagEntryList.Length"); k++)
                    {
                        GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent.GetTrace_TagEntry2 tagEntry2 = new GetTraceResponse.GetTrace_CallChainInfo.GetTrace_LogEvent.GetTrace_TagEntry2();
                        tagEntry2.Key    = context.StringValue("GetTrace.Data[" + i + "].LogEventList[" + j + "].TagEntryList[" + k + "].Key");
                        tagEntry2._Value = context.StringValue("GetTrace.Data[" + i + "].LogEventList[" + j + "].TagEntryList[" + k + "].Value");

                        logEvent_tagEntryList1.Add(tagEntry2);
                    }
                    logEvent.TagEntryList1 = logEvent_tagEntryList1;

                    callChainInfo_logEventList.Add(logEvent);
                }
                callChainInfo.LogEventList = callChainInfo_logEventList;

                getTraceResponse_data.Add(callChainInfo);
            }
            getTraceResponse.Data = getTraceResponse_data;

            return(getTraceResponse);
        }