protected override IO.Ably.TokenRequest UnpackFromCore(MsgPack.Unpacker unpacker) { IO.Ably.TokenRequest result = default(IO.Ably.TokenRequest); result = new IO.Ably.TokenRequest(); int itemsCount0 = default(int); itemsCount0 = MsgPack.Serialization.UnpackHelpers.GetItemsCount(unpacker); for (int i = 0; (i < itemsCount0); i = (i + 1)) { string key = default(string); string nullable6 = default(string); nullable6 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(IO.Ably.TokenRequest), "MemberName"); if (((nullable6 == null) == false)) { key = nullable6; } else { throw MsgPack.Serialization.SerializationExceptions.NewNullIsProhibited("MemberName"); } if ((key == "ttl")) { System.Nullable <System.TimeSpan> nullable13 = default(System.Nullable <System.TimeSpan>); if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { nullable13 = this._serializer3.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable4 = default(MsgPack.Unpacker); disposable4 = unpacker.ReadSubtree(); try { nullable13 = this._serializer3.UnpackFrom(disposable4); } finally { if (((disposable4 == null) == false)) { disposable4.Dispose(); } } } if (nullable13.HasValue) { result.Ttl = nullable13; } } else { if ((key == "timestamp")) { System.Nullable <System.DateTimeOffset> nullable12 = default(System.Nullable <System.DateTimeOffset>); if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { nullable12 = this._serializer2.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable3 = default(MsgPack.Unpacker); disposable3 = unpacker.ReadSubtree(); try { nullable12 = this._serializer2.UnpackFrom(disposable3); } finally { if (((disposable3 == null) == false)) { disposable3.Dispose(); } } } if (nullable12.HasValue) { result.Timestamp = nullable12; } } else { if ((key == "nonce")) { string nullable11 = default(string); nullable11 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(IO.Ably.TokenRequest), "System.String Nonce"); if (((nullable11 == null) == false)) { result.Nonce = nullable11; } } else { if ((key == "mac")) { string nullable10 = default(string); nullable10 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(IO.Ably.TokenRequest), "System.String Mac"); if (((nullable10 == null) == false)) { result.Mac = nullable10; } } else { if ((key == "keyName")) { string nullable9 = default(string); nullable9 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(IO.Ably.TokenRequest), "System.String KeyName"); if (((nullable9 == null) == false)) { result.KeyName = nullable9; } } else { if ((key == "clientId")) { string nullable8 = default(string); nullable8 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(IO.Ably.TokenRequest), "System.String ClientId"); if (((nullable8 == null) == false)) { result.ClientId = nullable8; } } else { if ((key == "capability")) { IO.Ably.Capability nullable7 = default(IO.Ably.Capability); if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { nullable7 = this._serializer1.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable2 = default(MsgPack.Unpacker); disposable2 = unpacker.ReadSubtree(); try { nullable7 = this._serializer1.UnpackFrom(disposable2); } finally { if (((disposable2 == null) == false)) { disposable2.Dispose(); } } } if (((nullable7 == null) == false)) { result.Capability = nullable7; } } else { unpacker.Skip(); } } } } } } } } return(result); }
protected override TokenDetails UnpackFromCore(MsgPack.Unpacker unpacker) { TokenDetails result = default(TokenDetails); result = new TokenDetails(); { int itemsCount0 = default(int); itemsCount0 = MsgPack.Serialization.UnpackHelpers.GetItemsCount(unpacker); for (int i = 0; (i < itemsCount0); i = (i + 1)) { string key = default(string); string nullable4 = default(string); nullable4 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(TokenDetails), "MemberName"); if (((nullable4 == null) == false)) { key = nullable4; } else { throw MsgPack.Serialization.SerializationExceptions.NewNullIsProhibited("MemberName"); } if ((key == "clientId")) { string nullable9 = default(string); nullable9 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(TokenDetails), "System.String ClientId"); if (((nullable9 == null) == false)) { result.ClientId = nullable9; } } else { if ((key == "keyName")) { string keyNameValue = null; if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { keyNameValue = this._serializer0.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable10 = default(MsgPack.Unpacker); disposable10 = unpacker.ReadSubtree(); try { keyNameValue = this._serializer0.UnpackFrom(disposable10); } finally { if (((disposable10 == null) == false)) { disposable10.Dispose(); } } } if (((keyNameValue == null) == false)) { result.KeyName = keyNameValue; } } else if ((key == "capability")) { IO.Ably.Capability nullable8 = default(IO.Ably.Capability); if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { nullable8 = this._serializer2.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable4 = default(MsgPack.Unpacker); disposable4 = unpacker.ReadSubtree(); try { nullable8 = this._serializer2.UnpackFrom(disposable4); } finally { if (((disposable4 == null) == false)) { disposable4.Dispose(); } } } if (((nullable8 == null) == false)) { result.Capability = nullable8; } } else { if ((key == "issued")) { System.Nullable <System.DateTimeOffset> nullable7 = default(System.Nullable <System.DateTimeOffset>); if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { nullable7 = this._serializer3.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable3 = default(MsgPack.Unpacker); disposable3 = unpacker.ReadSubtree(); try { nullable7 = this._serializer3.UnpackFrom(disposable3); } finally { if (((disposable3 == null) == false)) { disposable3.Dispose(); } } } if (nullable7.HasValue) { result.Issued = nullable7.Value; } } else { if ((key == "expires")) { System.Nullable <System.DateTimeOffset> nullable6 = default(System.Nullable <System.DateTimeOffset>); if ((unpacker.Read() == false)) { throw MsgPack.Serialization.SerializationExceptions.NewMissingItem(i); } if (((unpacker.IsArrayHeader == false) && (unpacker.IsMapHeader == false))) { nullable6 = this._serializer3.UnpackFrom(unpacker); } else { MsgPack.Unpacker disposable2 = default(MsgPack.Unpacker); disposable2 = unpacker.ReadSubtree(); try { nullable6 = this._serializer3.UnpackFrom(disposable2); } finally { if (((disposable2 == null) == false)) { disposable2.Dispose(); } } } if (nullable6.HasValue) { result.Expires = nullable6.Value; } } else { if ((key == "token")) { string nullable5 = default(string); nullable5 = MsgPack.Serialization.UnpackHelpers.UnpackStringValue(unpacker, typeof(TokenDetails), "System.String Token"); if (((nullable5 == null) == false)) { result.Token = nullable5; } } else { unpacker.Skip(); } } } } } } } return(result); }