mirror of
https://github.com/zhigang1992/RestKit.git
synced 2026-04-17 23:14:56 +08:00
Add definition for private methods in extension category on RKTestFactory to ensure compatibility
with pre Xcode 4.3 compiler. fixes #687
This commit is contained in:
@@ -20,6 +20,8 @@ static NSString * const RKTestFactoryDefaultStoreFilename = @"RKTests.sqlite";
|
||||
@property(nonatomic, strong) NSMutableDictionary *factoryBlocks;
|
||||
|
||||
+ (RKTestFactory *)sharedFactory;
|
||||
- (void)defineFactory:(NSString *)factoryName withBlock:(id (^)())block;
|
||||
- (id)objectFromFactory:(NSString *)factoryName;
|
||||
- (void)defineDefaultFactories;
|
||||
|
||||
@end
|
||||
@@ -62,40 +64,6 @@ static RKTestFactory *sharedFactory = nil;
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)defineDefaultFactories
|
||||
{
|
||||
[self defineFactory:RKTestFactoryDefaultNamesClient withBlock:^id {
|
||||
RKClient *client = [RKClient clientWithBaseURL:self.baseURL];
|
||||
client.requestQueue.suspended = NO;
|
||||
[client.reachabilityObserver getFlags];
|
||||
|
||||
return client;
|
||||
}];
|
||||
|
||||
[self defineFactory:RKTestFactoryDefaultNamesObjectManager withBlock:^id {
|
||||
RKObjectManager *objectManager = [RKObjectManager managerWithBaseURL:self.baseURL];
|
||||
RKObjectMappingProvider *mappingProvider = [self objectFromFactory:RKTestFactoryDefaultNamesMappingProvider];
|
||||
objectManager.mappingProvider = mappingProvider;
|
||||
|
||||
// Force reachability determination
|
||||
[objectManager.client.reachabilityObserver getFlags];
|
||||
|
||||
return objectManager;
|
||||
}];
|
||||
|
||||
[self defineFactory:RKTestFactoryDefaultNamesMappingProvider withBlock:^id {
|
||||
RKObjectMappingProvider *mappingProvider = [RKObjectMappingProvider mappingProvider];
|
||||
return mappingProvider;
|
||||
}];
|
||||
|
||||
[self defineFactory:RKTestFactoryDefaultNamesManagedObjectStore withBlock:^id {
|
||||
RKManagedObjectStore *store = [RKManagedObjectStore objectStoreWithStoreFilename:RKTestFactoryDefaultStoreFilename];
|
||||
[store deletePersistentStore];
|
||||
|
||||
return store;
|
||||
}];
|
||||
}
|
||||
|
||||
- (void)defineFactory:(NSString *)factoryName withBlock:(id (^)())block
|
||||
{
|
||||
[self.factoryBlocks setObject:[block copy] forKey:factoryName];
|
||||
@@ -109,6 +77,40 @@ static RKTestFactory *sharedFactory = nil;
|
||||
return block();
|
||||
}
|
||||
|
||||
- (void)defineDefaultFactories
|
||||
{
|
||||
[self defineFactory:RKTestFactoryDefaultNamesClient withBlock:^id {
|
||||
RKClient *client = [RKClient clientWithBaseURL:self.baseURL];
|
||||
client.requestQueue.suspended = NO;
|
||||
[client.reachabilityObserver getFlags];
|
||||
|
||||
return client;
|
||||
}];
|
||||
|
||||
[self defineFactory:RKTestFactoryDefaultNamesObjectManager withBlock:^id {
|
||||
RKObjectManager *objectManager = [RKObjectManager managerWithBaseURL:self.baseURL];
|
||||
RKObjectMappingProvider *mappingProvider = [self objectFromFactory:RKTestFactoryDefaultNamesMappingProvider];
|
||||
objectManager.mappingProvider = mappingProvider;
|
||||
|
||||
// Force reachability determination
|
||||
[objectManager.client.reachabilityObserver getFlags];
|
||||
|
||||
return objectManager;
|
||||
}];
|
||||
|
||||
[self defineFactory:RKTestFactoryDefaultNamesMappingProvider withBlock:^id {
|
||||
RKObjectMappingProvider *mappingProvider = [RKObjectMappingProvider mappingProvider];
|
||||
return mappingProvider;
|
||||
}];
|
||||
|
||||
[self defineFactory:RKTestFactoryDefaultNamesManagedObjectStore withBlock:^id {
|
||||
RKManagedObjectStore *store = [RKManagedObjectStore objectStoreWithStoreFilename:RKTestFactoryDefaultStoreFilename];
|
||||
[store deletePersistentStore];
|
||||
|
||||
return store;
|
||||
}];
|
||||
}
|
||||
|
||||
#pragma mark - Public Static Interface
|
||||
|
||||
+ (RKURL *)baseURL
|
||||
|
||||
Reference in New Issue
Block a user