RestKit: как удалить основные записи данных, чтобы синхронизировать содержимое с сервером?
Я использую RestKit RKObjectManager для получения данных с моего сервера и сохранения в основных данных (см. Мой другойПочта)
Я хочу настроить поведение удаления старых записей, оставленных в базе данных.
Я видел, что в классе RKEntityMapping есть свойство deletionPredicate, но я понимаю, что оно используется только тогда, когда служба фактически возвращает объекты, которые должны быть удалены, помеченные как «подлежащие удалению». (я прав?)
В моем случае, когда некоторые объекты должны быть удалены, они просто НЕ возвращаются сервером, и я хотел бы, чтобы мое клиентское приложение понимало, что это означает, что оно должно удалить их.
Это возможно? И если да, то как?
РЕДАКТИРОВАТЬ:
Хорошо, я взглянул наэта ссылка и я добавил этот блок запроса на выборку в мой RKObjectManager:
[[RKObjectManager sharedManager] addFetchRequestBlock:^NSFetchRequest *(NSURL *URL) {
RKPathMatcher *pathMatcher = [RKPathMatcher pathMatcherWithPattern:@"/path_to_ressource"];
NSDictionary *argsDict = nil;
BOOL match = [pathMatcher matchesPath:[URL relativePath] tokenizeQueryStrings:NO parsedArguments:&argsDict];
if (match) {
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Entity"];
fetchRequest.sortDescriptors = @[ [NSSortDescriptor sortDescriptorWithKey:@"entityId" ascending:YES] ];
return fetchRequest;
}
return nil;
}];
Я сохранил sortDescriptor, но какова его цель здесь?