Commit Graph

92 Commits

Author SHA1 Message Date
Blake Watters
a868d7fa2a Delete deprecations from RKManagedObjectStore 2012-08-28 17:37:21 -04:00
Blake Watters
ce6b0829e4 Convert RestKit to ARC 2012-08-28 17:34:58 -04:00
Blake Watters
37c70e4c27 Migrate path utilities to C functions instead of encapsulating into static methods on RKDirectory to reduce API size 2012-08-14 09:57:27 -04:00
Blake Watters
6cc54fae9f Fix crashes during test suite execution due to delay during processing of NSManagedObjectContextDidSaveNotification 2012-08-07 16:59:19 -04:00
Blake Watters
232b3eb861 Implemented new search engine for managed objects. 2012-08-01 18:12:53 -04:00
Blake Watters
07aadeebdf Reimplemented the managed object store, converted managed object seeder to importer, cleaned up test breakage. 2012-07-26 17:33:35 -04:00
Blake Watters
093a76e7b2 Migrated to a single entity cache for the primary MOC instead of one per thread 2012-07-20 15:41:47 -04:00
Blake Watters
6b315fbd54 Updates to entity cache and other components to operate in parent/child context world. 2012-07-20 14:48:09 -04:00
Blake Watters
e952f451fb Eliminated the use of the ActiveRecord pattern across the library. 2012-07-20 14:48:09 -04:00
Blake Watters
6af38b8b6d Obtain permanent object ID's for managed objects before sending via RKManagedObjectLoader 2012-07-17 16:26:21 -04:00
Blake Watters
b25a1833b3 Ported RestKit to using managed object contexts with concurrency types. Numerous cleanups and API updates. 2012-07-16 22:47:06 -04:00
Blake Watters
cfa0df1841 Breakthrough on parent/child MOC setup 2012-07-13 14:11:48 -04:00
Blake Watters
f0706dbdbf Work in progress
Conflicts:
	Code/CoreData/RKManagedObjectLoader.h
	Code/CoreData/RKManagedObjectLoader.m
	Code/CoreData/RKManagedObjectMapping.m
	Code/CoreData/RKManagedObjectMappingOperation.m
	Code/CoreData/RKManagedObjectStore.m
	Code/CoreData/RKManagedObjectThreadSafeInvocation.h
	Code/CoreData/RKManagedObjectThreadSafeInvocation.m
	Code/CoreData/RKSearchableManagedObject.m
	Code/ObjectMapping/RKObjectLoader.m
	Code/ObjectMapping/RKObjectMapper.h
	Code/ObjectMapping/RKObjectMappingOperation.m
	RestKit.xcodeproj/project.pbxproj
	Tests/Logic/CoreData/RKManagedObjectThreadSafeInvocationTest.m
2012-07-13 13:07:42 -04:00
Blake Watters
c4a329cc58 Use dispatch_sync instead of NSOperation for merging changes from background notification 2012-07-11 16:47:33 -04:00
Blake Watters
ec6cdd1356 Migrate performSelectorOnMainThread and performSelectorInBackground invocations to GCD 2012-07-11 16:45:08 -04:00
Jawwad Ahmad
abb46c382c Ensure the stars for all pointers belong to the variable rather than the type. Refs #614 2012-06-04 22:47:30 -04:00
Jawwad Ahmad
eaa5484b01 Placing opening braces on a new line for methods to match Apple convention. Refs #614
Used uncrustify's "nl_fdef_brace = add" option to detect issues.
2012-06-04 00:36:19 -04:00
Blake Watters
f585d34f91 Ensure creation of Application Data directory when initializing Managed Object Store. fixes #657 2012-05-19 16:29:01 -04:00
Blake Watters
016f13dad0 Convert all tabs to four spaces. refs #743 2012-05-17 18:10:59 -04:00
Blake Watters
fcb973056b Cleanup trailing whitespace. refs #743 2012-05-17 18:00:16 -04:00
Blake Watters
5a53fdbf1e Added test coverage for creation of duplicate objects. refs #661 2012-04-30 20:31:28 -04:00
Blake Watters
9c6316cb45 Merge pull request #673 from timmehmainframe/patch-1
delegate would always be nil for managedObjectStore:didFailToCopySeedDat...
2012-04-17 23:53:43 -04:00
Blake Watters
e70bd93158 Recreate the MOC after deletion of persistent store using a seed database. fixes #676 2012-04-17 23:50:28 -04:00
Ed McManus
0df8c7ea73 Fix spelling of persistent store. 2012-04-14 11:48:22 -07:00
Aaron Crespo
22225cf8a0 Fixed Static analysis warnings. 2012-04-11 22:44:58 -04:00
Blake Watters
0d80bc3744 Switch default cacheStrategy to RKFetchRequestManagedObjectCache. closes #660 2012-04-10 15:16:28 -04:00
Blake Watters
dd852d90c3 Fix broken build from merge of 0.10.0 2012-04-06 00:03:35 -04:00
Blake Watters
a8483ca643 Merge branch 'release/0.10.0' into development 2012-04-04 20:19:43 -04:00
Blake Watters
457a6126cf Refresh copyright notices for all source files 2012-04-04 09:08:54 -04:00
Blake Watters
61aefd5eda Restore default cache strategy to In Memory Cache 2012-04-04 08:20:21 -04:00
Blake Watters
8aedbeb1a5 Added helper methods for deleting managed object stores 2012-04-03 23:39:42 -04:00
Blake Watters
a545c3942b Integrated primaryKey extension to NSEntityDescription and refactored cache strategy
classes to eliminate issues with duplicated objects. closes #611, #612, #613, #618

