123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- #ifdef SHOULD_COMPILE_LOOKIN_SERVER
- //
- // LookinStaticAsyncUpdateTask.m
- // Lookin
- //
- // Created by Li Kai on 2019/6/21.
- // https://lookin.work
- //
- #import "LookinStaticAsyncUpdateTask.h"
- @implementation LookinStaticAsyncUpdateTask
- - (void)encodeWithCoder:(NSCoder *)aCoder {
- [aCoder encodeObject:@(self.oid) forKey:@"oid"];
- [aCoder encodeInteger:self.taskType forKey:@"taskType"];
- [aCoder encodeObject:self.clientReadableVersion forKey:@"clientReadableVersion"];
- [aCoder encodeInteger:self.attrRequest forKey:@"attrRequest"];
- [aCoder encodeBool:self.needBasisVisualInfo forKey:@"needBasisVisualInfo"];
- [aCoder encodeBool:self.needSubitems forKey:@"needSubitems"];
- }
- - (instancetype)initWithCoder:(NSCoder *)aDecoder {
- if (self = [super init]) {
- self.oid = [[aDecoder decodeObjectForKey:@"oid"] unsignedLongValue];
- self.taskType = [aDecoder decodeIntegerForKey:@"taskType"];
- self.clientReadableVersion = [aDecoder decodeObjectForKey:@"clientReadableVersion"];
- if ([aDecoder containsValueForKey:@"attrRequest"]) {
- NSInteger value = [aDecoder decodeIntegerForKey:@"attrRequest"];
- if (value >= LookinDetailUpdateTaskAttrRequest_Automatic && value <= LookinDetailUpdateTaskAttrRequest_NotNeed) {
- self.attrRequest = value;
- } else {
- self.attrRequest = LookinDetailUpdateTaskAttrRequest_Automatic;
- }
- } else {
- self.attrRequest = LookinDetailUpdateTaskAttrRequest_Automatic;
- }
- if ([aDecoder containsValueForKey:@"needBasisVisualInfo"]) {
- self.needBasisVisualInfo = [aDecoder decodeBoolForKey:@"needBasisVisualInfo"];
- } else {
- self.needBasisVisualInfo = NO;
- }
-
- if ([aDecoder containsValueForKey:@"needSubitems"]) {
- self.needSubitems = [aDecoder decodeBoolForKey:@"needSubitems"];
- } else {
- self.needSubitems = NO;
- }
-
- }
- return self;
- }
- + (BOOL)supportsSecureCoding {
- return YES;
- }
- - (NSUInteger)hash {
- return self.oid ^ self.taskType ^ self.attrRequest ^ self.needBasisVisualInfo ^ self.needSubitems;
- }
- - (BOOL)isEqual:(id)object {
- if (self == object) {
- return YES;
- }
- if (![object isKindOfClass:[LookinStaticAsyncUpdateTask class]]) {
- return NO;
- }
- LookinStaticAsyncUpdateTask *targetTask = object;
- if (self.oid == targetTask.oid
- && self.taskType == targetTask.taskType
- && self.attrRequest == targetTask.attrRequest
- && self.needBasisVisualInfo == targetTask.needBasisVisualInfo
- && self.needSubitems == targetTask.needSubitems) {
- return YES;
- }
- return NO;
- }
- @end
- @implementation LookinStaticAsyncUpdateTasksPackage
- - (void)encodeWithCoder:(NSCoder *)aCoder {
- [aCoder encodeObject:self.tasks forKey:@"tasks"];
- }
- - (instancetype)initWithCoder:(NSCoder *)aDecoder {
- if (self = [super init]) {
- self.tasks = [aDecoder decodeObjectForKey:@"tasks"];
- }
- return self;
- }
- + (BOOL)supportsSecureCoding {
- return YES;
- }
- @end
- #endif /* SHOULD_COMPILE_LOOKIN_SERVER */
|