Example #1
0
        public GameViewModel(Config cfg)
        {
            _currWolf              = _wolfLT;
            animator.ReadyToCatch += EggReadyToCatch;
            animator.LifeActivate += LifeActive;

            _config = cfg;

            if (File.Exists("LeaderBord.ldr"))
            {
                try
                {
                    _scores = MySerializer.DeserializeXml <List <Score> >("LeaderBord.ldr");
                }
                catch (InvalidOperationException)
                {
                    _scores = Score.GetDeffaultScoreList();
                    CustomMessageBox messageBox = new CustomMessageBox("File LeaderBord.ldr is damaged. Reset to default leader bord");
                    messageBox.ShowDialog();
                    MySerializer.SerializeXml <List <Score> >(_scores, "LeaderBord.ldr");
                }
            }
            else
            {
                _scores = Score.GetDeffaultScoreList();
            }
        }
Example #2
0
        public virtual void Save()
        {
#if DEBUG
            MyTraceSource.TraceEvent(TraceEventType.Information, new StringBuilder(40).Append("[").Append(FileName).Append("] ファイル保存開始").ToString());
#endif
            List <string> list;
            lock (lockobject_)
                list = favoriteStreamClassList_.Select(x => x.Owner).ToList();

            while (true)
            {
                try
                {
                    MySerializer.Serialize <List <string> >(list, FilePath);
                    IsChanged = false;
                }
                catch (DirectoryNotFoundException)
                {
#if DEBUG
                    MyTraceSource.TraceEvent(TraceEventType.Error, new StringBuilder(40).Append("[").Append(FileName).Append("] Favoriteフォルダが見つかりません").ToString());
#endif
                    Directory.CreateDirectory("favorite");
                    continue;
                }
                catch (Exception ex)
                {
                    MyTraceSource.TraceEvent(TraceEventType.Error, ex);
                }
                break;
            }
#if DEBUG
            MyTraceSource.TraceEvent(TraceEventType.Information, new StringBuilder(40).Append("[").Append(FileName).Append("] ファイル保存完了").ToString());
#endif
        }
        //  Test OK
        public static Carrinho deserializeXmlToObject()
        {
            Carrinho carrinho = new Carrinho();

            carrinho = MySerializer.DeserializeXmlToObject <Carrinho>(serializeObjectToXml());
            return(carrinho);
        }
Example #4
0
		static void Main(string[] args)
		{
			MySerializer ser = new MySerializer();
			using(FileStream file = File.OpenRead("../../../Tools/nwind.proto.bin"))
			{
				DatabaseCompat db = (DatabaseCompat)ser.Deserialize(file, null, typeof(DatabaseCompat));
				Console.WriteLine("Orders: {0}", db.Orders.Count);
				int sum = 0;
				foreach(OrderCompat order in db.Orders)
				{
					sum += order.Lines == null ? 0 : order.Lines.Count;
				}
				Console.WriteLine("Lines: {0}", sum);

				using(MemoryStream ms = new MemoryStream())
				{
					ser.Serialize(ms, db);
					Console.WriteLine("Bytes: {0}", ms.Length);
				}
			}
			
//			ArrayList names = new ArrayList();
//			foreach(FieldInfo field in typeof(OpCodes).GetFields())
//			{
//				if(field.IsStatic) names.Add(field.Name);
//			}
//			names.Sort();
//			foreach(string name in names) Console.WriteLine(name);
		}
        public void WhenSerializingUnknownTypeItThrowsInvalidOperation()
        {
            AbstractSerializer.RegisterKnownType(typeof(object));

              AbstractSerializer s = new MySerializer();
              AssertThrows<InvalidOperationException>(() => s.Serialize(new { }));
        }
Example #6
0
        public override bool OnSave(BitStream stream)
        {
            long entityId = Component.Entity.EntityId;

            MySerializer.Write(stream, ref entityId);
            return(true);
        }
