Blake Watters
3b5fe29e8b
Fix incorrect consultation of containsEntityMapping rather than isManagedObjectRequestOperation
2012-12-09 23:55:40 -05:00
Blake Watters
1c86cfab75
Improve RKManagedObjectRequestOperation handling for DELETE requests and expand test coverage
...
* Failure to match a response descriptor no longer fails DELETE requests
2012-12-09 23:24:45 -05:00
Blake Watters
38480b269c
Rev docs referencing primaryKey as opposed to identificationAttributes
2012-12-08 11:41:48 -05:00
Blake Watters
c06a1a314d
Add documentation notes about the importance of coercing your values from the path matcher
2012-12-08 00:44:28 -05:00
Blake Watters
3d6c211417
Add documentation notes about how easy it is to fuck things up with relative paths
2012-12-08 00:34:15 -05:00
Blake Watters
d79dec118a
Greatly improve error output when all response descriptors fail to match. closes #1060
2012-12-07 17:39:02 -05:00
Blake Watters
0eb875679d
Add proxy attributes enabling pagination mapping configuration under iOS 5. Expand documentation. closes #1040
2012-12-07 14:16:50 -05:00
Blake Watters
b1f57612e1
Add support for replacing the HTTP client on the object manager and mutating the baseURL on the router. closes #1051
2012-12-07 13:49:18 -05:00
Blake Watters
997158e9e6
Fix issues with incorrect determination of the appropriate object request operation. fixes #1054 , #1056
...
* Expands test coverage for the `appropriateObjectRequestOperationWithObject:method:path:parameters:`
* Uses an object graph visitor to completely navigate the mapping graph, ensuring that an `RKEntityMapping` appearing at any nesting level will be correctly handled
2012-12-07 12:40:02 -05:00
Sam Krishna
0210424c6c
Added proper support for RKDynamicMapping as a container for RKEntityMappings inside of RKObjectManager.
2012-12-07 11:41:33 -05:00
Blake Watters
ff1de2b740
Fix incorrect header comment in documentation of RKRequestDescriptor. fixes #1048
2012-12-02 00:28:19 -05:00
Blake Watters
89d0294dcd
Expose access to the RKMapperOperationDelegate to RKObjectRequestOperation subclasses. closes #1009
2012-11-29 23:35:45 -05:00
Blake Watters
4eb765aad8
Switch to %ld and cast counts to long to suppress warnings on OS X
2012-11-29 00:21:56 -05:00
Blake Watters
8dc54a89b2
Major overhaul to the Core Data managed object identification and relationship connection support.
...
* Replaces primary key with `RKEntityIdentifier`
* Add support for use of compound keys for object identification
* Refactor `RKConnectionMapping` to `RKConnectionDescription` and add support for connecting with multiple attributes
* Clarify naming of representation key methods to better match naming conventions
* Add type transformation support for object identification
* Greatly expand test coverage for object identification
* Drop the `NSEntityDescription` category
* Simplify the `RKManagedObjectCaching` protocol
* Add compound key support to the Fetch Request and In Memory Cache implementations
* Replace Kiwi with Specta for tests where contexts are helpful for organization
* Rename `defaultValueForMissingAttribute` to `defaultValueForAttribute`
2012-11-27 10:29:36 -05:00
Blake Watters
0aeb5f6de4
Restore paginator integration in Object Manager
2012-11-19 12:01:07 -05:00
Blake Watters
9d14bfe395
Rev docs for willMapDeserializedResponseBlock. refs #900
2012-11-18 22:54:05 -05:00
Blake Watters
61f0817776
Update docs regarding error behavior in the event nil is returned by the willMapDeserializedResponse block. closes #900
2012-11-18 22:50:56 -05:00
Blake Watters
54dce20ac6
Rework paginator support for 0.20. closes #1024 , #900 , #759
...
* Renamed RKObjectPaginator to RKPaginator for simplicity
* Removed delegate on paginator in favor of simple success/failure blocks
* Added `willMapDeserializedResponseBlock` for manipulating the response body before mapping begins
* Added support for cancelling an in-progress pagination request
2012-11-18 22:44:33 -05:00
Blake Watters
e088bdc186
When managedObjectContext is set to nil on RKManagedObjectRequestOperation, avoid creation of an orphaned privateContext
2012-11-09 11:05:26 -05:00
Blake Watters
c5cdff950f
Add NSParameterAssert guards for getObject:, postObject:, putObject:, patchObject:, and deleteObject:
2012-11-09 10:53:49 -05:00
Blake Watters
e109036683
Add support and test coverage for serializing Boolean properties to JSON as true/false instead of numbers. closes #920 , #827
2012-11-08 23:41:19 -05:00
Blake Watters
b723788fce
Style touch-up
2012-11-08 19:31:38 -05:00
Jeff Arena
129cc6f052
Fix issue with cross-context object comparison in case of local deletes.
2012-11-08 14:24:24 -05:00
Jeff Arena
9d40138129
Change the default value for deletesOrphanedObjects to YES in RKManagedObjectRequestOperation
2012-11-08 13:58:10 -05:00
Blake Watters
e85cf659c0
Improve Request Descriptor registration and lookup behaviors:
...
* Add assertion to object manager when you attempt to register an overlapping request descriptor
* Improve search algorithm to handle subclass matches
2012-11-05 23:10:57 -05:00
Blake Watters
28c8262b0d
Port commented out unit tests from 0.10.x to latest development sources to nail down issues with targetObject behaviors
2012-11-05 18:38:24 -05:00
Blake Watters
e7505df56c
Fix retain cycles detected by Xcode 4.6 static analyzer
2012-11-05 18:38:23 -05:00
Jeff Arena
2612604df3
Fix accept header issue with multipart requests.
2012-11-03 11:37:54 -04:00
Blake Watters
94318d1cb2
Add support for returning fetched objects when a 304 'Not Modified' response is loaded. closes #1006
2012-10-28 21:44:42 -04:00
Blake Watters
5cab23b3af
Fix autoreleasepool error under iOS 5.x. fixes #1008
2012-10-28 20:32:10 -04:00
Blake Watters
de016e22f3
Refetch the mapping results from the original managed object context before returning to the caller. fixes #1011
...
Eliminate the thread safe invocation class.
2012-10-28 20:22:53 -04:00
Blake Watters
337d078942
nil out the mapping result in the event we have encountered an error
2012-10-28 19:39:14 -04:00
Blake Watters
d71893bf43
Remove errantly committed logging statement
2012-10-27 18:08:15 -04:00
Blake Watters
9fa32fb08c
Formatting tweak
2012-10-27 17:48:00 -04:00
Blake Watters
e457aba0fa
Fix issue with nil arguments to success/failure block introduced earlier today
2012-10-27 16:41:46 -04:00
Blake Watters
a3bef1699a
Add missing assert message
2012-10-27 16:21:13 -04:00
Blake Watters
29fecfd8bc
Drop GG prefix in examples in header
2012-10-27 16:20:55 -04:00
Blake Watters
d2dc222766
FIx inappropriate use of __block when we mean __weak
2012-10-27 10:25:14 -04:00
Blake Watters
a484af05f5
Update logger to display basic info about an input stream used to send a request instead of wrongly logging request.body=(null)
2012-10-25 13:18:01 -04:00
Blake Watters
9ef8be412e
Update docs to include note about setHTTPOperationClass:
2012-10-25 10:07:14 -04:00
Blake Watters
4a79ab6b68
Conditionalize log message regarding awaiting execution of connection operations and move to Trace logging level
2012-10-23 11:18:45 -04:00
Blake Watters
f96fee87b6
Add a decent description method to the object request operations
2012-10-22 19:29:58 -04:00
Blake Watters
f93a044561
Add error condition when attempting to map an RKEntityMapping containing connection mappings with a nil managed object cache.
...
* Add support for the data source to fail mapping operation with an error.
* Clean up error handling within RKMappingOperation
2012-10-21 15:47:16 -04:00
Blake Watters
c7ce86e9ac
Improve docs on success/failure blocks
2012-10-20 10:51:49 -04:00
Blake Watters
08110ca300
Implement support for cancellation and prioritization of response mapping operations using an operation queue global to all object request operations.
...
* Passes through cancellation from object request operation to HTTP request operation and response mapping operation. closes #993
* Performs all object mapping within an NSOperationQueue to enable constraining of mapping activities.
* Add default mapping queue with concurrency limit of 1 operation.
* Migrate deserialization of the response body into a serial dispatch queue to ensure that only one parse occurs at a time.
2012-10-20 00:13:48 -04:00
Blake Watters
0738f59231
Added assertion to trap very nasty Core Data mapping error in which existingObjectWithID:error: returns an object in another context, indicating that the object graph has been poisoned, most likely by obtaining a permanent managed object ID from the wrong context.
2012-10-19 17:53:09 -04:00
Blake Watters
f69c2976e2
Fix bug with dynamic parameterization when the concrete mapping includes a date.
...
Instead of relying on reference to the RKMapping, which could be dynamic, traverse from the attribute mapping back to its parent to obtain the appropraite date formatter.
2012-10-18 14:38:36 -04:00
Blake Watters
384ff80845
Add support for spinning the Network Activity Indicator while object request operations are executing. Add notifications for tracking object request operation lifecycle.
2012-10-17 22:35:13 -04:00
Blake Watters
68cebc96af
Added convenience function for getting a fetch request from an array of fetch request blocks
2012-10-17 22:34:09 -04:00
Blake Watters
feb998ea84
Added support for truncating the length of logged request and response bodies via the 'RKLogMaxLength' environment variable to avoid getting hammered with output on the Trace level
2012-10-17 22:33:31 -04:00