Refactor save* method names

This commit is contained in:
Saul Mora
2012-03-08 23:35:05 +01:00
parent 9da8cf802d
commit 7d42e17ae5
5 changed files with 16 additions and 56 deletions

View File

@@ -323,7 +323,7 @@ NSString * const kMagicalRecordImportRelationshipTypeKey = @"type";
{
NSMutableArray *objectIDs = [NSMutableArray array];
[MagicalRecord saveDataWithBlock:^(NSManagedObjectContext *localContext)
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext)
{
[listOfObjectData enumerateObjectsWithOptions:0 usingBlock:^(id obj, NSUInteger idx, BOOL *stop)
{
@@ -350,7 +350,7 @@ NSString * const kMagicalRecordImportRelationshipTypeKey = @"type";
{
NSMutableArray *objectIDs = [NSMutableArray array];
[MagicalRecord saveDataWithBlock:^(NSManagedObjectContext *localContext)
[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext)
{
[listOfObjectData enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {

View File

@@ -9,30 +9,14 @@
#import <Foundation/Foundation.h>
#import "NSManagedObjectContext+MagicalRecord.h"
typedef enum
{
MRCoreDataSaveOptionInBackground = 1 << 0,
MRCoreDataSaveOptionWithNewContext = 1 << 1
} MRCoreDataSaveOption;
typedef enum
{
MRCoreDataLookupOptionWithNewContext = 1 << 0
} MRCoreDataLookupOption;
@interface MagicalRecord (Actions)
#ifdef NS_BLOCKS_AVAILABLE
+ (void) saveDataWithBlock:(void(^)(NSManagedObjectContext *localContext))block;
+ (void) saveWithBlock:(void(^)(NSManagedObjectContext *localContext))block;
+ (void) saveDataInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block;
+ (void) saveDataInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))callback;
+ (void) saveDataWithOptions:(MRCoreDataSaveOption)options withBlock:(void(^)(NSManagedObjectContext *localContext))block;
+ (void) saveDataWithOptions:(MRCoreDataSaveOption)options withBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))callback;
+ (void) lookupWithBlock:(void(^)(NSManagedObjectContext *localContext))block;
+ (void) saveInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block;
+ (void) saveInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))callback;
#endif

View File

@@ -37,7 +37,7 @@ void cleanup_save_queue()
#ifdef NS_BLOCKS_AVAILABLE
+ (void) saveDataWithBlock:(void (^)(NSManagedObjectContext *localContext))block errorHandler:(void (^)(NSError *))errorHandler
+ (void) saveWithBlock:(void (^)(NSManagedObjectContext *localContext))block errorHandler:(void (^)(NSError *))errorHandler
{
NSManagedObjectContext *mainContext = [NSManagedObjectContext MR_defaultContext];
NSManagedObjectContext *localContext = mainContext;
@@ -67,22 +67,22 @@ void cleanup_save_queue()
[mainContext setMergePolicy:NSMergeByPropertyObjectTrumpMergePolicy];
}
+ (void) saveDataWithBlock:(void(^)(NSManagedObjectContext *localContext))block
+ (void) saveWithBlock:(void(^)(NSManagedObjectContext *localContext))block
{
[self saveDataWithBlock:block errorHandler:NULL];
[self saveWithBlock:block errorHandler:NULL];
}
+ (void) saveDataInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block
+ (void) saveInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block
{
dispatch_async(background_save_queue(), ^{
[self saveDataWithBlock:block];
[self saveWithBlock:block];
});
}
+ (void) saveDataInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))callback
+ (void) saveInBackgroundWithBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))callback
{
dispatch_async(background_save_queue(), ^{
[self saveDataWithBlock:block];
[self saveWithBlock:block];
if (callback)
{
@@ -91,10 +91,10 @@ void cleanup_save_queue()
});
}
+ (void) saveDataInBackgroundWithBlock:(void (^)(NSManagedObjectContext *localContext))block completion:(void (^)(void))callback errorHandler:(void (^)(NSError *))errorHandler
+ (void) saveInBackgroundWithBlock:(void (^)(NSManagedObjectContext *localContext))block completion:(void (^)(void))callback errorHandler:(void (^)(NSError *))errorHandler
{
dispatch_async(background_save_queue(), ^{
[self saveDataWithBlock:block errorHandler:errorHandler];
[self saveWithBlock:block errorHandler:errorHandler];
if (callback)
{
@@ -103,31 +103,6 @@ void cleanup_save_queue()
});
}
+ (void) lookupWithBlock:(void(^)(NSManagedObjectContext *localContext))block
{
NSManagedObjectContext *context = [NSManagedObjectContext MR_contextForCurrentThread];
if (block)
{
block(context);
}
}
+ (void) saveDataWithOptions:(MRCoreDataSaveOption)options withBlock:(void(^)(NSManagedObjectContext *localContext))block;
{
[self saveDataWithOptions:options withBlock:block completion:NULL];
}
+ (void) saveDataWithOptions:(MRCoreDataSaveOption)options withBlock:(void(^)(NSManagedObjectContext *localContext))block completion:(void(^)(void))callback;
{
//TODO: add implementation
}
+ (void) saveDataWithOptions:(MRCoreDataSaveOption)options withBlock:(void (^)(NSManagedObjectContext *))block completion:(void (^)(void))callback errorHandler:(void(^)(NSError *))errorCallback
{
}
#endif
@end

View File

@@ -15,6 +15,7 @@
// add logging provider
// autocreate new PSC per Store
// autoassign new instances to default store
+ (BOOL) shouldAutoCreateManagedObjectModel;
+ (void) setShouldAutoCreateManagedObjectModel:(BOOL)shouldAutoCreate;
+ (BOOL) shouldAutoCreateDefaultPersistentStoreCoordinator;

View File

@@ -130,7 +130,7 @@
- (void) testImportNSColorAttributeToEntity
{
id actualColor = [testEntity colorTestAttribute];
NSColor *actualColor = [testEntity colorTestAttribute];
assertThatFloat([actualColor alphaComponent], is(equalToFloat(255./255.)));
assertThatFloat([actualColor redComponent], is(equalToFloat(64./255.)));