mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00

git-subtree-dir: submodules/HockeySDK-iOS git-subtree-mainline: 085acd26c4432939403765234266e3c1be0f3dd9 git-subtree-split: c7d0c7026303253e2ac576c02655691e5d314fe2
107 lines
3.6 KiB
Objective-C
Executable File
107 lines
3.6 KiB
Objective-C
Executable File
#import "BITUser.h"
|
|
|
|
/// Data contract class for type User.
|
|
@implementation BITUser
|
|
|
|
///
|
|
/// Adds all members of this class to a dictionary
|
|
/// @returns dictionary to which the members of this class will be added.
|
|
///
|
|
- (NSDictionary *)serializeToDictionary {
|
|
NSMutableDictionary *dict = [super serializeToDictionary].mutableCopy;
|
|
if (self.accountAcquisitionDate != nil) {
|
|
[dict setObject:self.accountAcquisitionDate forKey:@"ai.user.accountAcquisitionDate"];
|
|
}
|
|
if (self.accountId != nil) {
|
|
[dict setObject:self.accountId forKey:@"ai.user.accountId"];
|
|
}
|
|
if (self.userAgent != nil) {
|
|
[dict setObject:self.userAgent forKey:@"ai.user.userAgent"];
|
|
}
|
|
if (self.userId != nil) {
|
|
[dict setObject:self.userId forKey:@"ai.user.id"];
|
|
}
|
|
if(self.storeRegion != nil) {
|
|
[dict setObject:self.storeRegion forKey:@"ai.user.storeRegion"];
|
|
}
|
|
if(self.authUserId != nil) {
|
|
[dict setObject:self.authUserId forKey:@"ai.user.authUserId"];
|
|
}
|
|
if(self.anonUserAcquisitionDate != nil) {
|
|
[dict setObject:self.anonUserAcquisitionDate forKey:@"ai.user.anonUserAcquisitionDate"];
|
|
}
|
|
if(self.authUserAcquisitionDate != nil) {
|
|
[dict setObject:self.authUserAcquisitionDate forKey:@"ai.user.authUserAcquisitionDate"];
|
|
}
|
|
return dict;
|
|
}
|
|
|
|
#pragma mark - NSCoding
|
|
|
|
- (instancetype)initWithCoder:(NSCoder *)coder {
|
|
self = [super initWithCoder:coder];
|
|
if(self) {
|
|
_accountAcquisitionDate = [coder decodeObjectForKey:@"self.accountAcquisitionDate"];
|
|
_accountId = [coder decodeObjectForKey:@"self.accountId"];
|
|
_userAgent = [coder decodeObjectForKey:@"self.userAgent"];
|
|
_userId = [coder decodeObjectForKey:@"self.userId"];
|
|
_storeRegion = [coder decodeObjectForKey:@"self.storeRegion"];
|
|
_authUserId = [coder decodeObjectForKey:@"self.authUserId"];
|
|
_anonUserAcquisitionDate = [coder decodeObjectForKey:@"self.anonUserAcquisitionDate"];
|
|
_authUserAcquisitionDate = [coder decodeObjectForKey:@"self.authUserAcquisitionDate"];
|
|
}
|
|
|
|
return self;
|
|
}
|
|
|
|
- (void)encodeWithCoder:(NSCoder *)coder {
|
|
[super encodeWithCoder:coder];
|
|
[coder encodeObject:self.accountAcquisitionDate forKey:@"self.accountAcquisitionDate"];
|
|
[coder encodeObject:self.accountId forKey:@"self.accountId"];
|
|
[coder encodeObject:self.userAgent forKey:@"self.userAgent"];
|
|
[coder encodeObject:self.userId forKey:@"self.userId"];
|
|
[coder encodeObject:self.storeRegion forKey:@"self.storeRegion"];
|
|
[coder encodeObject:self.authUserId forKey:@"self.authUserId"];
|
|
[coder encodeObject:self.anonUserAcquisitionDate forKey:@"self.anonUserAcquisitionDate"];
|
|
[coder encodeObject:self.authUserAcquisitionDate forKey:@"self.authUserAcquisitionDate"];
|
|
}
|
|
|
|
#pragma mark - Compare
|
|
|
|
- (BOOL)isEqualToUser:(BITUser *)aUser {
|
|
if (aUser == self) {
|
|
return YES;
|
|
}
|
|
if (!aUser || ![aUser isKindOfClass:[self class]]) {
|
|
return NO;
|
|
}
|
|
if (![self.userId isEqualToString: aUser.userId]) {
|
|
return NO;
|
|
}
|
|
if(![self.authUserId isEqualToString: aUser.authUserId]) {
|
|
return NO;
|
|
}
|
|
if (![self.accountId isEqualToString: aUser.accountId]) {
|
|
return NO;
|
|
}
|
|
if(![self.anonUserAcquisitionDate isEqualToString: aUser.anonUserAcquisitionDate]) {
|
|
return NO;
|
|
}
|
|
if(![self.authUserAcquisitionDate isEqualToString: aUser.authUserAcquisitionDate]) {
|
|
return NO;
|
|
}
|
|
if (![self.accountAcquisitionDate isEqualToString: aUser.accountAcquisitionDate]) {
|
|
return NO;
|
|
}
|
|
if (![self.userAgent isEqualToString: aUser.userAgent]) {
|
|
return NO;
|
|
}
|
|
if(![self.storeRegion isEqualToString: aUser.storeRegion]) {
|
|
return NO;
|
|
}
|
|
|
|
return YES;
|
|
}
|
|
|
|
@end
|