Skip to content

Instantly share code, notes, and snippets.

@rubyist
Created September 5, 2012 12:45
Show Gist options
  • Save rubyist/3636038 to your computer and use it in GitHub Desktop.
Save rubyist/3636038 to your computer and use it in GitHub Desktop.
Basic structure
objectManager = [RKObjectManager managerWithBaseURLString:kAPIBaseURL];
objectStore = [RKManagedObjectStore objectStoreWithStoreFilename:kDataStore];
objectManager.objectStore = objectStore;
// Set up object mappings, relationships, etc. e.g.
RKObjectMapping *collectionMapping = [Item mappingInStore:objectStore];
// Pagination mapping
RKObjectMapping *paginationMapping = [RKObjectMapping mappingForClass:[RKObjectPaginator class]];
[paginationMapping mapKeyPath:@"pagination.page" toAttribute:@"currentPage"];
[paginationMapping mapKeyPath:@"pagination.per_page" toAttribute:@"perPage"];
[paginationMapping mapKeyPath:@"pagination.items" toAttribute:@"objectCount"];
[objectManager.mappingProvider setPaginationMapping:paginationMapping];
[objectManager.mappingProvider setMapping:collectionMapping forKeyPath:@"items"];
NSString *paginatedResource = [[NSString alloc] initWithFormat:@"%@?page=:currentPage&per_page=:perPage", [self collectionPath]];
objectPaginator = [objectManager paginatorWithResourcePathPattern:paginatedResource];
objectPaginator.delegate = self;
objectPaginator.objectStore = objectStore;
[objectPaginator loadPage:1];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment