public byte[] Pack() { stream = new MemoryStream(); if (transport == null) { transport = new TStreamTransport(null, stream); } else { transport.OutputStream = stream; } if (protocol == null) { protocol = new TCompactProtocol(transport); } else { protocol.reset(); protocol.Transport = transport; } protocol.WriteStructBegin(struc); fieldWriter.Name = "context"; fieldWriter.Type = TType.Map; fieldWriter.ID = 1; protocol.WriteFieldBegin(fieldWriter); { protocol.WriteMapBegin(new TMap(TType.String, TType.Struct, context.Count)); foreach (string _iter44 in context.Keys) { protocol.WriteString(_iter44); context[_iter44].Write(fieldWriter, protocol); } protocol.WriteMapEnd(); } protocol.WriteFieldEnd(); fieldWriter.Name = "events"; fieldWriter.Type = TType.Map; fieldWriter.ID = 2; protocol.WriteFieldBegin(fieldWriter); { protocol.WriteMapBegin(new TMap(TType.String, TType.Struct, events.Count)); foreach (string _iter44 in events.Keys) { protocol.WriteString(_iter44); events[_iter44].Write(fieldWriter, protocol); } protocol.WriteMapEnd(); } protocol.WriteFieldEnd(); protocol.WriteFieldStop(); protocol.WriteStructEnd(); return(stream.ToArray()); }