* NSEntityDescription is now aware of the primaryKeyAttribute. Can be configured via
Interface Builder within Xcode or programatically.
* Added findByPrimaryKey: interface to the Core Data extensions.
* Relaxed dependencies on RKManagedObjectMapping across the system now that primaryKey is
available without a reference to the mapping.
2012-04-03 23:39:42 -04:00
Blake Watters
1b324ccc80 Temporary workaround for duplicated objects caused by RKInMemoryMappingCache. refs #612
There are some issues with the current implementation of the RKInMemoryMappingCache that
are allowing the creation of duplicated objects. This commit switches the default cacheStrategy
to RKFetchRequestMappingCache. The primary key branch (#613) contains architecture
improvements that allow for a robust fix to the issues in the memory based cache.
2012-03-31 16:44:35 -04:00
Blake Watters
947694deb1 Temporary workaround for duplicated objects caused by RKInMemoryMappingCache. refs #612
There are some issues with the current implementation of the RKInMemoryMappingCache that
are allowing the creation of duplicated objects. This commit switches the default cacheStrategy
to RKFetchRequestMappingCache. The primary key branch (#613) contains architecture
improvements that allow for a robust fix to the issues in the memory based cache.
2012-03-31 16:38:34 -04:00
Blake Watters
a740a9ce3b Drop RestKitCoreData.momd from the resources bundle. It is not currently viable to load the entities because you cannot reference entities in one model from another within Xcode. 2012-03-15 17:28:53 -04:00
Blake Watters
6efa73fa25 Fixed issues with accessing RestKitResources.bundle from within unit tests 2012-03-15 16:44:01 -04:00
Blake Watters
57183b364f Fix for warning emitted due to elimination of findOrCreateInstanceOfEntity:. Search Word functionality restored. closes #584
* Updates to the Core Data layer such that NSManagedObjectContexts now have a reference to the managed object store
they belong to.
* NSManagedObject instances can now return the managed object store they belong to.
* Relaxed the coupling to the sharedManager present within the RKSearchableManagedObject class.
* Expanded documentation of RKSearchableManagedObject
2012-03-14 17:08:02 -04:00
Blake Watters
88ab404ea1 Load the Core Data momd from RestKitResources.bundle 2012-03-09 17:48:51 -05:00
Blake Watters
1c59f5fc1e Cleaned up the naming on RKManagedObjectStore to primaryManagedObjectContext and managedObjectContextForCurrentThread 2012-03-09 09:02:21 -05:00
Jeff Arena
1cd22d5b33 First pass at replacing RKManagedObjectCache with a more flexible block approach that leverages the new resource path pattern matching approach to registering objectMappings. 2012-02-23 22:30:08 -05:00
Blake Watters
6c4461956f Recreate the retained MOC reference on store deletion 2012-02-23 20:49:59 -05:00
Blake Watters
5b655f1a23 Decoupled managed object contexts from the sharedManager instance. Various minor cleanups in CD. 2012-02-23 15:25:41 -05:00
Blake Watters
e904394b6b Miscellaneous cleanups 2012-02-17 16:34:03 -05:00
Blake Watters
4d48ef4729 Fixed breakage in OS X support 2012-02-15 17:48:59 -05:00
Blake Watters
36dfd9528e Change managed object context merge policy from NSOverwriteMergePolicy to NSMergeByPropertyStoreTrumpMergePolicy 2012-02-10 16:30:58 -05:00
Blake Watters
3d0f0ab39e Introduced the RKTableController component for iOS.
RKTableController provides a flexible, integrated system for driving iOS table views using
the RestKit object mapping engine. Local domain objects can be mapped into table cells within a
collection or presented for editing as part of a form. There are three flavors of table controllers
available:

* Static Tables: RKTableController can be used to render simple static tables that are composed of RKTableItems
presented in RKTableSections. Table items can quickly be built and added to a table without a backing model
or can have content object mapped into them for presentation.
* Network Tables: RKTableController can also render a table with the results of a network load. The typical use
case here is to have RestKit retrieve a JSON/XML payload from your remote system and then render the content into
a table.
* Core Data Tables: RKFetchedResultsTableController can efficiently drive a table view using objects pulled from a
Core Data managed object context. Typical use-cases here are for the presentation of large collections that are
pulled from a remote system, offering offline access, or speeding up a UI by using Core Data as a fast local cache.

RKTableController supports a number of bells and whistles including integrated searching/filtering and pull to refresh.
2012-02-10 16:30:54 -05:00
Blake Watters
4a45a15da1 Fixed nearly all broken tests for OS X target 2011-12-09 00:30:34 -05:00
Blake Watters
479864902b Fixed all build warnings on OS X Framework target 2011-12-08 23:23:20 -05:00
Blake Watters
f5008ff9fe Cleaned up broken specs for iOS. 2011-12-02 09:26:35 -05:00
Blake Watters
5b718890ac Checking in work in progress on the library reorganization 2011-12-02 09:26:35 -05:00