Peter 76e5a7fab6 Add 'submodules/HockeySDK-iOS/' from commit 'c7d0c7026303253e2ac576c02655691e5d314fe2'
git-subtree-dir: submodules/HockeySDK-iOS
git-subtree-mainline: 085acd26c4432939403765234266e3c1be0f3dd9
git-subtree-split: c7d0c7026303253e2ac576c02655691e5d314fe2
2019-06-11 18:53:14 +01:00

46 lines
1.2 KiB
Objective-C

#import "BITSession.h"
/// Data contract class for type Session.
@implementation BITSession
///
/// 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.sessionId != nil) {
[dict setObject:self.sessionId forKey:@"ai.session.id"];
}
if (self.isFirst != nil) {
[dict setObject:self.isFirst forKey:@"ai.session.isFirst"];
}
if (self.isNew != nil) {
[dict setObject:self.isNew forKey:@"ai.session.isNew"];
}
return dict;
}
#pragma mark - NSCoding
- (instancetype)initWithCoder:(NSCoder *)coder {
self = [super initWithCoder:coder];
if(self) {
_sessionId = [coder decodeObjectForKey:@"self.sessionId"];
_isFirst = [coder decodeObjectForKey:@"self.isFirst"];
_isNew = [coder decodeObjectForKey:@"self.isNew"];
}
return self;
}
- (void)encodeWithCoder:(NSCoder *)coder {
[super encodeWithCoder:coder];
[coder encodeObject:self.sessionId forKey:@"self.sessionId"];
[coder encodeObject:self.isFirst forKey:@"self.isFirst"];
[coder encodeObject:self.isNew forKey:@"self.isNew"];
}
@end