Example #7
0
        public LeaderBordViewModel(Config cfg)
        {
            if (File.Exists("LeaderBord.ldr"))
            {
                try
                {
                    Scores = MySerializer.DeserializeXml <List <Score> >("LeaderBord.ldr");
                }
                catch (InvalidOperationException)
                {
                    Scores = Score.GetDeffaultScoreList();
                    CustomMessageBox messageBox = new CustomMessageBox("File LeaderBord.ldr is damaged. Reset to default leader bord");
                    messageBox.ShowDialog();

                    MySerializer.SerializeXml <List <Score> >(Scores, "LeaderBord.ldr");
                }
            }

            else
            {
                Scores = Score.GetDeffaultScoreList();
            }
            Scores.Sort();
            Scores.Reverse();

            _config = cfg;
        }
Example #8
0
        static void Main(string[] args)
        {
            MySerializer ser = new MySerializer();

            using (FileStream file = File.OpenRead("../../../Tools/nwind.proto.bin"))
            {
                DatabaseCompat db = (DatabaseCompat)ser.Deserialize(file, null, typeof(DatabaseCompat));
                Console.WriteLine("Orders: {0}", db.Orders.Count);
                int sum = 0;
                foreach (OrderCompat order in db.Orders)
                {
                    sum += order.Lines == null ? 0 : order.Lines.Count;
                }
                Console.WriteLine("Lines: {0}", sum);

                using (MemoryStream ms = new MemoryStream())
                {
                    ser.Serialize(ms, db);
                    Console.WriteLine("Bytes: {0}", ms.Length);
                }
            }

//			ArrayList names = new ArrayList();
//			foreach(FieldInfo field in typeof(OpCodes).GetFields())
//			{
//				if(field.IsStatic) names.Add(field.Name);
//			}
//			names.Sort();
//			foreach(string name in names) Console.WriteLine(name);
        }
Example #9
0
        public void CheckDeserializedNullReference()
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            Class4 class4 = new Class4("Deskorolka", true, 4.9d);

            MySerializer mySerializer = new MySerializer();

            using (FileStream fsSerialize = new FileStream(path, FileMode.Create))
            {
                mySerializer.Serialize(fsSerialize, class4);
            }

            Class4 class4Deserialized;

            using (FileStream fsDeserialize = new FileStream(path, FileMode.Open))
            {
                class4Deserialized = (Class4)mySerializer.Deserialize(fsDeserialize);
            }

            Assert.AreNotSame(null, class4Deserialized);
            Assert.AreSame(null, class4Deserialized.class4);
        }
Example #10
0
        public void CheckDeserializedClass4Values()
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            Class4 class4 = new Class4("Deskorolka", true, 4.9d);

            class4.class4 = class4;

            MySerializer mySerializer = new MySerializer();

            using (FileStream fsSerialize = new FileStream(path, FileMode.Create))
            {
                mySerializer.Serialize(fsSerialize, class4);
            }

            Class4 class4Deserialized;

            using (FileStream fsDeserialize = new FileStream(path, FileMode.Open))
            {
                class4Deserialized = (Class4)mySerializer.Deserialize(fsDeserialize);
            }

            Assert.AreNotSame(null, class4Deserialized);
            Assert.AreNotSame(class4, class4Deserialized);

            Assert.AreEqual(class4.Text, class4Deserialized.Text);
            Assert.AreEqual(class4.Number, class4Deserialized.Number);
            Assert.AreEqual(class4.Boolean, class4Deserialized.Boolean);
        }
        public void Binary_Serialization_Deserialization_Equal_Test(string serFileName)
        {
            MySerializer.SerializeBinary(TestCatalog.StandardDir, serFileName);
            _desDir = MySerializer.DeserializeFromFile(serFileName, "-bin");
            File.Delete(serFileName);

            Assert.That(_desDir, Is.EqualTo(TestCatalog.StandardDir));
        }
