LookinAttributeModification.m 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #ifdef SHOULD_COMPILE_LOOKIN_SERVER
  2. //
  3. // LookinAttributeModification.m
  4. // Lookin
  5. //
  6. // Created by Li Kai on 2018/11/20.
  7. // https://lookin.work
  8. //
  9. #import "LookinAttributeModification.h"
  10. @implementation LookinAttributeModification
  11. - (void)encodeWithCoder:(NSCoder *)aCoder {
  12. [aCoder encodeObject:@(self.targetOid) forKey:@"targetOid"];
  13. [aCoder encodeObject:NSStringFromSelector(self.setterSelector) forKey:@"setterSelector"];
  14. [aCoder encodeInteger:self.attrType forKey:@"attrType"];
  15. [aCoder encodeObject:self.value forKey:@"value"];
  16. }
  17. - (instancetype)initWithCoder:(NSCoder *)aDecoder {
  18. if (self = [super init]) {
  19. self.targetOid = [[aDecoder decodeObjectForKey:@"targetOid"] unsignedLongValue];
  20. self.setterSelector = NSSelectorFromString([aDecoder decodeObjectForKey:@"setterSelector"]);
  21. self.attrType = [aDecoder decodeIntegerForKey:@"attrType"];
  22. self.value = [aDecoder decodeObjectForKey:@"value"];
  23. }
  24. return self;
  25. }
  26. + (BOOL)supportsSecureCoding {
  27. return YES;
  28. }
  29. @end
  30. #endif /* SHOULD_COMPILE_LOOKIN_SERVER */