mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-07-24 12:10:49 +00:00

git-subtree-dir: submodules/MtProtoKit git-subtree-mainline: 3b155750f5a4894ff3dedf1860a37e94e0ea9571 git-subtree-split: 14ab734b977fd4f1686a2a13415f6a4c9b9fdd6d
52 lines
1.3 KiB
Objective-C
52 lines
1.3 KiB
Objective-C
|
|
|
|
#import "MTDatacenterSaltInfo.h"
|
|
|
|
@implementation MTDatacenterSaltInfo
|
|
|
|
- (instancetype)initWithSalt:(int64_t)salt firstValidMessageId:(int64_t)firstValidMessageId lastValidMessageId:(int64_t)lastValidMessageId
|
|
{
|
|
self = [super init];
|
|
if (self != nil)
|
|
{
|
|
_salt = salt;
|
|
_firstValidMessageId = firstValidMessageId;
|
|
_lastValidMessageId = lastValidMessageId;
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (instancetype)initWithCoder:(NSCoder *)aDecoder
|
|
{
|
|
self = [super init];
|
|
if (self != nil)
|
|
{
|
|
_salt = [aDecoder decodeInt64ForKey:@"salt"];
|
|
_firstValidMessageId = [aDecoder decodeInt64ForKey:@"firstValidMessageId"];
|
|
_lastValidMessageId = [aDecoder decodeInt64ForKey:@"lastValidMessageId"];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (void)encodeWithCoder:(NSCoder *)aCoder
|
|
{
|
|
[aCoder encodeInt64:_salt forKey:@"salt"];
|
|
[aCoder encodeInt64:_firstValidMessageId forKey:@"firstValidMessageId"];
|
|
[aCoder encodeInt64:_lastValidMessageId forKey:@"lastValidMessageId"];
|
|
}
|
|
|
|
- (int64_t)validMessageCountAfterId:(int64_t)messageId
|
|
{
|
|
if (messageId < _firstValidMessageId)
|
|
return 0;
|
|
|
|
return MAX(0, _lastValidMessageId - messageId);
|
|
}
|
|
|
|
- (bool)isValidFutureSaltForMessageId:(int64_t)messageId
|
|
{
|
|
return _lastValidMessageId > messageId;
|
|
}
|
|
|
|
@end
|