Example #12
0
        public void WhenSerializingUnknownTypeItThrowsInvalidOperation()
        {
            AbstractSerializer.RegisterKnownType(typeof(object));

            AbstractSerializer s = new MySerializer();

            AssertThrows <InvalidOperationException>(() => s.Serialize(new { }));
        }
Example #13
0
 private void Awake()
 {
     Instance = this;
     if (Instance != this)
     {
         Destroy(this);
     }
 }
Example #14
0
        // ------------
        // Constructors
        // ------------
        public RestaurantsInfo()
        {
            _myList = new List <RestaurantInfo>();
            GetSerializedData();
            MySerializer.Serialize(ref _myList);

            OutputToRRDb();
        }
Example #15
0
        InventoryDeltaInformation WriteInventory(ref InventoryDeltaInformation packetInfo, BitStream stream, byte packetId, int maxBitPosition, out bool needsSplit)
        {
            var delta = PrepareSendData(ref packetInfo, stream, maxBitPosition, out needsSplit);

            delta.MessageId = packetInfo.MessageId;
            stream.WriteBool(delta.HasChanges);
            stream.WriteUInt32(delta.MessageId);
            if (!delta.HasChanges)
            {
                return(delta);
            }

            stream.WriteBool(delta.ChangedItems != null);
            if (delta.ChangedItems != null)
            {
                stream.WriteInt32(delta.ChangedItems.Count);
                foreach (var keyValuePair in delta.ChangedItems)
                {
                    stream.WriteUInt32(keyValuePair.Key);
                    stream.WriteInt64(keyValuePair.Value.RawValue);
                }
            }

            stream.WriteBool(delta.RemovedItems != null);
            if (delta.RemovedItems != null)
            {
                stream.WriteInt32(delta.RemovedItems.Count);
                foreach (var value in delta.RemovedItems)
                {
                    stream.WriteUInt32(value);
                }
            }

            stream.WriteBool(delta.NewItems != null);
            if (delta.NewItems != null)
            {
                stream.WriteInt32(delta.NewItems.Count);
                foreach (var keyValuePair2 in delta.NewItems)
                {
                    stream.WriteInt32(keyValuePair2.Key);
                    var value2 = keyValuePair2.Value;
                    MySerializer.Write(stream, ref value2, MyObjectBuilderSerializer.Dynamic);
                }
            }

            stream.WriteBool(delta.SwappedItems != null);
            if (delta.SwappedItems != null)
            {
                stream.WriteInt32(delta.SwappedItems.Count);
                foreach (var keyValuePair3 in delta.SwappedItems)
                {
                    stream.WriteUInt32(keyValuePair3.Key);
                    stream.WriteInt32(keyValuePair3.Value);
                }
            }

            return(delta);
        }
Example #16
0
 private void Button_Click_1(object sender, RoutedEventArgs e)
 {
     var ser = new MySerializer();
     var obj = new MetroDto.TestClass { EnumVal = MetroDto.MyEnum.Bar };
     var clone2 = (MetroDto.TestClass)ser.DeepClone(obj);
     var clone3 = Serializer.DeepClone(obj); // runtime
     ReadProto(((Button)sender));
     //((Button)sender).Content = clone.Foo + ", " + clone.Bar;
 }
Example #17
0
        protected override void OnLoad(BitStream stream, Action <MyInventory> loadingDoneHandler)
        {
            if (stream != null)
            {
                MySerializer.CreateAndRead(stream, out m_entityId);
                MySerializer.CreateAndRead(stream, out m_inventoryId);
            }

            MyEntities.CallAsync(delegate { LoadAsync(loadingDoneHandler); });
        }
Example #18
0
    public NetMessageMgr()
    {
        m_ProtocolMgr = new ProtocolMgr();

        m_Client                 = new XTcpClient();
        m_Client.OnConnected    += HandleOnConnected;
        m_Client.OnDisconnected += HandleOnDisconnected;
        m_Client.OnError        += HandleOnError;
        m_Enable                 = false;
        m_Serializer             = new MySerializer();
    }
