Пример #1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            var version = reader.GetVersion();

            if (version < 2)
            {
                WebForm = new DonationWebFormOptions();
            }

            switch (version)
            {
            case 4:
                FallbackAccount = reader.ReadAccount();
                goto case 3;

            case 3:
                CreditBonus = reader.ReadDouble();
                goto case 2;

            case 2:
                WebForm = new DonationWebFormOptions(reader);
                goto case 1;

            case 1:
                TierFactor = reader.ReadDouble();
                goto case 0;

            case 0:
            {
                if (version < 2)
                {
                    new MySQLConnectionInfo(reader);                    // MySQL

                    _CurrencyType = new ItemTypeSelectProperty(reader); // CurrencyType

                    reader.ReadString();                                // TableName
                }

                ShowHistory = reader.ReadBool();

                if (version < 2)
                {
                    CurrencyPrice = reader.ReadDouble();                             // UnitPrice
                }

                MoneySymbol = reader.ReadChar();

                if (version < 2)
                {
                    MoneyAbbr = reader.ReadString();               // MoneyAbbr
                    reader.ReadBool();                             // GiftingEnabled
                }
            }
            break;
            }

            Info = new DonationStatistics();
        }
Пример #2
0
        public void Deserialize(GenericReader reader)
        {
            int version = reader.GetVersion();

            switch (version)
            {
            case 0:
            {
                Account = reader.ReadAccount();
                Credits = reader.ReadLong();

                Transactions = reader.ReadDictionary(
                    () =>
                    {
                        if (reader.ReadBool())
                        {
                            DonationTransaction t = new DonationTransaction(reader);
                            return(new KeyValuePair <string, DonationTransaction>(t.ID, t));
                        }

                        return(new KeyValuePair <string, DonationTransaction>(null, null));
                    });

                Gifts = reader.ReadDictionary(
                    () =>
                    {
                        string k = reader.ReadString();
                        string v = reader.ReadString();
                        return(new KeyValuePair <string, string>(k, v));
                    });
            }
            break;
            }
        }
Пример #3
0
        public void Deserialize(GenericReader reader)
        {
            int version = reader.GetVersion();

            switch (version)
            {
            case 0:
            {
                ID               = reader.ReadString();
                _State           = reader.ReadFlag <DonationTransactionState>();
                Account          = reader.ReadAccount();
                Email            = reader.ReadString();
                Total            = reader.ReadDecimal();
                _Credit          = reader.ReadLong();
                _Time            = reader.ReadDouble();
                Version          = reader.ReadInt();
                _InternalVersion = reader.ReadInt();
                _Notes           = reader.ReadString();
                _Extra           = reader.ReadString();

                DeliverFrom = reader.ReadMobile();
                DeliverTo   = reader.ReadMobile();

                DeliveryTime = reader.ReadDouble();
            }
            break;
            }
        }
Пример #4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            reader.GetVersion();

            Owner = reader.ReadAccount();

            Speed = reader.ReadByte();
        }
Пример #5
0
		public void Deserialize(GenericReader reader)
		{
			var version = reader.GetVersion();

			switch (version)
			{
				case 1:
				case 0:
				{
					Account = reader.ReadAccount();
					Credit = reader.ReadLong();

					Transactions = reader.ReadDictionary(
						r =>
						{
							string k = null;
							DonationTransaction v = null;

							if (r.ReadBool())
							{
								if (version > 0)
								{
									k = r.ReadString();
									v = AutoDonate.Transactions.GetValue(k);
								}
								else
								{
									v = new DonationTransaction(r);
									k = v.ID;

									AutoDonate.Transactions[k] = v;
								}
							}

							return new KeyValuePair<string, DonationTransaction>(k, v);
						},
						Transactions);

					if (version < 1) // Gifts
					{
						reader.ReadDictionary(
							() =>
							{
								var k = reader.ReadString();
								var v = reader.ReadString();
								return new KeyValuePair<string, string>(k, v);
							});
					}
				}
					break;
			}
		}
Пример #6
0
        public void Deserialize(GenericReader reader)
        {
            var version = reader.GetVersion();

            switch (version)
            {
            case 1:
                Bonus = reader.ReadLong();
                goto case 0;

            case 0:
            {
                ID      = reader.ReadString();
                _State  = reader.ReadFlag <TransactionState>();
                Account = reader.ReadAccount();
                Email   = reader.ReadString();
                Total   = reader.ReadDouble();
                Credit  = reader.ReadLong();

                Time = version > 0 ? reader.ReadTimeStamp() : reader.ReadDouble();

                Version = reader.ReadInt();

                if (version < 1)
                {
                    reader.ReadInt();                             // InternalVersion
                }

                Notes = reader.ReadString();
                Extra = reader.ReadString();

                if (version > 0)
                {
                    DeliveredTo  = reader.ReadMobile();
                    DeliveryTime = reader.ReadTimeStamp();
                }
                else
                {
                    reader.ReadMobile();                             // DeliverFrom

                    DeliveredTo  = reader.ReadMobile();
                    DeliveryTime = reader.ReadDouble();
                }
            }
            break;
            }
        }
Пример #7
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            reader.GetVersion();

            Owner = reader.ReadAccount();

            _Boosts = reader.ReadDictionary(
                r =>
            {
                var k = r.ReadTimeBoost();
                var v = r.ReadInt();

                return(new KeyValuePair <ITimeBoost, int>(k, v));
            },
                _Boosts);

            foreach (var t in TimeBoosts.AllTimes.Where(t => !_Boosts.ContainsKey(t)))
            {
                _Boosts[t] = 0;
            }
        }