Blake Watters
4c0e62a62a
Add new RKManagedObjectStore method for assisting in performing migrations when you have made dynamic modifications to the managed object model (such as when you leverage the Search indexing support)
2013-01-08 18:26:05 -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
905048f737
Fix issue where unsaved managed object POST'd to the server with unsaved changes are not persisted if no mapping occurs. fixes #1130
2013-01-07 19:56:14 -05:00
Blake Watters
a21213e9c1
Add a more informative assertion when an RKManagedObjectResponseMapperOperation instance is not configured properly
2013-01-07 14:17:53 -05:00
Blake Watters
e9d5a87f7b
Drop unnecessary performBlockAndWait: invocation that may be correlated with occasional crashes seen in GateGuru
2013-01-07 13:50:03 -05:00
Blake Watters
7f8320c514
Add helpful error message if you call requestMapping on an RKObjectMapping subclass
2013-01-06 01:11:09 -05:00
Blake Watters
0d74946808
Add another mention about the objectClass in RKRequestDescriptor
2013-01-06 00:46:43 -05:00
Blake Watters
226f3f7dc7
Fix static analyzer warning about uninitialized success variable in RKMappingTest
2013-01-06 00:46:14 -05:00
Blake Watters
422768f6b1
Add support for dynamic nesting key serialization. closes #684
2013-01-03 23:02:49 -05:00
Blake Watters
9005bd573c
Add test coverage and fixes for RKMappingTest. closes #1086
2013-01-03 18:19:50 -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
879ffd73e6
Add support for deleting Core Data managed objects that fail validation out of the mapping context. This enables you to silently drop mapping for managed objects that fail validation. fixes #691 closes #694
2013-01-01 23:56:58 -05:00
Blake Watters
a30263b196
Fix issues with using the Paginator as documented in the headers. fixes #1117
2013-01-01 22:38:18 -05:00
Blake Watters
c08909761e
Adjust completion block implementation for RKPaginator to enable completion block to be invoked when used without a strong reference. fixes #1119 fixes #1093
2013-01-01 22:21:47 -05:00
Blake Watters
28887d3384
Add support for deletion of mapped objects by predicate. closes #1109
2013-01-01 15:27:01 -05:00
Blake Watters
9dc08ca27b
Drop instancetype from init methods since the compiler will infer it
2013-01-01 15:27:01 -05:00
Blake Watters
a03191c291
Add support for skipping an aggregate relationship mapping in the event that the parent representation does not contain any values for the property mappings of the concrete RKObjectMapping configured for the relationship. fixes #1114 , closes #1115
2012-12-31 17:33:41 -05:00
Blake Watters
d024a518a4
Fix broken dynamic mapping test
2012-12-31 15:26:44 -05:00
Blake Watters
b93fe1f7c9
Restore cycle detection and cleanup visitor codebase further
2012-12-31 14:50:32 -05:00
Blake Watters
1d27679ee3
Clean up the nasty mess in the visitor code and fix flaws in implementation of algorithm. Still some test breakage and additional coverage to put down
2012-12-31 14:39:37 -05:00
Blake Watters
9a128b678c
Fix issues with refetching results using visitation
2012-12-30 22:54:09 -05:00
Blake Watters
312b382f25
Add test and fix for invalid key path exceptions with dynamic mappings. refs #1111
2012-12-30 00:01:50 -05:00
Blake Watters
b23ea410a8
Add support and test for inversing a mapping containing attributes mapped with nil destination key paths. fixes #1116
2012-12-29 22:13:12 -05:00
Blake Watters
6493282772
Rework implementation of managed object deletion and refetching to use the refreshed visitor implementation. refs #1111 , #1113
2012-12-29 17:28:31 -05:00
Blake Watters
84c6822d25
Implement Tarjan's algorithm to efficiently traverse the RKResponseDescriptors within the RKManagedObjectRequestOperation and compute the key paths to all managed objects. refs #1113 , refs #1112
2012-12-28 00:29:27 -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
Jeff Arena
bbfec220ed
Fix logging issues with error method
2012-12-27 16:47:24 -05:00
Blake Watters
7745f17d90
Add temporary workaround for crashes related to ambiguous key paths in the deletion support. refs #1111
2012-12-27 15:11:51 -05:00
Blake Watters
12938622a8
Another subscripted access stragler
2012-12-26 19:30:22 -05:00
Blake Watters
379269010f
Fix additional usage of subscript access in dictionary merge routine
2012-12-26 19:18:59 -05:00
Blake Watters
62aa987d17
Fix another instance of subscripted access
2012-12-26 19:17:05 -05:00
Blake Watters
92458a1e88
Enable support for mapping a relationship flexibly via assignment policies. You can now map a relationship and assign its value by setting, replacing, or unioning (combining) the relationship. closes #1073 , closes #989
2012-12-26 17:56:39 -05:00
Blake Watters
b858f2753f
Grow up support for mapping to primitives by avoiding crashes due to null conversions. fixes #1043 , fixes #741 , fixes #703
2012-12-26 14:40:59 -05:00
Blake Watters
7d63ca36ac
Improve relationship connection behaviors when all connection attributes resolve to nil. Add logic for skipping the connection entirely. refs #1099
2012-12-26 10:53:16 -05:00
Blake Watters
d1568cad63
Add support for mapping singular values to collections. fixes #1046
2012-12-26 00:20:56 -05:00
Blake Watters
4b2b7dbe4c
Add support for skipping relationship connections if all connection attributes evaluate to nil. Add support for establishing connections when some connection attributes evaluate to nil. fixes #1099 closes #1102
2012-12-25 23:53:01 -05:00
Blake Watters
aecc1db352
Add support, tests, and documentation for the deletion of External Storage directory when an instance of RKManagedObjectStore is reset. closes #677
2012-12-25 14:50:13 -05:00
Blake Watters
285b75ea2a
Eliminate connection matchers in favor of source and destination predicates. closes #1105
2012-12-24 18:29:00 -05:00
Blake Watters
78e55c90a2
Merge branch 'feature/1105-connection-matchers' of github.com:cfis/RestKit into cfis-feature/1105-connection-matchers
2012-12-24 17:58:24 -05:00
Blake Watters
b3899ac191
Add support for mapping a relationship directly from the parent object representation, rather than at a nested key path. closes #859
...
* Update documentation in RKRelationshipMapping.h
2012-12-24 16:18:39 -05:00
Charlie Savage
a67bb48ece
Reimplement connection matchers and add test case.
2012-12-23 21:58:59 -07: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
0a033596da
Relax the use of use an the informal procotol for the errorMessage property in favor of the description method. closes #1104 , closes #1087 , closes #1095
...
* Change contract to the use the `description` method instead of `errorMessage`. This makes it work with any class out of the box
* Add import for RKErrorMessage to the Support.h header so it is immediately available
* Fix incorrect keyPath in the README.md
* Add additional notes about how the errors are constructed to the README
2012-12-22 19:03:30 -05:00
Blake Watters
7984d4f2ac
Reimplement inverseMapping so that it no longer sucks. fixes #864 , #1058
...
* Inversing non intelligently walks the mapping graph, ensuring that cyclic graphs are resolved properly
* Copy all attributes from the parent to the inverse mapping (date formatters, etc)
2012-12-22 16:36:55 -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
913b8a1b9e
Initialize RKPaginator with an operation queue. This avoids deadlocks when working with RKManagedObjectRequestOperation instances bound to the main thread. This is a workaround to deal with object request operations being non-concurrent and executing in the calling thread context. refs #1076
2012-12-21 14:11:05 -05:00
Blake Watters
0cc9ce671e
Improve the error messages for failure to match any key paths in the mapper
2012-12-20 22:16:42 -05:00
Blake Watters
953431a71a
Clean up registration of the bundled MIME Type implementations. refs #1097
2012-12-20 19:01:49 -05:00