Example #19
0
 private void Button_Click_2(object sender, RoutedEventArgs e)
 {
     var ser = new MySerializer();
     using (var source = LoadWithoutDiskIO())
     {
         var watch = Stopwatch.StartNew();
         var obj = (DatabaseCompat)ser.Deserialize(source, null, typeof(DatabaseCompat));
         watch.Stop();
         precompiledButton.Content = string.Format("Precompiled: {0} orders, {1} ms", obj.Orders.Count, watch.ElapsedMilliseconds);
     }
 }
Example #20
0
    public string GetSampleResponse()
    {
        string un = this.User.Identity.Name;

        Response r = new Response();

        r.Header = new ResponseHeader("1", "Records Return Successfully");

        Member m1 = new Member();

        r.Members.Add(m1);

        m1.Keywords.Add(new Keyword("FirstName", "Johnny"));
        m1.Keywords.Add(new Keyword("MiddleName", "Q"));
        m1.Keywords.Add(new Keyword("LastName", "Northwoods"));
        m1.Keywords.Add(new Keyword("NameSuffix", "Jr."));

        m1.Keywords.Add(new Keyword("SSN", "111111111"));
        m1.Keywords.Add(new Keyword("ExternalSystemID", "MN786545746"));
        m1.Keywords.Add(new Keyword("Sex", "M"));
        m1.Keywords.Add(new Keyword("BirthDate", "01/27/1963"));

        m1.Keywords.Add(new Keyword("PhysicalStreet1", "123 High St"));
        m1.Keywords.Add(new Keyword("PhysicalStreet2", "Apt 4"));
        m1.Keywords.Add(new Keyword("PhysicalStreet3", string.Empty));
        m1.Keywords.Add(new Keyword("PhysicalCity", "Dublin"));
        m1.Keywords.Add(new Keyword("PhysicalState", "OH"));
        m1.Keywords.Add(new Keyword("PhysicalZip", "43017"));
        m1.Keywords.Add(new Keyword("PhysicalZipPlus4", "1234"));

        m1.Keywords.Add(new Keyword("MailingStreet1", "456 Broad Rd."));
        m1.Keywords.Add(new Keyword("MailingStreet2", string.Empty));
        m1.Keywords.Add(new Keyword("MailingStreet3", string.Empty));
        m1.Keywords.Add(new Keyword("MailingCity", "Columbus"));
        m1.Keywords.Add(new Keyword("MailingState", "HO"));
        m1.Keywords.Add(new Keyword("MailingZip", "43016"));
        m1.Keywords.Add(new Keyword("MailingZipPlus4", "5678"));

        m1.Keywords.Add(new Keyword("HomePhone", "0123456"));
        m1.Keywords.Add(new Keyword("CellPhone", "9876543"));

        m1.Keywords.Add(new Keyword("StateCaseNumber", "020478922"));
        m1.Keywords.Add(new Keyword("LocalCaseNumber", "037450943"));
        m1.Keywords.Add(new Keyword("CaseManagerUserName", "Northwoods"));
        m1.Keywords.Add(new Keyword("CaseManagerName", "North Woods"));

        m1.Keywords.Add(new Keyword("CompassNumber", "OH1230000000001"));
        m1.Keywords.Add(new Keyword("UserName", "CompassServiceUser"));

        m1.Keywords.Add(new Keyword("xxxBatch #", "01234567890123456789"));
        m1.Keywords.Add(new Keyword("xxxCheck Consecutive #", "012345678"));

        return(MySerializer.ToXml(r));
    }
Example #21
0
        public override bool OnSave(BitStream stream)
        {
            stream.WriteInt64(Instance.Owner.Entity.EntityId);
            stream.WriteInt64(Instance.Id);

            var ob = Instance.GetObjectBuilder();

            MySerializer.Write(stream, ref ob, serialInfo);

            return(true);
        }
