public void Write(TProtocol oprot) { oprot.IncrementRecursionDepth(); try { TStruct struc = new TStruct("THProcessAppOpenRequest"); oprot.WriteStructBegin(struc); TField field = new TField(); if (Fingerprint != null && __isset.fingerprint) { field.Name = "fingerprint"; field.Type = TType.Struct; field.ID = 1; oprot.WriteFieldBegin(field); Fingerprint.Write(oprot); oprot.WriteFieldEnd(); } if (Referrer != null && __isset.referrer) { field.Name = "referrer"; field.Type = TType.String; field.ID = 2; oprot.WriteFieldBegin(field); oprot.WriteString(Referrer); oprot.WriteFieldEnd(); } if (DeepLinkUrl != null && __isset.deepLinkUrl) { field.Name = "deepLinkUrl"; field.Type = TType.String; field.ID = 3; oprot.WriteFieldBegin(field); oprot.WriteString(DeepLinkUrl); oprot.WriteFieldEnd(); } if (__isset.isNewInstall) { field.Name = "isNewInstall"; field.Type = TType.Bool; field.ID = 4; oprot.WriteFieldBegin(field); oprot.WriteBool(IsNewInstall); oprot.WriteFieldEnd(); } if (Referrers != null && __isset.referrers) { field.Name = "referrers"; field.Type = TType.Map; field.ID = 5; oprot.WriteFieldBegin(field); { oprot.WriteMapBegin(new TMap(TType.I32, TType.String, Referrers.Count)); foreach (THAppOpenSource _iter64 in Referrers.Keys) { oprot.WriteI32((int)_iter64); oprot.WriteString(Referrers[_iter64]); } oprot.WriteMapEnd(); } oprot.WriteFieldEnd(); } if (ReferrerData != null && __isset.referrerData) { field.Name = "referrerData"; field.Type = TType.Map; field.ID = 6; oprot.WriteFieldBegin(field); { oprot.WriteMapBegin(new TMap(TType.I32, TType.Map, ReferrerData.Count)); foreach (THAppOpenSource _iter65 in ReferrerData.Keys) { oprot.WriteI32((int)_iter65); { oprot.WriteMapBegin(new TMap(TType.I32, TType.String, ReferrerData[_iter65].Count)); foreach (THAppOpenKey _iter66 in ReferrerData[_iter65].Keys) { oprot.WriteI32((int)_iter66); oprot.WriteString(ReferrerData[_iter65][_iter66]); } oprot.WriteMapEnd(); } } oprot.WriteMapEnd(); } oprot.WriteFieldEnd(); } if (DeviceInfo != null && __isset.deviceInfo) { field.Name = "deviceInfo"; field.Type = TType.Map; field.ID = 7; oprot.WriteFieldBegin(field); { oprot.WriteMapBegin(new TMap(TType.String, TType.String, DeviceInfo.Count)); foreach (string _iter67 in DeviceInfo.Keys) { oprot.WriteString(_iter67); oprot.WriteString(DeviceInfo[_iter67]); } oprot.WriteMapEnd(); } oprot.WriteFieldEnd(); } oprot.WriteFieldStop(); oprot.WriteStructEnd(); } finally { oprot.DecrementRecursionDepth(); } }