protected override void OnProcessOutputSchema(MutableObject newSchema) { var ids = new List <MutableObject>(); var id1 = new MutableObject(); id1.Add("TraceRequestID", Trace1RequestIdField.GetFirstValue(newSchema)); id1.Add("TraceBinaryID", Trace1BinaryIdField.GetFirstValue(newSchema)); ids.Add(id1); var id2 = new MutableObject(); id2.Add("TraceRequestID", Trace2RequestIdField.GetFirstValue(newSchema)); id2.Add("TraceBinaryID", Trace2BinaryIdField.GetFirstValue(newSchema)); ids.Add(id2); var id3 = new MutableObject(); id3.Add("TraceRequestID", Trace3RequestIdField.GetFirstValue(newSchema)); id3.Add("TraceBinaryID", Trace3BinaryIdField.GetFirstValue(newSchema)); ids.Add(id3); newSchema.Add("Trace IDs", ids); Router.TransmitAllSchema(newSchema); }
public override IEnumerator ReceivePayload(VisualPayload payload) { var ids = new List <MutableObject>(); var id1 = new MutableObject(); var ignore = Trace1RequestIdField.GetFirstValue(payload.Data) == -1 || Trace1BinaryIdField.GetFirstValue(payload.Data) == -1; if (!ignore) { id1.Add("TraceRequestID", Trace1RequestIdField.GetFirstValue(payload.Data)); id1.Add("TraceBinaryID", Trace1BinaryIdField.GetFirstValue(payload.Data)); ids.Add(id1); } var id2 = new MutableObject(); ignore = Trace2RequestIdField.GetFirstValue(payload.Data) == -1 || Trace2BinaryIdField.GetFirstValue(payload.Data) == -1; if (!ignore) { id2.Add("TraceRequestID", Trace2RequestIdField.GetFirstValue(payload.Data)); id2.Add("TraceBinaryID", Trace2BinaryIdField.GetFirstValue(payload.Data)); ids.Add(id2); } var id3 = new MutableObject(); ignore = Trace3RequestIdField.GetFirstValue(payload.Data) == -1 || Trace3BinaryIdField.GetFirstValue(payload.Data) == -1; if (!ignore) { id3.Add("TraceRequestID", Trace3RequestIdField.GetFirstValue(payload.Data)); id3.Add("TraceBinaryID", Trace3BinaryIdField.GetFirstValue(payload.Data)); ids.Add(id3); } payload.Data.Add("Trace IDs", ids); var iterator = Router.TransmitAll(payload); while (iterator.MoveNext()) { yield return(null); } }