Example #22
0
        private void Button_Click_2(object sender, RoutedEventArgs e)
        {
            var ser = new MySerializer();

            using (var source = LoadWithoutDiskIO())
            {
                var watch = Stopwatch.StartNew();
                var obj   = (DatabaseCompat)ser.Deserialize(source, null, typeof(DatabaseCompat));
                watch.Stop();
                precompiledButton.Content = string.Format("Precompiled: {0} orders, {1} ms", obj.Orders.Count, watch.ElapsedMilliseconds);
            }
        }
Example #23
0
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            var ser = new MySerializer();
            var obj = new MetroDto.TestClass {
                EnumVal = MetroDto.MyEnum.Bar
            };
            var clone2 = (MetroDto.TestClass)ser.DeepClone(obj);
            var clone3 = Serializer.DeepClone(obj); // runtime

            ReadProto(((Button)sender));
            //((Button)sender).Content = clone.Foo + ", " + clone.Bar;
        }
        public void CheckStringReferencesTest()
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            string stringReference = "StringReference";
            Class1 class1          = new Class1(stringReference, DateTime.Now, 1.1d);
            Class2 class2          = new Class2(stringReference, DateTime.Now, 2.2d);
            Class3 class3          = new Class3(stringReference, DateTime.Now, 3.3d);

            class1.Class2 = class2;
            class1.Class3 = class3;

            class2.Class1 = class1;
            class2.Class3 = class3;

            class3.Class1 = class1;
            class3.Class2 = class2;

            MySerializer mySerializer = new MySerializer();

            using (FileStream fsSerialize = new FileStream(path, FileMode.Create))
            {
                mySerializer.Serialize(fsSerialize, class1);
            }

            Class1 class1Deserialized;

            using (FileStream fsDeserialize = new FileStream(path, FileMode.Open))
            {
                class1Deserialized = (Class1)mySerializer.Deserialize(fsDeserialize);
            }

            Assert.AreNotSame(class1, class1Deserialized);
            Assert.AreNotSame(null, class1Deserialized.Class2);
            Assert.AreNotSame(null, class1Deserialized.Class3);

            Assert.AreEqual(class3.Number, class1Deserialized.Class3.Number);
            Assert.AreEqual(class3.DateTime.ToString(), class1Deserialized.Class3.DateTime.ToString());

            Assert.AreEqual(class2.Number, class1Deserialized.Class2.Number);
            Assert.AreEqual(class2.DateTime.ToString(), class1Deserialized.Class2.DateTime.ToString());

            Assert.AreEqual(class1.Number, class1Deserialized.Number);
            Assert.AreEqual(class1.DateTime.ToString(), class1Deserialized.DateTime.ToString());

            Assert.IsFalse(object.ReferenceEquals(stringReference, class1Deserialized.Text));
            Assert.IsTrue(object.ReferenceEquals(class1Deserialized.Text, class1Deserialized.Class2.Text));
            Assert.IsTrue(object.ReferenceEquals(class1Deserialized.Text, class1Deserialized.Class3.Text));
            Assert.IsTrue(object.ReferenceEquals(class1Deserialized.Class2.Text, class1Deserialized.Class3.Text));
        }
Example #25
0
        private void ScoreCalculation()
        {
            if (CurrentScore > _scores.Min().LeaderScore)
            {
                _scores.Remove(_scores.Min());

                NewHightScore          NHS   = new NewHightScore();
                NewHightScoreViewModel NHSVM = NHS.DataContext as NewHightScoreViewModel;
                NHSVM.LeaderNameChanged += LeaderNameChanged;
                NHS.ShowDialog();
                _scores.Add(new Score(CurrentScore, _leaderName));
                MySerializer.SerializeXml <List <Score> >(_scores, "LeaderBord.ldr");
            }
        }
Example #26
0
        public void Initialize(bool pollingMode, bool userTypeMode, ProtocolType type)
        {
            this.pollingMode  = pollingMode;
            this.userTypeMode = userTypeMode;
            this.type         = type;

            MySerializer.GetInstance().Initialize(userTypeMode);

            msgDelegateInitializer = new MessageDelegateInitializer();
            msgDelegateProcessor   = new MessageDelegateProcessor(msgDelegateInitializer);

            messageInitializer = new ClientHelperMessageInitializer();
            networkInitializer = new ClientHelperNetworkInitializer(messageInitializer, msgDelegateProcessor, type);
        }
