Blake Watters
29f6e7cc08
Added test case for NSMutableSet mapping on managed object. refs #1201
2013-03-16 15:39:13 -04:00
Blake Watters
a0a0adf7d1
Make deletion of newly inserted objects that fail validation configurable. closes #1281
2013-03-16 15:26:04 -04:00
Blake Watters
96b9d6f683
Rework deletion operations to avoid deleting objects that would be valid if mapping we allowed to assign them to the desintation relationship. refs #1225
2013-03-14 20:13:32 -04:00
Blake Watters
e831e03ccb
Add workaround to avoid potential crash during execution of deletion operations on iOS 5. closes #1266
2013-03-13 22:28:24 -04:00
Blake Watters
e62a9862d7
Rework RKManagedObjectMappingOperationDataSource to avoid performing mutable(Array|Set|OrderedSet)ValueForKeyPath: unless there are existing objects and the identificationAttributes are nil. refs #1232
2013-03-10 14:22:38 -04:00
Panupan Sriautharawong
be7ccc7404
Add test coverage for connection of objects with temporary ID's. closes #1227
2013-03-09 17:49:14 -05:00
Blake Watters
02247695b1
Fix intermittent crashes during test execution
2013-03-07 15:33:11 -05:00
Blake Watters
986399f937
Fix test breakage related to use of dispatch_async within RKEntityByAttributeCache
2013-02-07 12:44:51 -05:00
Blake Watters
4f442b142f
Fix issue where NSManagedObject instances that are invalid due to missing require relationship when finished mapping, but are made valid by connected relationships are deleted prematurely. fixes #1179
2013-01-29 11:44:15 -05:00
Blake Watters
5d7669bcc1
Fix creation of duplicated managed objects when you map a nil source key path onto an indentification attribute. fixes #1194
2013-01-29 10:03:19 -05:00
Blake Watters
d761de0ea7
Fix crash when attempting to map nil sourceKeyPath as identification attribute
2013-01-26 00:21:44 -05:00
Blake Watters
2351fc2472
Add unit test and fix for crash during eviction of cache keys during query for compound identification attributes. closes #1171
2013-01-21 13:18:42 -05:00
Blake Watters
a65a50e8f7
Fix bug with mapping nested attribute values with identification attributes when the identification attribute is not the nesting key. fixes #1129
2013-01-17 11:34:40 -05:00
Blake Watters
01c34fe289
Fix crash when mapping to NSManagedObject class with Transformable attribute without a backing property. fixes #1162
2013-01-17 10:38:53 -05:00
Blake Watters
868d83be2c
Don't create unnecessary objects when mapping temporary managed objects POST'd without identification attributes. closes #1149
2013-01-15 22:45:43 -05:00
Blake Watters
260d01a1b0
Switch to use of Expecta raiseWIthReason matcher after applying fix for crash due to failure to copy blocks
2013-01-15 09:14:11 -05:00
Blake Watters
259e6c2fe5
Fix all test breakage in OS X Framework tests
2013-01-15 09:07:44 -05:00
Blake Watters
c98dd41c2f
Reimplement predicate caching within the RKFetchRequestManagedObjectCache to avoid nasty crash due to malformed predicates. fixes #1141
2013-01-14 23:01:55 -05:00
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
7f8320c514
Add helpful error message if you call requestMapping on an RKObjectMapping subclass
2013-01-06 01:11:09 -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
28887d3384
Add support for deletion of mapped objects by predicate. closes #1109
2013-01-01 15:27:01 -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
26fc8dd61f
Claw back performance lost due to addition of External Binary Storage to the Unit Testing model
2012-12-26 20:23:44 -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
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
Charlie Savage
a67bb48ece
Reimplement connection matchers and add test case.
2012-12-23 21:58:59 -07:00
Blake Watters
ef038aed73
Add a unit test for concurrent mapping of managed object request operations targetting the same unique Core Data objects. closes #1079
2012-12-19 23:02:52 -05:00
Blake Watters
408072f733
Add support and tests for inferring entity identifiers from superentity user info. closes #954
2012-12-19 22:21:09 -05:00
Blake Watters
0a28ecb507
Add optional support for connecting to subentities. fixes #1059
2012-12-19 18:32:32 -05:00
Blake Watters
862e84a515
Hook the RKManagedObjectMappingOperationDataSource into the Managed Object Context save lifecycle to avoid the creation of duplicate objects during sequential mapping operations
2012-12-18 22:00:44 -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
f4457f2948
Add MOC reset to the beginning of resetPersistentStores:. closes #1018
2012-12-07 15:06:13 -05:00
Blake Watters
79e31b524a
Refactored managed object caches and connection support to enable connecting by multiple atributes that are specified as arrays.
...
* Migrated the caches to return `NSSet` to eliminate duplicate objects when your cache keys overlap
* Introduced new recursive strategy for building cache keys in `RKInMemoryManagedObjectCache`
* Added support for array cache key values in `RKFetchRequestManagedObjectCache`
* Re-enabled a slew of tests that were disabled during 0.20 development
2012-12-06 23:43:34 -05:00
Blake Watters
a5dc037ef9
Add support for inferring attributes that match the snake-case _id pattern. closes #1047
2012-12-02 14:34:03 -05:00
Blake Watters
cbb3f70571
Eliminate the RKEntityIdentifier class and migrate the functionality into properties on RKEntityMapping
2012-12-02 13:08:52 -05:00
Blake Watters
b502f5431b
Drop the entity description category entirely
2012-11-28 22:52:39 -05:00
Blake Watters
1196a42e54
Docs for RKConnectionDescription
2012-11-27 22:18:29 -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
f3a853e871
Drop RK prefix from entity names
2012-11-23 22:19:12 -05:00
Blake Watters
3db5307f6a
Add missing test coverage for key path based connection scenarios. Fixes crashes resulting from double collection wrapping during connection.
2012-11-08 19:31:38 -05:00
Blake Watters
f2ff70177c
Merge branch 'development' of github.com:CFKevinRef/RestKit into CFKevinRef-development
2012-11-07 21:59:38 -05:00
Blake Watters
6d487dbc9e
Add support for excluding the SQLite store file from iCloud Backups to conform with the iOS Data Storage Guidelines. closes #929
2012-10-29 01:22:50 -04:00
Blake Watters
c44f4010fa
Add support for specifying a configuration and customizing the options when adding a SQLite persistent store to the managed object store. closes #984
2012-10-29 00:32:56 -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
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
1f3f2646b5
Port a few test cases to Expecta syntax
2012-10-18 12:14:34 -04:00