Blake Watters
24c0a25519
Fix incorrect serialization of a single object inputted as an array. closes #1289
2013-03-20 10:39:14 -04:00
Blake Watters
f00e309619
Add conditional passing of parameters into the AFHTTPClient to support OAuth signing. fixes #1200
2013-03-09 23:48:01 -05:00
Blake Watters
5d31166509
Revert "Pass parameters into AFHTTPClient instance to help with OAuth signing. closes #1200 "
...
This reverts commit 4634d66e53 .
2013-03-09 23:43:00 -05:00
Blake Watters
4634d66e53
Pass parameters into AFHTTPClient instance to help with OAuth signing. closes #1200
2013-03-09 23:41:27 -05:00
Blake Watters
3e351509b3
Fix crash when accessing a named route with no object for interpolation
2013-01-25 17:27:38 -05:00
Blake Watters
0364d6c67b
Integrate support for metadata mapping routing data. refs #1174
2013-01-24 23:16:48 -05:00
Blake Watters
7cca6891ce
Unwind earlier fix for obtaining permanent objectID for targetObject in favor of the overridden setter on RKManagedObjectRequestOperation
2013-01-23 17:28:08 -05:00
Blake Watters
23ca0c7ca4
Fix potential crash due to serious Core Data error from failing to obtain a permanent objectID for an object that was just saved to the persistent store, but whose objectID is stale. fixes #1183
2013-01-23 13:20:55 -05:00
Blake Watters
bf521310b2
Replace visitor with simply obtaining permanent objectID's for temporary objects inserted into the context
...
The visitation implementation was problematic with large object graphs. This will obtain permanent objectID's for all temporary objects, but avoids having to visit each node in the graph.
2013-01-15 16:32:45 -05:00
Blake Watters
3e425707fb
Fixed problems with initial implementation of temporary managed objects visitor. The implementation was under tested and only worked with a single relationship. refs #1001
2013-01-11 15:56:36 -05:00
Blake Watters
b61039c838
Use a visitor to identify all NSManagedObject instances being sent via the object manager which have a temporary managed object ID to avoid crashes during mapping. refs #1001
2013-01-09 21:11:38 -05:00
Blake Watters
4612121ae5
Unify RKHTTPRequestOperation and RKObjectRequestOperation subclass customization via registration API's. closes #1131
2013-01-08 21:33:45 -05:00
Blake Watters
70180022be
Add support for customizing the RKObjectRequestOperation and RKManagedObjectRequestOperation instances built through the object manager using a registration API very similar to that of AFHTTPClient. closes #1131
2013-01-08 10:49:49 -05:00
Blake Watters
bf63a77bc1
Add support for parameterizing an array of objects. closes #398
2013-01-03 11:11:25 -05:00
Blake Watters
c06347d5c5
Add support for customizing the HTTP request operation class used by RKPaginator. closes #1067
2013-01-02 00:27:40 -05:00
Blake Watters
5c21e52829
Update Dynamic Mapping API's to match the rest of the 0.20.x style. Introduce support for predicate based dynamic matching.
...
* Rename RKDynamicMappingMatcher to RKObjectMappingMatcher since it is not strictly coupled to dynamic mapping and works with object mappings.
* Rework matchers into using a class cluster style to enable flexible subclassing to introduce additional matchers.
2012-12-27 22:16:40 -05:00
Blake Watters
bc719087ac
Intelligently set the targetObject by exploring the mapping graph in appropriateObjectRequestOperationWithObject: to better support cases in which you POST/PUT one object, but map back another. fixes #1081
2012-12-23 00:26:33 -05:00
Blake Watters
b78deb3eed
Use instancetype in constructors for increased subclassing friendliness
2012-12-22 14:54:49 -05:00
Blake Watters
929cd44bd7
Undo previous paginator change. Instead, pass a reference to the operation queue from the RKObjectManager to any Paginator objects constructed through the manager. refs #1076
2012-12-21 16:00:43 -05:00
Blake Watters
b9457ce65c
Remove RKObjectManager specific value for the 'Accept' header and configure the header directly on the HTTP client instead. Register the AFJSONRequestOperation class in managerWithBaseURL:. Update documentation.
2012-12-11 21:24:22 -05:00
Blake Watters
3b5fe29e8b
Fix incorrect consultation of containsEntityMapping rather than isManagedObjectRequestOperation
2012-12-09 23:55:40 -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
0aeb5f6de4
Restore paginator integration in Object Manager
2012-11-19 12:01:07 -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
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
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
a3bef1699a
Add missing assert message
2012-10-27 16:21:13 -04:00
Blake Watters
f4bfdb389b
Add support for the registration of HTTP request operation subclasses on the manager to support easy customization of request operation handling. refs #997
2012-10-16 11:25:00 -04:00
Blake Watters
d6c429e735
Add tests clarifying issue regarding relativePath vs. relativeString. closes #996
2012-10-15 23:22:27 -04:00
Blake Watters
4ee29df72f
Ensure cancellation works with path patterns against baseURL's that include a path
2012-10-14 15:32:08 -04:00
Blake Watters
66f0c34b5d
Add conditional compilation for System Configuration header to avoid build error if SystemConfiguration is not pulled. refs #985
2012-10-06 00:07:38 -04:00
Blake Watters
a4a788b889
Wrap requestWithMethod:path:parameters: instead of reimplementing it. closes #959
2012-10-05 23:26:21 -04:00
Blake Watters
877ce255b5
Expand test coverage and fix situations where requests would unexpectedly initialize incorrectly without error
...
* RKObjectParameterization now returns an empty dictionary if mapping produces an unmappable representation error (no mappable attributes/relationships found)
* Log errors if request construction results in an NSError and return nil
* Ensure errors are passed back up through object parameterization instead of just returning nil
* Reset the serialization MIME Type registry during RKTestFactory set up to ensure it is in a sane state
* Convert Hamcrest matchers to Expecta in the object mapper tests to fix infinite recursion on test failure (will need to completely phase out Hamcrest soon)
2012-10-05 19:16:55 -04:00
Blake Watters
b9b34bf3dd
FIx nasty problem with HTTP method being dropped from earlier headers cleanup
2012-10-05 16:54:30 -04:00
Blake Watters
635b6257d1
Expose default headers as a property and rework intiialization logic to respect the AFHTTPClient instance with which the object manager was initialized. Update docs to reflect the changes. Add tests for initialization code paths.
2012-10-05 14:24:32 -04:00
Blake Watters
25e1f9ed4d
Don't send parameterization of the object with DELETE request's either. Update docs to reflect this. refs #947
2012-10-04 19:25:32 -04:00
Blake Watters
af234936ee
Don't send object parameters when performing a getObject: closes #947
2012-10-04 19:20:58 -04:00
Blake Watters
cf5ef24fe9
Eliminate use of associated objects on NSURL in favor of a smarter RKResponseDescriptor class to solve the relative URL problem. refs #966
...
Instead, fall back to treating all URL's as strings for matching purposes and manually performing relative URL testing. Adds `matchesURL:` and `matchesResponse:` methods to `RKResponseDescriptor`.
2012-10-04 14:11:05 -04:00
Blake Watters
2280674f5a
Touch up docs for batched object request operations
2012-09-30 19:30:35 -04:00
Jeff Arena
c301060ab8
Add APIs to RKObjectManager for use in firing batches of operations.
2012-09-30 13:43:12 -04:00
Dmitry Shevchenko
451a88bada
Moved lost comment for RKAssociateBaseURLWithURL
2012-09-28 16:15:21 -05:00
Dmitry Shevchenko
a09e8ce4eb
Associate base URL after query parameters
2012-09-28 16:13:07 -05:00
Blake Watters
adc1d178fa
Add cancellation API to RKObjectManager.
...
* Introduces `cancelAllObjectRequestOperationsWithMethod:pathPattern:`
* Make RKObjectRequestOperation cancel underlying request operation when cancelled
2012-09-27 22:33:19 -04:00
Blake Watters
82e4c1ba94
Docs for the baseURL association functions
2012-09-26 23:51:15 -04:00
Blake Watters
8b256ab418
Fix baseURL associated objects
2012-09-26 23:38:20 -04:00
Blake Watters
ee9ae20823
Add associated object from request URL to baseURL in order to workaround issues with NSURLRequest clobbering the baseURL
2012-09-26 22:46:32 -04:00
Blake Watters
098edd1fec
Throw a build failure if not compiled with ARC (boosted from AFNetworking/AFNetworking#541 )
2012-09-26 20:44:17 -04:00