Example #27
0
 public override bool Serialize(BitStream stream, bool validate)
 {
     if (stream.Reading)
     {
         T newValue;
         MySerializer.CreateAndRead(stream, out newValue, SerializeInfo);
         return(SetValue(ref newValue, validate));
     }
     else
     {
         MySerializer.Write(stream, ref m_value, SerializeInfo);
         return(true);
     }
 }
        public void CheckDeserializedClass3Values()
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            Class1 class1 = new Class1("KLASA1", DateTime.Now, 1.1d);
            Class2 class2 = new Class2("KLASA2", DateTime.Now, 2.2d);
            Class3 class3 = new Class3("KLASA3", DateTime.Now, 3.3d);

            class1.Class2 = class2;
            class1.Class3 = class3;

            class2.Class1 = class1;
            class2.Class3 = class3;

            class3.Class1 = class1;
            class3.Class2 = class2;

            MySerializer mySerializer = new MySerializer();

            using (FileStream fsSerialize = new FileStream(path, FileMode.Create))
            {
                mySerializer.Serialize(fsSerialize, class3);
            }

            Class3 class3Deserialized;

            using (FileStream fsDeserialize = new FileStream(path, FileMode.Open))
            {
                class3Deserialized = (Class3)mySerializer.Deserialize(fsDeserialize);
            }

            Assert.AreNotSame(class2, class3Deserialized);
            Assert.AreNotSame(null, class3Deserialized.Class1);
            Assert.AreNotSame(null, class3Deserialized.Class2);

            Assert.AreEqual(class1.Text, class3Deserialized.Class1.Text);
            Assert.AreEqual(class1.Number, class3Deserialized.Class1.Number);
            Assert.AreEqual(class1.DateTime.ToString(), class3Deserialized.Class1.DateTime.ToString());

            Assert.AreEqual(class2.Text, class3Deserialized.Class2.Text);
            Assert.AreEqual(class2.Number, class3Deserialized.Class2.Number);
            Assert.AreEqual(class2.DateTime.ToString(), class3Deserialized.Class2.DateTime.ToString());

            Assert.AreEqual(class3.Text, class3Deserialized.Text);
            Assert.AreEqual(class3.Number, class3Deserialized.Number);
            Assert.AreEqual(class3.DateTime.ToString(), class3Deserialized.DateTime.ToString());
        }
        //  Test OK
        public static string serializeObjectToXml()
        {
            Produto        videogame = new Produto(77, "Xbox One", 2, 3);
            List <Produto> produtos  = new List <Produto>();

            produtos.Add(videogame);
            Carrinho carrinho = new Carrinho();

            carrinho.Endereco = "Comerciante José Formiga de Assis, 77";
            carrinho.Id       = 2;
            carrinho.Produtos = produtos;

            string xml = MySerializer.SerializeObjectToXml(carrinho);

            return(xml);
        }
        public void Initialize(bool pollingMode, bool userTypeMode, ProtocolType type, Action <String> logger, IMessageHandler disconnectHandler)
        {
            this.pollingMode  = pollingMode;
            this.userTypeMode = userTypeMode;
            this.type         = type;
            this.logger       = logger;

            MySerializer.GetInstance().Initialize(userTypeMode);
            msgDelegateInitializer = new MessageDelegateInitializer();
            msgDelegateProcessor   = new MessageDelegateProcessor(msgDelegateInitializer);
            messageInitializer     = new ClientHelperMessageInitializer(this);
            messageInitializer.SetConnectionInactiveHandler(disconnectHandler);
            networkInitializer = new ClientHelperNetworkInitializer(messageInitializer, msgDelegateProcessor);

            SetOnConnectAuthRes();
        }
        public void CheckDeserializedClass1References()
        {
            if (File.Exists(path))
            {
                File.Delete(path);
            }

            Class1 class1 = new Class1("KLASA1", DateTime.Now, 1.1d);
            Class2 class2 = new Class2("KLASA2", DateTime.Now, 2.2d);
            Class3 class3 = new Class3("KLASA3", DateTime.Now, 3.3d);

            class1.Class2 = class2;
            class1.Class3 = class3;

            class2.Class1 = class1;
            class2.Class3 = class3;

            class3.Class1 = class1;
            class3.Class2 = class2;

            MySerializer mySerializer = new MySerializer();

            using (FileStream fsSerialize = new FileStream(path, FileMode.Create))
            {
                mySerializer.Serialize(fsSerialize, class1);
            }

            Class1 class1Deserialized;

            using (FileStream fsDeserialize = new FileStream(path, FileMode.Open))
            {
                class1Deserialized = (Class1)mySerializer.Deserialize(fsDeserialize);
            }

            Assert.AreNotSame(class1, class1Deserialized);
            Assert.AreNotSame(null, class1Deserialized.Class2);
            Assert.AreNotSame(null, class1Deserialized.Class3);
            Assert.AreNotSame(null, class1Deserialized.Class2.Class1);
            Assert.AreNotSame(null, class1Deserialized.Class2.Class3);
            Assert.AreNotSame(null, class1Deserialized.Class3.Class2);
            Assert.AreNotSame(null, class1Deserialized.Class3.Class1);

            Assert.AreSame(class1Deserialized, class1Deserialized.Class2.Class1);
            Assert.AreSame(class1Deserialized, class1Deserialized.Class3.Class1);
            Assert.AreSame(class1Deserialized.Class2, class1Deserialized.Class3.Class2);
            Assert.AreSame(class1Deserialized.Class3, class1Deserialized.Class2.Class3);
        }
