Blake Watters
412b0f9756
Work in progress on cleanup
2012-01-20 10:21:18 -05:00
Blake Watters
fb41eb73ec
Work in progress on responsibility cleanup
2012-01-20 10:21:18 -05:00
Blake Watters
254553dc7c
Initial implementation of RKObjectPaginator
2012-01-20 10:21:18 -05:00
Blake Watters
563f5e909b
Updated all example projects to build against the new project. Cleaned up header imports for flattened project structure
2011-12-02 09:26:36 -05:00
Blake Watters
23422c7f37
Expanded docs in RKObjectMappingProvider. Normalized some method signatures
2011-10-13 23:51:16 -04:00
Parker
99250475ad
added Apache License headers to all files in ObjectMapping directory
2011-09-07 11:31:01 -04:00
Blake Watters
c4a946c5bf
Expanded documentation of objectLoaderDidLoadUnexpectedResponse: for clarity of additional use-cases beyond HTTP status code.
2011-08-28 16:00:36 -04:00
Blake Watters
c171bed7d3
Don't generate an unmappable content error if a successful status code is returned along with an empty response body. This enables the use of the status code to indicate success without any content for mapping. In these cases, we wrap the targetObject of the loader into a RKObjectMappingResult at the @"" keyPath so that the delegates are invoked as expected. closes #189
2011-07-06 22:01:10 -04:00
Blake Watters
7053a8ca97
Add support for sending objects of one type and getting back another. Target object has been disambiguated into sourceObject and targetObject
...
and act independently with regards to serialization and destination mapping. When you leverage the getObject:mapResponseWith: flavor of methods,
the type of your sourceObject is checked with the destination type of the object mapping. If they agree, it is assumed that you are trying to update
the object with the results of the mapping and targetObject is set appropriately. If they do not match, the targetObject is set to nil so that new
objects will be loaded. closes #161 , #168
2011-06-30 10:33:39 -04:00
Blake Watters
2ac45f5ccc
Refactored object loaders to provide easier support for non-nested JSON responses. There are new flavors of getObject:, postObject:, etc.
...
that allow the developer to explicitly specify the object mapping to use for processing the response. closes #168
2011-06-30 10:33:39 -04:00
Blake Watters
851df3bcba
Changed signature of willMapData: to allow you to completely replace the mappableData.
2011-06-28 11:46:03 -04:00
Blake Watters
0949337749
Allow modification of the data in objectLoader:willMapData: by creating a mutable copy of the parsed data if the delegate method is implemented.
2011-06-27 16:37:55 -04:00
Daniel Hammond
d9fc311433
Remove objects persisted to Core Dataduring postObject: when there is an error (Fix Issue #125 )
2011-06-16 21:17:14 -04:00
Blake Watters
8e5fa664e8
Cleaned up miscellaneous artifacts from squashing object mapping 2.0
2011-06-11 20:34:10 -04:00
Blake Watters
f3c0995d5e
Implementation of Object Mapping 2.0 design:
...
* Removed RestKit from inheritance hierarchy
* Mappings are implemented as concrete classes
* Mapper is much more flexible & powerful
* Much more robust error handling
* Serialization is reimplemented as an object mapping operation
* Added ability to serialize to JSON natively
* Reworked Core Data integration
* Simplified the codebase substantially
2011-06-11 19:26:56 -04:00
Blake Watters
2109fae1ba
Finished cleaning up Core Data support. Happy with the new organization
2011-03-19 22:06:51 -04:00
Blake Watters
3467ac5d49
DiscussionBoard and RKTwitter now build properly. May fold the code back out of RKManagedObjectLoader tomorrow.
2011-02-13 02:19:53 -05:00
Blake Watters
b9e4f57fb0
Work in progress factoring Core Data dependencies out of the Object Mapping layer
2011-02-13 01:19:37 -05:00
Blake Watters
39a77057ed
Removed saveObjectStore method on RKObjectManager, step toward separating Core Data from the base object mapping. RKObjectLoader now ensures that the object store is persisted appropriately before object loaders are sent
2011-01-21 00:56:17 -05:00
Jeremy Ellison
471a4ad137
RKObjectLoader should be set up with the object managers client, not the shared one.
...
This fixes support for apps using multiple baseURLs via multiple clients or managers.
2011-01-13 13:41:52 -05:00
Jeremy Ellison
6a5ee2af7e
Revert "Remove per-file copyrights"
...
This reverts commit 91e7c6bb5e .
2011-01-12 15:27:19 -05:00
Jeremy Ellison
91e7c6bb5e
Remove per-file copyrights
2011-01-12 15:05:22 -05:00
Jeff Arena
c9ba879937
removed duplicate delegates on RKObjectLoader; inverted control for communicating request completion from RKResponse to RKRequest; added state tracking to RKRequest for loaded and loading states; changed queue processing logic to check request states before firing new requests; removed retains of RKObjectLoader from RKRequestTTModel since our queue is handling retains for all asynchronous RKRequest flavors; added separate state tracking to RKRequestTTModel since there are subtle differences between the meaning of loaded/loading in Three20 versus our RKRequest states; removed delegate forwarding code from RKObjectLoader since it is no longer an RKRequestDelegate (which was quite ugly to begin with); removed unnecessary error contructor for RKResponse that was only being used to fire delegate callbacks when an RKRequest failed to fire in offline mode; added TODOs to deep-dive into synchronous request handling
2010-12-02 13:22:38 -08:00
Jeff Arena
6249ece2bc
Merge branch 'reachability-queue-three20' of git://github.com/twotoasters/RestKit into reachability-queue-three20
...
Conflicts:
Code/Network/RKRequest.m
RestKit.xcodeproj/project.pbxproj
2010-12-01 21:06:54 -08:00
Jeff Arena
39f3d568e2
added reachability support at the manager and client level; added code to short circuit requests if offline; fixed issue with source parameter on loader related to passing managed objects across thread boundaries; added resource path property to the loader
2010-11-30 19:38:27 -08:00
Jeff Arena
7e1e1807bd
dry-up object store saves on the manager; use an ivar over the request userdata for storing the source on the manager
2010-11-09 09:35:13 -08:00
Blake Watters
ec0c221a33
Allow for mapping directly into an object that doesn't have an element registered with the mapper. We check that the class implements RKObjectMappable and blow up otherwise. Updated comments on the loader...
2010-10-21 13:31:21 -04:00
Blake Watters
4427844e07
Introduced objectLoaderDidLoadUnexpectedResponse: delegate method for handling odd-ball responses during an object load
2010-10-20 21:04:20 -04:00
Jeff Arena
1a6fdeafd4
introduce RKManagedObjectCache protocol to CoreData component; cleanup remaining NSFetchRequest ivars that are now unused; add RKURL class for making resourcepath and baseurl params available to higher level components; cleanup Three20 library to incorporate latest updates from GateGuru codebase
2010-10-18 16:36:24 -04:00
Jeff Arena
592b2a9e32
initial pass at changing fetchRequest APIs to work with a collection of fetch requests; also performed some API cleanup on RKManagedModel
2010-10-14 19:14:55 -07:00
timkerchmar
320e96e48e
Update headers for three20 support.
...
Add keyPath support to the object loader.
2010-10-12 14:32:06 -04:00
Blake Watters
bd93d43f94
Finished split into more logical components. Library now copies Headers to Build/RestKit and you can selectively link against the components your app needs. libRestKit.a contains everything from the core library.
2010-10-01 13:02:24 -04:00