public void TestDeserialization()
        {
            byte[] serialized = TMemoryBuffer.Serialize(Fixtures.oneOfEach);

            Stopwatch stopwatch = new Stopwatch();
            stopwatch.Start();

            for (int i = 0; i < HOW_MANY; i++)
            {
                OneOfEach o = new OneOfEach();
                TProtocol proto = new TBinaryProtocol.Factory().GetProtocol(new TMemoryBuffer(serialized));
                o.Read(proto);
            }

            stopwatch.Stop();

            Console.WriteLine("Serialization test time : {0} ms", stopwatch.ElapsedMilliseconds);

        }
Example #2
0
 public void Read(TProtocol iprot)
 {
     TField field;
     iprot.ReadStructBegin();
     while (true)
     {
         field = iprot.ReadFieldBegin();
         if (field.Type == TType.Stop) { 
             break;
         }
         switch (field.ID)
         {
             case 1:
                 if (field.Type == TType.Struct) {
                     MyBonk = new Bonk();
                     MyBonk.Read(iprot);
                 } else {
                     TProtocolUtil.Skip(iprot, field.Type);
                 }
                 break;
             case 2:
                 if (field.Type == TType.Struct) {
                     MyOoe = new OneOfEach();
                     MyOoe.Read(iprot);
                 } else {
                     TProtocolUtil.Skip(iprot, field.Type);
                 }
                 break;
             default:
                 TProtocolUtil.Skip(iprot, field.Type);
                 break;
         }
         iprot.ReadFieldEnd();
     }
     iprot.ReadStructEnd();
 }
Example #3
0
 public void Read(TProtocol iprot)
 {
     TField field;
     iprot.ReadStructBegin();
     while (true)
     {
         field = iprot.ReadFieldBegin();
         if (field.Type == TType.Stop) { 
             break;
         }
         switch (field.ID)
         {
             case 1:
                 if (field.Type == TType.List) {
                     {
                         Big = new List<OneOfEach>();
                         TList _list0 = iprot.ReadListBegin();
                         for(int _i1 = 0; _i1 < _list0.Count; ++_i1)
                         {
                             OneOfEach _elem2 = new OneOfEach();
                             _elem2 = new OneOfEach();
                             _elem2.Read(iprot);
                             Big.Add(_elem2);
                         }
                         iprot.ReadListEnd();
                     }
                 } else {
                     TProtocolUtil.Skip(iprot, field.Type);
                 }
                 break;
             case 2:
                 if (field.Type == TType.Set) {
                     {
                         Contain = new HashSet<List<string>>();
                         TSet _set3 = iprot.ReadSetBegin();
                         for(int _i4 = 0; _i4 < _set3.Count; ++_i4)
                         {
                             List<string> _elem5 = new List<string>();
                             {
                                 _elem5 = new List<string>();
                                 TList _list6 = iprot.ReadListBegin();
                                 for(int _i7 = 0; _i7 < _list6.Count; ++_i7)
                                 {
                                     string _elem8 = null;
                                     _elem8 = iprot.ReadString();
                                     _elem5.Add(_elem8);
                                 }
                                 iprot.ReadListEnd();
                             }
                             Contain.Add(_elem5);
                         }
                         iprot.ReadSetEnd();
                     }
                 } else {
                     TProtocolUtil.Skip(iprot, field.Type);
                 }
                 break;
             case 3:
                 if (field.Type == TType.Map) {
                     {
                         Bonks = new Dictionary<string, List<Bonk>>();
                         TMap _map9 = iprot.ReadMapBegin();
                         for(int _i10 = 0; _i10 < _map9.Count; ++_i10)
                         {
                             string _key11;
                             List<Bonk> _val12;
                             _key11 = iprot.ReadString();
                             {
                                 _val12 = new List<Bonk>();
                                 TList _list13 = iprot.ReadListBegin();
                                 for(int _i14 = 0; _i14 < _list13.Count; ++_i14)
                                 {
                                     Bonk _elem15 = new Bonk();
                                     _elem15 = new Bonk();
                                     _elem15.Read(iprot);
                                     _val12.Add(_elem15);
                                 }
                                 iprot.ReadListEnd();
                             }
                             Bonks[_key11] = _val12;
                         }
                         iprot.ReadMapEnd();
                     }
                 } else {
                     TProtocolUtil.Skip(iprot, field.Type);
                 }
                 break;
             default:
                 TProtocolUtil.Skip(iprot, field.Type);
                 break;
         }
         iprot.ReadFieldEnd();
     }
     iprot.ReadStructEnd();
 }