Example #32
0
    void protobuf_ToSerialize()
    {
                #if PROTOBUF
        Address add = new Address();
        add.Line1 = "Perking";
        add.Line2 = "LaMaTemper";

        Person per = new Person();
        per.Address = add;
        per.Id      = 14;
        per.Name    = "allen";

        using (FileStream fs = File.Open(DeviceInfo.PersisitFullPath("proto"), FileMode.Create)) {
            var ser = new MySerializer();
            ser.Serialize(fs, per);
        }
                #endif
    }
Example #33
0
        public override bool Serialize(BitStream stream, bool validate)
        {
#if !XB1 // !XB1_SYNC_NOREFLECTION
            if (stream.Reading)
            {
                T newValue;
                MySerializer.CreateAndRead(stream, out newValue, SerializeInfo);
                return(SetValue(ref newValue, validate));
            }
            else
            {
                MySerializer.Write(stream, ref m_value, SerializeInfo);
                return(true);
            }
#else // XB1
            System.Diagnostics.Debug.Assert(false);
            return(false);
#endif // XB1
        }
Example #34
0
        public override bool OnSave(BitStream stream, Endpoint clientEndpoint)
        {
            var entityId = Instance.Owner.EntityId;

            MySerializer.Write(stream, ref entityId);
            var num = 0;

            for (var i = 0; i < Instance.Owner.InventoryCount; i++)
            {
                if (Instance == Instance.Owner.GetInventory(i))
                {
                    num = i;
                    break;
                }
            }

            MySerializer.Write(stream, ref num);
            return(true);
        }
Example #35
0
        private async void ReadProto(Button button)
        {
            var path = @"nwind.proto.bin";
            var folder = Windows.ApplicationModel.Package.Current.InstalledLocation;
            var file = await folder.GetFileAsync(path);

            var readStream = await file.OpenReadAsync();
            IInputStream inputSteam = readStream.GetInputStreamAt(0);
            DataReader dataReader = new DataReader(inputSteam);
            uint numBytesLoaded = await dataReader.LoadAsync((uint)readStream.Size);
            byte[] raw = new byte[readStream.Size];
            dataReader.ReadBytes(raw);
            var ms = new MemoryStream(raw);

            var ser = new MySerializer();
            var dal = (DAL.DatabaseCompat)ser.Deserialize(ms, null, typeof(DAL.DatabaseCompat));

            StringBuilder perfStats = new StringBuilder();

            perfStats.AppendLine(".NET for Metro style apps");
            perfStats.AppendFormat("{0} orders from NWind", dal.Orders.Count).AppendLine();
            
            var dcs = new DataContractSerializer(typeof(DAL.DatabaseCompat));
            var xs = new XmlSerializer(typeof(DAL.DatabaseCompat));
            using (var buffer = new MemoryStream())
            {
                const int loop = 50;
                var watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.SetLength(0);
                    dcs.WriteObject(buffer, dal);
                }
                watch.Stop();
                perfStats.AppendLine().AppendLine().AppendLine("DataContractSerializer:").AppendFormat("WriteObject x {0}: {1:###,###}ms, {2:###,###} bytes", loop, watch.ElapsedMilliseconds, buffer.Length);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.Position = 0;
                    dcs.ReadObject(buffer);
                }
                watch.Stop();
                perfStats.AppendLine().AppendFormat("ReadObject x {0}: {1:###,###}ms", loop, watch.ElapsedMilliseconds);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.SetLength(0);
                    xs.Serialize(buffer, dal);
                }
                watch.Stop();
                perfStats.AppendLine().AppendLine().AppendLine("XmlSerializer:").AppendFormat("Serialize x {0}: {1:###,###}ms, {2:###,###} bytes", loop, watch.ElapsedMilliseconds, buffer.Length);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.Position = 0;
                    xs.Deserialize(buffer);
                }
                watch.Stop();
                perfStats.AppendLine().AppendFormat("Deserialize x {0}: {1:###,###}ms", loop, watch.ElapsedMilliseconds);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.SetLength(0);
                    ser.Serialize(buffer, dal);
                }
                watch.Stop();
                perfStats.AppendLine().AppendLine().AppendLine("protobuf-net").AppendFormat("Serialize x {0}: {1:###,###}ms, {2:###,###} bytes", loop, watch.ElapsedMilliseconds, buffer.Length);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.Position = 0;
                    ser.Deserialize(buffer, null, typeof(DAL.DatabaseCompat));
                }
                watch.Stop();
                perfStats.AppendLine().AppendFormat("Deserialize x {0}: {1:###,###}ms", loop, watch.ElapsedMilliseconds);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.SetLength(0);
                    Serializer.Serialize(buffer, dal);
                }
                watch.Stop();
                perfStats.AppendLine().AppendLine().AppendLine("protobuf-net (runtime)").AppendFormat("Serialize x {0}: {1:###,###}ms, {2:###,###} bytes", loop, watch.ElapsedMilliseconds, buffer.Length);

                watch = Stopwatch.StartNew();
                for (int i = 0; i < loop; i++)
                {
                    buffer.Position = 0;
                    Serializer.Deserialize<DAL.DatabaseCompat>(buffer);
                }
                watch.Stop();
                perfStats.AppendLine().AppendFormat("Deserialize x {0}: {1:###,###}ms", loop, watch.ElapsedMilliseconds);


             
            }
            button.Content = perfStats.ToString();


            // test SM2Stats
            bool isSer = ser.CanSerializeContractType(typeof(SM2Stats));

            SM2Stats stats = new SM2Stats
            {
                acqreps = 1,
                difficultyhistory =  {
                    new DiffHistPair { date = 123, values = { 3.4f }}
                }
            };
            var clone = (SM2Stats)ser.DeepClone(stats); // checked by eye; is the same

        }
 public void WhenNoTypesAreRegisteredInSerializerItThrowsOnSerialization()
 {
     AbstractSerializer s = new MySerializer();
       AssertThrows<InvalidOperationException>(() => s.Serialize(new { }));
 }