mirror of
https://github.com/zhigang1992/RestKit.git
synced 2026-04-23 20:31:13 +08:00
Dropped all the Resource class names to standardize around Object since that's what we are mapping
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
//
|
||||
|
||||
#import "RKClient.h"
|
||||
#import "RKResourceLoader.h"
|
||||
#import "RKObjectLoader.h"
|
||||
#import <SystemConfiguration/SCNetworkReachability.h>
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -100,41 +100,34 @@ static RKClient* sharedClient = nil;
|
||||
[_HTTPHeaders setValue:value forKey:header];
|
||||
}
|
||||
|
||||
- (RKRequest*)requestWithResourcePath:(NSString*)resourcePath delegate:(id)delegate callback:(SEL)callback {
|
||||
RKRequest* request = [[RKRequest alloc] initWithURL:[self URLForResourcePath:resourcePath] delegate:delegate callback:callback];
|
||||
[self setupRequest:request];
|
||||
|
||||
return request;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Asynchronous Requests
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
- (RKRequest*)load:(NSString*)resourcePath method:(RKRequestMethod)method delegate:(id)delegate callback:(SEL)callback {
|
||||
RKRequest* request = [[RKRequest alloc] initWithURL:[self URLForResourcePath:resourcePath] delegate:delegate callback:callback];
|
||||
[self setupRequest:request];
|
||||
[request sendWithMethod:method];
|
||||
return request;
|
||||
}
|
||||
|
||||
- (RKRequest*)load:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(id)delegate callback:(SEL)callback {
|
||||
RKRequest* request = [[RKRequest alloc] initWithURL:[self URLForResourcePath:resourcePath] delegate:delegate callback:callback];
|
||||
[self setupRequest:request];
|
||||
request.params = params;
|
||||
[request sendWithMethod:method];
|
||||
return request;
|
||||
}
|
||||
|
||||
- (RKRequest*)load:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(id)delegate callback:(SEL)callback {
|
||||
RKRequest* request = [[RKRequest alloc] initWithURL:[self URLForResourcePath:resourcePath] delegate:delegate callback:callback];
|
||||
[self setupRequest:request];
|
||||
request.params = params;
|
||||
request.fetchRequest = fetchRequest;
|
||||
[request sendWithMethod:method];
|
||||
request.method = method;
|
||||
[request send];
|
||||
|
||||
return request;
|
||||
}
|
||||
|
||||
- (RKRequest*)get:(NSString*)resourcePath delegate:(id)delegate callback:(SEL)callback {
|
||||
return [self load:resourcePath method:RKRequestMethodGET delegate:delegate callback:callback];
|
||||
return [self load:resourcePath method:RKRequestMethodGET params:nil delegate:delegate callback:callback];
|
||||
}
|
||||
|
||||
- (RKRequest*)get:(NSString*)resourcePath params:(NSDictionary*)params delegate:(id)delegate callback:(SEL)callback {
|
||||
NSString* resourcePathWithQueryString = [NSString stringWithFormat:@"%@?%@", resourcePath, [params URLEncodedString]];
|
||||
return [self load:resourcePathWithQueryString method:RKRequestMethodGET delegate:delegate callback:callback];
|
||||
return [self load:resourcePathWithQueryString method:RKRequestMethodGET params:nil delegate:delegate callback:callback];
|
||||
}
|
||||
|
||||
- (RKRequest*)post:(NSString*)resourcePath params:(NSObject<RKRequestSerializable>*)params delegate:(id)delegate callback:(SEL)callback {
|
||||
@@ -146,45 +139,7 @@ static RKClient* sharedClient = nil;
|
||||
}
|
||||
|
||||
- (RKRequest*)delete:(NSString*)resourcePath delegate:(id)delegate callback:(SEL)callback {
|
||||
return [self load:resourcePath method:RKRequestMethodDELETE delegate:delegate callback:callback];
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Synchronous Requests
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
- (RKResponse*)loadSynchronously:(NSString*)resourcePath method:(RKRequestMethod)method {
|
||||
RKRequest* request = [[[RKRequest alloc] initWithURL:[self URLForResourcePath:resourcePath]] autorelease];
|
||||
[self setupRequest:request];
|
||||
return [request sendSynchronouslyWithMethod:method];;
|
||||
}
|
||||
|
||||
- (RKResponse*)loadSynchronously:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params {
|
||||
RKRequest* request = [[[RKRequest alloc] initWithURL:[self URLForResourcePath:resourcePath]] autorelease];
|
||||
[self setupRequest:request];
|
||||
request.params = params;
|
||||
return [request sendSynchronouslyWithMethod:method];;
|
||||
}
|
||||
|
||||
- (RKResponse*)getSynchronously:(NSString*)resourcePath {
|
||||
return [self loadSynchronously:resourcePath method:RKRequestMethodGET];
|
||||
}
|
||||
|
||||
- (RKResponse*)getSynchronously:(NSString*)resourcePath params:(NSDictionary*)params {
|
||||
NSString* resourcePathWithQueryString = [NSString stringWithFormat:@"%@?%@", resourcePath, [params URLEncodedString]];
|
||||
return [self loadSynchronously:resourcePathWithQueryString method:RKRequestMethodGET];
|
||||
}
|
||||
|
||||
- (RKResponse*)postSynchronously:(NSString*)resourcePath params:(NSObject<RKRequestSerializable>*)params {
|
||||
return [self loadSynchronously:resourcePath method:RKRequestMethodPOST params:params];
|
||||
}
|
||||
|
||||
- (RKResponse*)putSynchronously:(NSString*)resourcePath params:(NSObject<RKRequestSerializable>*)params {
|
||||
return [self loadSynchronously:resourcePath method:RKRequestMethodPUT params:params];
|
||||
}
|
||||
|
||||
- (RKResponse*)deleteSynchronously:(NSString*)resourcePath {
|
||||
return [self loadSynchronously:resourcePath method:RKRequestMethodDELETE];
|
||||
return [self load:resourcePath method:RKRequestMethodDELETE params:nil delegate:delegate callback:callback];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
#pragma mark NSManagedObject helper methods
|
||||
|
||||
+ (NSManagedObjectContext*)managedObjectContext {
|
||||
return [[[RKResourceManager manager] objectStore] managedObjectContext];
|
||||
return [[[RKObjectManager manager] objectStore] managedObjectContext];
|
||||
}
|
||||
|
||||
+ (NSManagedObject*)objectWithID:(NSManagedObjectID*)objectID {
|
||||
@@ -115,7 +115,7 @@
|
||||
// TODO: This is Rails specific. Clean up!
|
||||
// TODO: Moves to the router
|
||||
- (NSString*)resourcePathForMethod:(RKRequestMethod)method {
|
||||
// TODO: Support an optional RKResourceAdapter class?
|
||||
// TODO: Support an optional RKObjectAdapter class?
|
||||
switch (method) {
|
||||
case RKRequestMethodGET:
|
||||
case RKRequestMethodPUT:
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
// Copyright 2010 Two Toasters. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RKResourceMapper.h"
|
||||
#import "RKObjectMapper.h"
|
||||
#import "JSON.h"
|
||||
|
||||
@interface RKMappingFormatJSONParser : NSObject <RKMappingFormatParser> {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceLoader.m
|
||||
// RKObjectLoader.m
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 8/8/09.
|
||||
@@ -7,21 +7,21 @@
|
||||
//
|
||||
|
||||
#import <CoreData/CoreData.h>
|
||||
#import "RKResourceLoader.h"
|
||||
#import "RKObjectLoader.h"
|
||||
#import "RKResponse.h"
|
||||
#import "RKResourceManager.h"
|
||||
#import "RKObjectManager.h"
|
||||
#import "Errors.h"
|
||||
#import "RKManagedObject.h"
|
||||
|
||||
@implementation RKResourceLoader
|
||||
@implementation RKObjectLoader
|
||||
|
||||
@synthesize mapper = _mapper, delegate = _delegate, callback = _callback, fetchRequest = _fetchRequest;
|
||||
|
||||
+ (id)loaderWithMapper:(RKResourceMapper*)mapper {
|
||||
+ (id)loaderWithMapper:(RKObjectMapper*)mapper {
|
||||
return [[[self alloc] initWithMapper:mapper] autorelease];
|
||||
}
|
||||
|
||||
- (id)initWithMapper:(RKResourceMapper*)mapper {
|
||||
- (id)initWithMapper:(RKObjectMapper*)mapper {
|
||||
if (self = [self init]) {
|
||||
_mapper = [mapper retain];
|
||||
}
|
||||
@@ -41,7 +41,7 @@
|
||||
- (BOOL)encounteredErrorWhileProcessingRequest:(RKResponse*)response {
|
||||
RKRequest* request = response.request;
|
||||
if ([response isFailure]) {
|
||||
[_delegate resourceLoadRequest:response.request didFailWithError:response.failureError response:response object:(id<RKResourceMappable>)request.userData];
|
||||
[_delegate resourceLoadRequest:response.request didFailWithError:response.failureError response:response object:(id<RKObjectMappable>)request.userData];
|
||||
return YES;
|
||||
} else if ([response isError]) {
|
||||
NSString* errorMessage = nil;
|
||||
@@ -56,7 +56,7 @@
|
||||
nil];
|
||||
NSError *error = [NSError errorWithDomain:RKRestKitErrorDomain code:RKModelLoaderRemoteSystemError userInfo:userInfo];
|
||||
|
||||
[_delegate resourceLoadRequest:response.request didFailWithError:error response:response object:(id<RKResourceMappable>)request.userData];
|
||||
[_delegate resourceLoadRequest:response.request didFailWithError:error response:response object:(id<RKObjectMappable>)request.userData];
|
||||
return YES;
|
||||
}
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
}
|
||||
|
||||
RKRequest* request = response.request;
|
||||
[_delegate resourceLoadRequest:request didLoadObjects:[NSArray arrayWithArray:objects] response:response object:(id<RKResourceMappable>)request.userData];
|
||||
[_delegate resourceLoadRequest:request didLoadObjects:[NSArray arrayWithArray:objects] response:response object:(id<RKObjectMappable>)request.userData];
|
||||
|
||||
// Release the response now that we have finished all our processing
|
||||
[response release];
|
||||
@@ -100,7 +100,7 @@
|
||||
NSError *rkError = [NSError errorWithDomain:RKRestKitErrorDomain code:RKModelLoaderRemoteSystemError userInfo:userInfo];
|
||||
|
||||
RKRequest* request = response.request;
|
||||
[_delegate resourceLoadRequest:response.request didFailWithError:rkError response:response object:(id<RKResourceMappable>)request.userData];
|
||||
[_delegate resourceLoadRequest:response.request didFailWithError:rkError response:response object:(id<RKObjectMappable>)request.userData];
|
||||
|
||||
// Release the response now that we have finished all our processing
|
||||
[response release];
|
||||
@@ -109,7 +109,7 @@
|
||||
|
||||
- (void)processLoadModelsInBackground:(RKResponse *)response {
|
||||
NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
|
||||
RKManagedObjectStore* objectStore = [[RKResourceManager manager] objectStore]; // TODO: Should probably relax singleton...
|
||||
RKManagedObjectStore* objectStore = [[RKObjectManager manager] objectStore]; // TODO: Should probably relax singleton...
|
||||
|
||||
// If the request was sent through a model, we map the results back into that object
|
||||
// TODO: Note that this assumption may not work in all cases, other approaches?
|
||||
@@ -152,7 +152,7 @@
|
||||
|
||||
// Before looking up NSManagedObjectIDs, need to save to ensure we do not have
|
||||
// temporary IDs for new objects prior to handing the objectIDs across threads
|
||||
NSError* error = [[[RKResourceManager manager] objectStore] save];
|
||||
NSError* error = [[[RKObjectManager manager] objectStore] save];
|
||||
if (nil != error) {
|
||||
NSDictionary* infoDictionary = [[NSDictionary dictionaryWithObjectsAndKeys:response, @"response", error, @"error", nil] retain];
|
||||
[self performSelectorOnMainThread:@selector(informDelegateOfModelLoadErrorWithInfoDictionary:) withObject:infoDictionary waitUntilDone:NO];
|
||||
@@ -1,12 +1,12 @@
|
||||
//
|
||||
// RKResourceManager.m
|
||||
// RKObjectManager.m
|
||||
// RestKit
|
||||
//
|
||||
// Created by Jeremy Ellison on 8/14/09.
|
||||
// Copyright 2009 Two Toasters. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RKResourceManager.h"
|
||||
#import "RKObjectManager.h"
|
||||
|
||||
NSString* const RKDidEnterOfflineModeNotification = @"RKDidEnterOfflineModeNotification";
|
||||
NSString* const RKDidEnterOnlineModeNotification = @"RKDidEnterOnlineModeNotification";
|
||||
@@ -14,11 +14,11 @@ NSString* const RKDidEnterOnlineModeNotification = @"RKDidEnterOnlineModeNotific
|
||||
//////////////////////////////////
|
||||
// Global Instance
|
||||
|
||||
static RKResourceManager* sharedManager = nil;
|
||||
static RKObjectManager* sharedManager = nil;
|
||||
|
||||
///////////////////////////////////
|
||||
|
||||
@implementation RKResourceManager
|
||||
@implementation RKObjectManager
|
||||
|
||||
@synthesize mapper = _mapper;
|
||||
@synthesize client = _client;
|
||||
@@ -28,7 +28,7 @@ static RKResourceManager* sharedManager = nil;
|
||||
|
||||
- (id)initWithBaseURL:(NSString*)baseURL {
|
||||
if (self = [super init]) {
|
||||
_mapper = [[RKResourceMapper alloc] init];
|
||||
_mapper = [[RKObjectMapper alloc] init];
|
||||
_router = [[RKStaticRouter alloc] init];
|
||||
_client = [[RKClient clientWithBaseURL:baseURL] retain];
|
||||
self.format = RKMappingFormatJSON;
|
||||
@@ -37,19 +37,19 @@ static RKResourceManager* sharedManager = nil;
|
||||
return self;
|
||||
}
|
||||
|
||||
+ (RKResourceManager*)manager {
|
||||
+ (RKObjectManager*)manager {
|
||||
return sharedManager;
|
||||
}
|
||||
|
||||
+ (void)setManager:(RKResourceManager*)manager {
|
||||
+ (void)setManager:(RKObjectManager*)manager {
|
||||
[sharedManager release];
|
||||
sharedManager = [manager retain];
|
||||
}
|
||||
|
||||
+ (RKResourceManager*)managerWithBaseURL:(NSString*)baseURL {
|
||||
RKResourceManager* manager = [[[RKResourceManager alloc] initWithBaseURL:baseURL] autorelease];
|
||||
+ (RKObjectManager*)managerWithBaseURL:(NSString*)baseURL {
|
||||
RKObjectManager* manager = [[[RKObjectManager alloc] initWithBaseURL:baseURL] autorelease];
|
||||
if (sharedManager == nil) {
|
||||
[RKResourceManager setManager:manager];
|
||||
[RKObjectManager setManager:manager];
|
||||
}
|
||||
return manager;
|
||||
}
|
||||
@@ -96,39 +96,39 @@ static RKResourceManager* sharedManager = nil;
|
||||
|
||||
#pragma mark Model Methods
|
||||
|
||||
- (void)registerClass:(Class<RKResourceMappable>)class forElementNamed:(NSString*)elementName {
|
||||
- (void)registerClass:(Class<RKObjectMappable>)class forElementNamed:(NSString*)elementName {
|
||||
[_mapper registerClass:class forElementNamed:elementName];
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////
|
||||
// Model Collection Loaders
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
return [self loadResource:resourcePath fetchRequest:nil method:method params:params delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
return [self loadResource:resourcePath fetchRequest:nil method:RKRequestMethodGET params:nil delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
return [self loadResource:resourcePath fetchRequest:nil method:method params:nil delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath params:(NSDictionary*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath params:(NSDictionary*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
return [self loadResource:resourcePath fetchRequest:nil method:RKRequestMethodGET params:params delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
return [self loadResource:resourcePath fetchRequest:fetchRequest method:method params:nil delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
if ([self isOffline]) {
|
||||
return nil;
|
||||
}
|
||||
|
||||
RKResourceLoader* loader = [RKResourceLoader loaderWithMapper:self.mapper];
|
||||
RKObjectLoader* loader = [RKObjectLoader loaderWithMapper:self.mapper];
|
||||
loader.fetchRequest = fetchRequest;
|
||||
loader.delegate = delegate;
|
||||
|
||||
@@ -138,7 +138,7 @@ static RKResourceManager* sharedManager = nil;
|
||||
/////////////////////////////////////////////////////////////
|
||||
// Model Instance Loaders
|
||||
|
||||
- (RKRequest*)resourceLoaderRequest:(id<RKResourceMappable>)model resourcePath:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)resourceLoaderRequest:(id<RKObjectMappable>)model resourcePath:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
if (method != RKRequestMethodGET) {
|
||||
NSError* error = [self.objectStore save];
|
||||
if (error != nil) {
|
||||
@@ -151,25 +151,25 @@ static RKResourceManager* sharedManager = nil;
|
||||
return request;
|
||||
}
|
||||
|
||||
- (RKRequest*)getObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)getObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
NSString* resourcePath = [_router pathForObject:object method:RKRequestMethodGET];
|
||||
NSObject<RKRequestSerializable>* params = [_router serializationForObject:object method:RKRequestMethodGET];
|
||||
return [self resourceLoaderRequest:object resourcePath:resourcePath method:RKRequestMethodGET params:params delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)postObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)postObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
NSString* resourcePath = [_router pathForObject:object method:RKRequestMethodPOST];
|
||||
NSObject<RKRequestSerializable>* params = [_router serializationForObject:object method:RKRequestMethodPOST];
|
||||
return [self resourceLoaderRequest:object resourcePath:resourcePath method:RKRequestMethodPOST params:params delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)putObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)putObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
NSString* resourcePath = [_router pathForObject:object method:RKRequestMethodPUT];
|
||||
NSObject<RKRequestSerializable>* params = [_router serializationForObject:object method:RKRequestMethodPUT];
|
||||
return [self resourceLoaderRequest:object resourcePath:resourcePath method:RKRequestMethodPUT params:params delegate:delegate];
|
||||
}
|
||||
|
||||
- (RKRequest*)deleteObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate {
|
||||
- (RKRequest*)deleteObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate {
|
||||
NSString* resourcePath = [_router pathForObject:object method:RKRequestMethodDELETE];
|
||||
NSObject<RKRequestSerializable>* params = [_router serializationForObject:object method:RKRequestMethodDELETE];
|
||||
return [self resourceLoaderRequest:object resourcePath:resourcePath method:RKRequestMethodDELETE params:params delegate:delegate];
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceMapper.m
|
||||
// RKObjectMapper.m
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 3/4/10.
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
#import <objc/message.h>
|
||||
|
||||
#import "RKResourceMapper.h"
|
||||
#import "RKObjectMapper.h"
|
||||
#import "NSDictionary+RKRequestSerialization.h"
|
||||
#import "RKMappingFormatJSONParser.h"
|
||||
|
||||
@@ -18,7 +18,7 @@ static const NSString* kRKModelMapperRailsDateTimeFormatString = @"yyyy-MM-dd'T'
|
||||
static const NSString* kRKModelMapperRailsDateFormatString = @"MM/dd/yyyy";
|
||||
static const NSString* kRKModelMapperMappingFormatParserKey = @"RKMappingFormatParser";
|
||||
|
||||
@interface RKResourceMapper (Private)
|
||||
@interface RKObjectMapper (Private)
|
||||
|
||||
- (void)updateModel:(id)model fromElements:(NSDictionary*)elements;
|
||||
|
||||
@@ -38,7 +38,7 @@ static const NSString* kRKModelMapperMappingFormatParserKey = @"RKMappingFormatP
|
||||
|
||||
@end
|
||||
|
||||
@implementation RKResourceMapper
|
||||
@implementation RKObjectMapper
|
||||
|
||||
@synthesize format = _format;
|
||||
@synthesize dateFormats = _dateFormats;
|
||||
@@ -67,7 +67,7 @@ static const NSString* kRKModelMapperMappingFormatParserKey = @"RKMappingFormatP
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void)registerClass:(Class<RKResourceMappable>)aClass forElementNamed:(NSString*)elementName {
|
||||
- (void)registerClass:(Class<RKObjectMappable>)aClass forElementNamed:(NSString*)elementName {
|
||||
[_elementToClassMappings setObject:aClass forKey:elementName];
|
||||
}
|
||||
|
||||
@@ -193,7 +193,7 @@ static const NSString* kRKModelMapperMappingFormatParserKey = @"RKMappingFormatP
|
||||
// TODO: This responsibility probaby belongs elsewhere...
|
||||
- (id)findOrCreateInstanceOfModelClass:(Class)class fromElements:(NSDictionary*)elements {
|
||||
id object = nil;
|
||||
// TODO: Maybe add back to RKResourceMappable protocol. better selectors?
|
||||
// TODO: Maybe add back to RKObjectMappable protocol. better selectors?
|
||||
if ([class respondsToSelector:@selector(findByPrimaryKey:)]) {
|
||||
NSString* primaryKeyElement = [class performSelector:@selector(primaryKeyElement)];
|
||||
NSNumber* primaryKey = [elements objectForKey:primaryKeyElement];
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
@implementation RKObjectSeeder
|
||||
|
||||
- (id)initWithResourceManager:(RKResourceManager*)manager {
|
||||
- (id)initWithResourceManager:(RKObjectManager*)manager {
|
||||
if (self = [self init]) {
|
||||
_manager = [manager retain];
|
||||
}
|
||||
|
||||
@@ -73,8 +73,13 @@
|
||||
}
|
||||
|
||||
- (void)setParams:(NSObject<RKRequestSerializable>*)params {
|
||||
_params = [params retain];
|
||||
[_URLRequest setHTTPBody:[_params HTTPBody]];
|
||||
[params retain];
|
||||
[_params release];
|
||||
_params = params;
|
||||
|
||||
if (params) {
|
||||
[_URLRequest setHTTPBody:[_params HTTPBody]];
|
||||
}
|
||||
}
|
||||
|
||||
- (NSString*)HTTPMethod {
|
||||
@@ -123,16 +128,6 @@
|
||||
return [[[RKResponse alloc] initWithSynchronousRequest:self URLResponse:URLResponse body:payload error:error] autorelease];
|
||||
}
|
||||
|
||||
- (void)sendWithMethod:(RKRequestMethod)method {
|
||||
self.method = method;
|
||||
[self send];
|
||||
}
|
||||
|
||||
- (RKResponse*)sendSynchronouslyWithMethod:(RKRequestMethod)method {
|
||||
self.method = method;
|
||||
return [self sendSynchronously];
|
||||
}
|
||||
|
||||
- (void)cancel {
|
||||
[_connection cancel];
|
||||
[_connection release];
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
|
||||
// Public
|
||||
|
||||
- (void)routeClass:(Class<RKResourceMappable>)class toPath:(NSString*)path {
|
||||
- (void)routeClass:(Class<RKObjectMappable>)class toPath:(NSString*)path {
|
||||
[self routeClass:class toPath:path forMethodName:@"ANY"];
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
|
||||
#pragma mark RKRouter
|
||||
|
||||
- (NSString*)pathForObject:(NSObject<RKResourceMappable>*)object method:(RKRequestMethod)method {
|
||||
- (NSString*)pathForObject:(NSObject<RKObjectMappable>*)object method:(RKRequestMethod)method {
|
||||
NSString* methodName = [self HTTPVerbForMethod:method];
|
||||
NSString* className = NSStringFromClass([object class]);
|
||||
NSDictionary* classRoutes = [_routes objectForKey:className];
|
||||
@@ -92,7 +92,7 @@
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (NSObject<RKRequestSerializable>*)serializationForObject:(NSObject<RKResourceMappable>*)object method:(RKRequestMethod)method {
|
||||
- (NSObject<RKRequestSerializable>*)serializationForObject:(NSObject<RKObjectMappable>*)object method:(RKRequestMethod)method {
|
||||
// By default return a form encoded serializable dictionary
|
||||
return [object paramsForSerialization];
|
||||
}
|
||||
|
||||
@@ -73,24 +73,26 @@
|
||||
*/
|
||||
- (void)setValue:(NSString*)value forHTTPHeaderField:(NSString*)header;
|
||||
|
||||
/**
|
||||
* Returns a NSURL by adding a resource path to the base URL
|
||||
*/
|
||||
- (NSURL*)URLForResourcePath:(NSString*)resourcePath;
|
||||
|
||||
/**
|
||||
* Return a request object targetted at a resource path relative to the base URL. By default the method is set to GET
|
||||
* All headers set on the client will automatically be applied to the request as well.
|
||||
*/
|
||||
- (RKRequest*)requestWithResourcePath:(NSString*)resourcePath delegate:(id)delegate callback:(SEL)callback;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Asynchronous Requests
|
||||
// Asynchronous Helper Methods
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
* Load a resource via the specified HTTP method and invoke a callback with the resulting payload
|
||||
* These methods are provided as a convenience to cover the common asynchronous request tasks. All other request
|
||||
* needs should instantiate a request via requestWithResourcePath:delegate:callback and work with the RKRequest
|
||||
* object directly.
|
||||
*/
|
||||
- (RKRequest*)load:(NSString*)resourcePath method:(RKRequestMethod)method delegate:(id)delegate callback:(SEL)callback;
|
||||
|
||||
/**
|
||||
* Load a resource via the specified HTTP method and invoke a callback with the resulting payload
|
||||
*/
|
||||
- (RKRequest*)load:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(id)delegate callback:(SEL)callback;
|
||||
|
||||
/**
|
||||
* Load a locally-cached resource via the specified HTTP method and invoke a callback with the resulting payload
|
||||
*/
|
||||
- (RKRequest*)load:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(id)delegate callback:(SEL)callback;
|
||||
|
||||
/**
|
||||
* Fetch a resource via an HTTP GET and invoke a callback with the result
|
||||
@@ -120,36 +122,4 @@
|
||||
*/
|
||||
- (RKRequest*)delete:(NSString*)resourcePath delegate:(id)delegate callback:(SEL)callback;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Synchronous Requests
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
* Fetch a resource synchronously via an HTTP GET and return the response
|
||||
*/
|
||||
- (RKResponse*)getSynchronously:(NSString*)resourcePath;
|
||||
|
||||
/**
|
||||
* Fetch a resource synchronously via an HTTP GET with a dictionary of params and return the response
|
||||
*
|
||||
* Note that this request _only_ allows NSDictionary objects as the params. The dictionary will be coerced into a URL encoded
|
||||
* string and then appended to the resourcePath as the query string of the request.
|
||||
*/
|
||||
- (RKResponse*)getSynchronously:(NSString*)resourcePath params:(NSDictionary*)params;
|
||||
|
||||
/**
|
||||
* Create a resource via an HTTP POST with a set of form parameters and return the response
|
||||
*/
|
||||
- (RKResponse*)postSynchronously:(NSString*)resourcePath params:(NSObject<RKRequestSerializable>*)params;
|
||||
|
||||
/**
|
||||
* Update a resource via an HTTP PUT and return the response
|
||||
*/
|
||||
- (RKResponse*)putSynchronously:(NSString*)resourcePath params:(NSObject<RKRequestSerializable>*)params;
|
||||
|
||||
/**
|
||||
* Destroy a resource via an HTTP DELETE and return the response
|
||||
*/
|
||||
- (RKResponse*)deleteSynchronously:(NSString*)resourcePath;
|
||||
|
||||
@end
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import <CoreData/CoreData.h>
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKResourceManager.h"
|
||||
#import "RKObjectMappable.h"
|
||||
#import "RKObjectManager.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// RestKit managed models
|
||||
|
||||
@interface RKManagedObject : NSManagedObject <RKResourceMappable> {
|
||||
@interface RKManagedObject : NSManagedObject <RKObjectMappable> {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
//
|
||||
// RKResource.h
|
||||
// RKObject.h
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 7/20/10.
|
||||
// Copyright 2010 Two Toasters. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKObjectMappable.h"
|
||||
|
||||
/**
|
||||
* Base class for non-managed RestKit mappable objects.
|
||||
*/
|
||||
@interface RKObject : NSObject <RKResourceMappable> {
|
||||
@interface RKObject : NSObject <RKObjectMappable> {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceLoader.h
|
||||
// RKObjectLoader.h
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 8/8/09.
|
||||
@@ -9,27 +9,27 @@
|
||||
#import <CoreData/CoreData.h>
|
||||
#import "RKRequest.h"
|
||||
#import "RKResponse.h"
|
||||
#import "RKResourceMapper.h"
|
||||
#import "RKObjectMapper.h"
|
||||
|
||||
@protocol RKResourceLoaderDelegate <RKRequestDelegate>
|
||||
@protocol RKObjectLoaderDelegate <RKRequestDelegate>
|
||||
|
||||
/**
|
||||
* Invoked when a request sent through the resource manager loads a collection of objects. The model will be nil if the request was
|
||||
* not dispatched through an object
|
||||
*/
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didLoadObjects:(NSArray*)objects response:(RKResponse*)response object:(id<RKResourceMappable>)object;
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didLoadObjects:(NSArray*)objects response:(RKResponse*)response object:(id<RKObjectMappable>)object;
|
||||
|
||||
/**
|
||||
* Invoked when a request sent through the resource manager encounters an error. The model will be nil if the request was
|
||||
* not dispatched through an object
|
||||
*/
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didFailWithError:(NSError*)error response:(RKResponse*)response object:(id<RKResourceMappable>)object;
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didFailWithError:(NSError*)error response:(RKResponse*)response object:(id<RKObjectMappable>)object;
|
||||
|
||||
@end
|
||||
|
||||
@interface RKResourceLoader : NSObject <RKRequestDelegate> {
|
||||
RKResourceMapper* _mapper;
|
||||
NSObject<RKResourceLoaderDelegate>* _delegate;
|
||||
@interface RKObjectLoader : NSObject <RKRequestDelegate> {
|
||||
RKObjectMapper* _mapper;
|
||||
NSObject<RKObjectLoaderDelegate>* _delegate;
|
||||
SEL _callback;
|
||||
NSFetchRequest* _fetchRequest;
|
||||
}
|
||||
@@ -37,7 +37,7 @@
|
||||
/**
|
||||
* The resource mapper this loader is working with
|
||||
*/
|
||||
@property (nonatomic, readonly) RKResourceMapper* mapper;
|
||||
@property (nonatomic, readonly) RKObjectMapper* mapper;
|
||||
|
||||
/**
|
||||
* The object to be invoked with the loaded models
|
||||
@@ -45,7 +45,7 @@
|
||||
* If this object implements life-cycle methods from the RKRequestDelegate protocol,
|
||||
* events from the request will be forwarded back.
|
||||
*/
|
||||
@property (nonatomic, retain) NSObject<RKResourceLoaderDelegate>* delegate;
|
||||
@property (nonatomic, retain) NSObject<RKObjectLoaderDelegate>* delegate;
|
||||
|
||||
/**
|
||||
* The method to invoke to trigger model mappings. Used as the callback for a restful model mapping request
|
||||
@@ -60,11 +60,11 @@
|
||||
*/
|
||||
@property (nonatomic, retain) NSFetchRequest* fetchRequest;
|
||||
|
||||
+ (id)loaderWithMapper:(RKResourceMapper*)mapper;
|
||||
+ (id)loaderWithMapper:(RKObjectMapper*)mapper;
|
||||
|
||||
/**
|
||||
* Initialize a new model loader with a model mapper
|
||||
*/
|
||||
- (id)initWithMapper:(RKResourceMapper*)mapper;
|
||||
- (id)initWithMapper:(RKObjectMapper*)mapper;
|
||||
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceManager.h
|
||||
// RKObjectManager.h
|
||||
// RestKit
|
||||
//
|
||||
// Created by Jeremy Ellison on 8/14/09.
|
||||
@@ -7,8 +7,8 @@
|
||||
//
|
||||
|
||||
#import "RKClient.h"
|
||||
#import "RKResourceMapper.h"
|
||||
#import "RKResourceLoader.h"
|
||||
#import "RKObjectMapper.h"
|
||||
#import "RKObjectLoader.h"
|
||||
#import "RKStaticRouter.h"
|
||||
#import "RKManagedObjectStore.h"
|
||||
|
||||
@@ -16,10 +16,10 @@
|
||||
extern NSString* const RKDidEnterOfflineModeNotification;
|
||||
extern NSString* const RKDidEnterOnlineModeNotification;
|
||||
|
||||
@interface RKResourceManager : NSObject {
|
||||
@interface RKObjectManager : NSObject {
|
||||
RKClient* _client;
|
||||
RKMappingFormat _format;
|
||||
RKResourceMapper* _mapper;
|
||||
RKObjectMapper* _mapper;
|
||||
NSObject<RKRouter>* _router;
|
||||
RKManagedObjectStore* _objectStore;
|
||||
BOOL _isOnline;
|
||||
@@ -28,18 +28,18 @@ extern NSString* const RKDidEnterOnlineModeNotification;
|
||||
/**
|
||||
* Return the shared instance of the model manager
|
||||
*/
|
||||
+ (RKResourceManager*)manager;
|
||||
+ (RKObjectManager*)manager;
|
||||
|
||||
/**
|
||||
* Set the shared instance of the model manager
|
||||
*/
|
||||
+ (void)setManager:(RKResourceManager*)manager;
|
||||
+ (void)setManager:(RKObjectManager*)manager;
|
||||
|
||||
/**
|
||||
* Create and initialize a new model manager. If this is the first instance created
|
||||
* it will be set as the shared instance
|
||||
*/
|
||||
+ (RKResourceManager*)managerWithBaseURL:(NSString*)baseURL;
|
||||
+ (RKObjectManager*)managerWithBaseURL:(NSString*)baseURL;
|
||||
|
||||
/**
|
||||
* Initialize a new model manager instance
|
||||
@@ -76,12 +76,12 @@ extern NSString* const RKDidEnterOnlineModeNotification;
|
||||
/**
|
||||
* Register a resource mapping from a domain model class to a JSON/XML element name
|
||||
*/
|
||||
- (void)registerClass:(Class<RKResourceMappable>)class forElementNamed:(NSString*)elementName;
|
||||
- (void)registerClass:(Class<RKObjectMappable>)class forElementNamed:(NSString*)elementName;
|
||||
|
||||
/**
|
||||
* Mapper object responsible for mapping remote HTTP resources to Cocoa objects
|
||||
*/
|
||||
@property(nonatomic, readonly) RKResourceMapper* mapper;
|
||||
@property(nonatomic, readonly) RKObjectMapper* mapper;
|
||||
|
||||
/**
|
||||
* Routing object responsible for generating paths for objects and serializing
|
||||
@@ -99,27 +99,27 @@ extern NSString* const RKDidEnterOnlineModeNotification;
|
||||
/**
|
||||
* Fetch a resource via an HTTP GET and invoke a callback with the model for the resulting payload
|
||||
*/
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
// Load via a method...
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
/**
|
||||
* Fetch a resource via a specified HTTP method
|
||||
*/
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
/**
|
||||
* Fetch a resource via an HTTP GET with a dictionary of parameters and invoke a callback with the models mapped from the payload
|
||||
*/
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath params:(NSDictionary*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath params:(NSDictionary*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
/**
|
||||
* Fetch methods for clients that implement local caching
|
||||
*/
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
// TODO: Need a better implementation of the cacheing...
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)loadResource:(NSString*)resourcePath fetchRequest:(NSFetchRequest*)fetchRequest method:(RKRequestMethod)method params:(NSObject<RKRequestSerializable>*)params delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
////////////////////////////////////////////////////////
|
||||
// Model Mappable object helpers
|
||||
@@ -127,21 +127,21 @@ extern NSString* const RKDidEnterOnlineModeNotification;
|
||||
/**
|
||||
* Update a mappable model by loading its attributes from the web
|
||||
*/
|
||||
- (RKRequest*)getObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)getObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
/**
|
||||
* Create a remote mappable model by POSTing the attributes to the remote resource and loading the resulting model from the payload
|
||||
*/
|
||||
- (RKRequest*)postObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)postObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
/**
|
||||
* Update a remote mappable model by PUTing the attributes to the remote resource and loading the resulting model from the payload
|
||||
*/
|
||||
- (RKRequest*)putObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)putObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
/**
|
||||
* Delete the remote instance of a mappable model by performing an HTTP DELETE on the remote resource
|
||||
*/
|
||||
- (RKRequest*)deleteObject:(NSObject<RKResourceMappable>*)object delegate:(NSObject<RKResourceLoaderDelegate>*)delegate;
|
||||
- (RKRequest*)deleteObject:(NSObject<RKObjectMappable>*)object delegate:(NSObject<RKObjectLoaderDelegate>*)delegate;
|
||||
|
||||
@end
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* RKResourceMappable.h
|
||||
* RKObjectMappable.h
|
||||
* RestKit
|
||||
*
|
||||
* Created by Blake Watters on 8/14/09.
|
||||
@@ -13,7 +13,7 @@
|
||||
* Must be implemented by all classes utilizing the RKModelMapper to map REST
|
||||
* responses to domain model classes
|
||||
*/
|
||||
@protocol RKResourceMappable
|
||||
@protocol RKObjectMappable
|
||||
|
||||
/**
|
||||
* Must return a dictionary containing mapping from XML element names to property accessors
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceMapper.h
|
||||
// RKObjectMapper.h
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 3/4/10.
|
||||
@@ -7,7 +7,7 @@
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKObjectMappable.h"
|
||||
#import "RKObjectPropertyInspector.h"
|
||||
|
||||
/**
|
||||
@@ -34,7 +34,7 @@ typedef enum {
|
||||
|
||||
@end
|
||||
|
||||
@interface RKResourceMapper : NSObject {
|
||||
@interface RKObjectMapper : NSObject {
|
||||
NSMutableDictionary* _elementToClassMappings;
|
||||
RKMappingFormat _format;
|
||||
RKObjectPropertyInspector* _inspector;
|
||||
@@ -75,7 +75,7 @@ typedef enum {
|
||||
* Register a mapping for a given class for an XML element with the given tag name
|
||||
* will blow up if the class does not respond to elementToPropertyMappings and elementToRelationshipMappings
|
||||
*/
|
||||
- (void)registerClass:(Class<RKResourceMappable>)aClass forElementNamed:(NSString*)elementName;
|
||||
- (void)registerClass:(Class<RKObjectMappable>)aClass forElementNamed:(NSString*)elementName;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Core Mapping API
|
||||
@@ -6,18 +6,18 @@
|
||||
// Copyright 2010 Two Toasters. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RKResourceManager.h"
|
||||
#import "RKObjectManager.h"
|
||||
|
||||
// TODO: This class needs an API scrubbing
|
||||
// TODO: Really only needs to be initialized with mapper, not the manager... ?
|
||||
@interface RKObjectSeeder : NSObject {
|
||||
RKResourceManager* _manager;
|
||||
RKObjectManager* _manager;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initialize a new model seeder
|
||||
*/
|
||||
- (id)initWithResourceManager:(RKResourceManager*)manager;
|
||||
- (id)initWithResourceManager:(RKObjectManager*)manager;
|
||||
|
||||
/**
|
||||
* Read a file from the main bundle and seed the database with its contents.
|
||||
|
||||
@@ -118,16 +118,6 @@ typedef enum RKRequestMethod {
|
||||
*/
|
||||
- (RKResponse*)sendSynchronously;
|
||||
|
||||
/**
|
||||
* Utility method for setting the request HTTP method and then sending the method asynchronously
|
||||
*/
|
||||
- (void)sendWithMethod:(RKRequestMethod)method;
|
||||
|
||||
/**
|
||||
* Utility method for setting the request HTTP method and then sending the method synchronously
|
||||
*/
|
||||
- (RKResponse*)sendSynchronouslyWithMethod:(RKRequestMethod)method;
|
||||
|
||||
/**
|
||||
* Cancels the underlying URL connection
|
||||
*/
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
//
|
||||
|
||||
#import "RKRequest.h"
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKObjectMappable.h"
|
||||
#import "RKRequestSerializable.h"
|
||||
|
||||
/**
|
||||
@@ -19,11 +19,11 @@
|
||||
/**
|
||||
* Returns the remote path to send requests for a given object and HTTP method
|
||||
*/
|
||||
- (NSString*)pathForObject:(NSObject<RKResourceMappable>*)object method:(RKRequestMethod)method;
|
||||
- (NSString*)pathForObject:(NSObject<RKObjectMappable>*)object method:(RKRequestMethod)method;
|
||||
|
||||
/**
|
||||
* Returns a serialization of an object suitable for exchanging with a remote system
|
||||
*/
|
||||
- (NSObject<RKRequestSerializable>*)serializationForObject:(NSObject<RKResourceMappable>*)object method:(RKRequestMethod)method;
|
||||
- (NSObject<RKRequestSerializable>*)serializationForObject:(NSObject<RKObjectMappable>*)object method:(RKRequestMethod)method;
|
||||
|
||||
@end
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
//
|
||||
|
||||
#import "RKRouter.h"
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKObjectMappable.h"
|
||||
|
||||
@interface RKStaticRouter : NSObject <RKRouter> {
|
||||
NSMutableDictionary* _routes;
|
||||
@@ -16,11 +16,11 @@
|
||||
/**
|
||||
* Register a static mapping from an object class to a resource path
|
||||
*/
|
||||
- (void)routeClass:(Class<RKResourceMappable>)class toPath:(NSString*)path;
|
||||
- (void)routeClass:(Class<RKObjectMappable>)class toPath:(NSString*)path;
|
||||
|
||||
/**
|
||||
* Register a static mapping from an object class to a resource path for a given HTTP method
|
||||
*/
|
||||
- (void)routeClass:(Class<RKResourceMappable>)class toPath:(NSString*)path forMethod:(RKRequestMethod)method;
|
||||
- (void)routeClass:(Class<RKObjectMappable>)class toPath:(NSString*)path forMethod:(RKRequestMethod)method;
|
||||
|
||||
@end
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
#import "RestKit/RKClient.h"
|
||||
#import "RestKit/Errors.h"
|
||||
#import "RestKit/RKResourceManager.h"
|
||||
#import "RestKit/RKObjectManager.h"
|
||||
#import "RestKit/RKObject.h"
|
||||
#import "RestKit/RKManagedObject.h"
|
||||
#import "RestKit/RKNotifications.h"
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
/**
|
||||
* Generic class for loading a remote model using a RestKit request
|
||||
*/
|
||||
@interface RKRequestModel : NSObject <RKResourceLoaderDelegate, RKRequestDelegate> {
|
||||
@interface RKRequestModel : NSObject <RKObjectLoaderDelegate, RKRequestDelegate> {
|
||||
NSArray *_objects;
|
||||
BOOL _loaded;
|
||||
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
|
||||
// Go Offline button
|
||||
if (1 == buttonIndex) {
|
||||
[[RKResourceManager manager] goOffline];
|
||||
[[RKObjectManager manager] goOffline];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -198,11 +198,11 @@
|
||||
// RKModelLoaderDelegate
|
||||
|
||||
// This callback is invoked after the request has been fully serviced. Finish the load here.
|
||||
- (void)resourceLoadRequest:(RKRequest *)request didLoadObjects:(NSArray *)objects response:(RKResponse *)response object:(id<RKResourceMappable>)object {
|
||||
- (void)resourceLoadRequest:(RKRequest *)request didLoadObjects:(NSArray *)objects response:(RKResponse *)response object:(id<RKObjectMappable>)object {
|
||||
[self modelsDidLoad:objects];
|
||||
}
|
||||
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didFailWithError:(NSError*)error response:(RKResponse*)response object:(id<RKResourceMappable>)object {
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didFailWithError:(NSError*)error response:(RKResponse*)response object:(id<RKObjectMappable>)object {
|
||||
if ([self errorWarrantsOptionToGoOffline:error]) {
|
||||
[self showAlertWithOptionToGoOfflineForError:error];
|
||||
} else {
|
||||
@@ -225,9 +225,9 @@
|
||||
|
||||
- (void)load {
|
||||
if (_params) {
|
||||
_loadingRequest = [[RKResourceManager manager] loadResource:_resourcePath fetchRequest:_fetchRequest method:_method params:_params delegate:self];
|
||||
_loadingRequest = [[RKObjectManager manager] loadResource:_resourcePath fetchRequest:_fetchRequest method:_method params:_params delegate:self];
|
||||
} else {
|
||||
_loadingRequest = [[RKResourceManager manager] loadResource:_resourcePath fetchRequest:_fetchRequest method:_method delegate:self];
|
||||
_loadingRequest = [[RKObjectManager manager] loadResource:_resourcePath fetchRequest:_fetchRequest method:_method delegate:self];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -40,10 +40,10 @@
|
||||
252F4CC0114021B5003C6F42 /* RKObjectSeeder.h in Headers */ = {isa = PBXBuildFile; fileRef = 252F4CBE114021B5003C6F42 /* RKObjectSeeder.h */; };
|
||||
252F4CC1114021B5003C6F42 /* RKObjectSeeder.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4CBF114021B5003C6F42 /* RKObjectSeeder.m */; };
|
||||
252F4CC2114021B5003C6F42 /* RKObjectSeeder.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4CBF114021B5003C6F42 /* RKObjectSeeder.m */; };
|
||||
252F4F9D11404322003C6F42 /* RKResourceLoader.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580B067102E0F1000832D07 /* RKResourceLoader.m */; };
|
||||
252F4FA01140433D003C6F42 /* RKResourceMapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4F9F1140433D003C6F42 /* RKResourceMapper.m */; };
|
||||
252F4FA11140433D003C6F42 /* RKResourceMapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 252F4F9E1140433D003C6F42 /* RKResourceMapper.h */; };
|
||||
252F4FA21140433D003C6F42 /* RKResourceMapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4F9F1140433D003C6F42 /* RKResourceMapper.m */; };
|
||||
252F4F9D11404322003C6F42 /* RKObjectLoader.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580B067102E0F1000832D07 /* RKObjectLoader.m */; };
|
||||
252F4FA01140433D003C6F42 /* RKObjectMapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4F9F1140433D003C6F42 /* RKObjectMapper.m */; };
|
||||
252F4FA11140433D003C6F42 /* RKObjectMapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 252F4F9E1140433D003C6F42 /* RKObjectMapper.h */; };
|
||||
252F4FA21140433D003C6F42 /* RKObjectMapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4F9F1140433D003C6F42 /* RKObjectMapper.m */; };
|
||||
252F4FA9114046C9003C6F42 /* RKMappingFormatJSONParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 252F4FA7114046C9003C6F42 /* RKMappingFormatJSONParser.h */; };
|
||||
252F4FAA114046C9003C6F42 /* RKMappingFormatJSONParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4FA8114046C9003C6F42 /* RKMappingFormatJSONParser.m */; };
|
||||
252F4FAB114046C9003C6F42 /* RKMappingFormatJSONParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 252F4FA8114046C9003C6F42 /* RKMappingFormatJSONParser.m */; };
|
||||
@@ -54,7 +54,7 @@
|
||||
253BBE971076AB1C00C804B2 /* NSString+InflectionSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 253BBE951076AB1C00C804B2 /* NSString+InflectionSupport.m */; };
|
||||
255DE05A10FF9DA500A85891 /* RKModelManagerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 255DE05910FF9DA500A85891 /* RKModelManagerSpec.m */; };
|
||||
255DE05E10FFA05800A85891 /* RKHuman.m in Sources */ = {isa = PBXBuildFile; fileRef = 255DE05D10FFA05800A85891 /* RKHuman.m */; };
|
||||
255DE0DB10FFAB7700A85891 /* RKResourceManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3FBF1D38103614E500E307AC /* RKResourceManager.m */; };
|
||||
255DE0DB10FFAB7700A85891 /* RKObjectManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3FBF1D38103614E500E307AC /* RKObjectManager.m */; };
|
||||
255DE0DD10FFAB7E00A85891 /* RKManagedObjectStore.m in Sources */ = {isa = PBXBuildFile; fileRef = 2525EBEA106961DD0069EBED /* RKManagedObjectStore.m */; };
|
||||
255DE0DE10FFAB7F00A85891 /* RKManagedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 25FCDDDA1035BC85005418A7 /* RKManagedObject.m */; };
|
||||
255DE0E210FFABA500A85891 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 255DE0E110FFABA500A85891 /* CoreData.framework */; };
|
||||
@@ -80,14 +80,14 @@
|
||||
256FDE55112DB0B90077F340 /* RKResourceMapperSpecModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 256FDE54112DB0B90077F340 /* RKResourceMapperSpecModel.m */; };
|
||||
257EA42011F6317A00DB04C3 /* libOCMock-iPhone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 257EA41C11F6317600DB04C3 /* libOCMock-iPhone.a */; };
|
||||
257EAAAF11F73DA000DB04C3 /* RKObjectSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 257EAAAE11F73DA000DB04C3 /* RKObjectSpec.m */; };
|
||||
2580B068102E0F1000832D07 /* RKResourceLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 2580B066102E0F1000832D07 /* RKResourceLoader.h */; };
|
||||
2580B069102E0F1000832D07 /* RKResourceLoader.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580B067102E0F1000832D07 /* RKResourceLoader.m */; };
|
||||
2580B068102E0F1000832D07 /* RKObjectLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 2580B066102E0F1000832D07 /* RKObjectLoader.h */; };
|
||||
2580B069102E0F1000832D07 /* RKObjectLoader.m in Sources */ = {isa = PBXBuildFile; fileRef = 2580B067102E0F1000832D07 /* RKObjectLoader.m */; };
|
||||
25B86E0A115BEB71009761A1 /* Errors.h in Headers */ = {isa = PBXBuildFile; fileRef = 25B86E09115BEB71009761A1 /* Errors.h */; };
|
||||
25B86EDE115BEFE8009761A1 /* Errors.m in Sources */ = {isa = PBXBuildFile; fileRef = 25B86EDD115BEFE8009761A1 /* Errors.m */; };
|
||||
25B86EE0115BEFE8009761A1 /* Errors.m in Sources */ = {isa = PBXBuildFile; fileRef = 25B86EDD115BEFE8009761A1 /* Errors.m */; };
|
||||
25FCDDDB1035BC85005418A7 /* RKManagedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 25FCDDD91035BC85005418A7 /* RKManagedObject.h */; };
|
||||
25FCDDDC1035BC85005418A7 /* RKManagedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 25FCDDDA1035BC85005418A7 /* RKManagedObject.m */; };
|
||||
25FCDE9C1035E901005418A7 /* RKResourceMappable.h in Headers */ = {isa = PBXBuildFile; fileRef = 25FCDE9B1035E901005418A7 /* RKResourceMappable.h */; };
|
||||
25FCDE9C1035E901005418A7 /* RKObjectMappable.h in Headers */ = {isa = PBXBuildFile; fileRef = 25FCDE9B1035E901005418A7 /* RKObjectMappable.h */; };
|
||||
3F032A7910FFB89100F35142 /* RKCat.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F032A7810FFB89100F35142 /* RKCat.m */; };
|
||||
3F032AA810FFBBCD00F35142 /* RKHouse.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F032AA710FFBBCD00F35142 /* RKHouse.m */; };
|
||||
3F032AAB10FFBC1F00F35142 /* RKResident.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F032AAA10FFBC1F00F35142 /* RKResident.m */; };
|
||||
@@ -111,8 +111,8 @@
|
||||
3F6C3A2E10FE749C008F47C5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3F6C3A2D10FE749C008F47C5 /* Foundation.framework */; };
|
||||
3F6C3A9410FE7519008F47C5 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F6C3A9310FE7519008F47C5 /* main.m */; };
|
||||
3F6C3A9610FE7524008F47C5 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3F6C3A9510FE7524008F47C5 /* UIKit.framework */; };
|
||||
3FBF1D39103614E500E307AC /* RKResourceManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 3FBF1D37103614E500E307AC /* RKResourceManager.h */; };
|
||||
3FBF1D3A103614E500E307AC /* RKResourceManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3FBF1D38103614E500E307AC /* RKResourceManager.m */; };
|
||||
3FBF1D39103614E500E307AC /* RKObjectManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 3FBF1D37103614E500E307AC /* RKObjectManager.h */; };
|
||||
3FBF1D3A103614E500E307AC /* RKObjectManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 3FBF1D38103614E500E307AC /* RKObjectManager.m */; };
|
||||
739573C211BC15E700F44055 /* NSObject+SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 739573BC11BC15E700F44055 /* NSObject+SBJSON.m */; };
|
||||
739573C311BC15E700F44055 /* NSString+SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 739573BD11BC15E700F44055 /* NSString+SBJSON.m */; };
|
||||
739573C411BC15E700F44055 /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = 739573BE11BC15E700F44055 /* SBJSON.m */; };
|
||||
@@ -328,8 +328,8 @@
|
||||
2525F99F106C0FF40069EBED /* RKNotifications.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKNotifications.m; path = Code/RKNotifications.m; sourceTree = "<group>"; };
|
||||
252F4CBE114021B5003C6F42 /* RKObjectSeeder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKObjectSeeder.h; path = Code/RestKit/RKObjectSeeder.h; sourceTree = "<group>"; };
|
||||
252F4CBF114021B5003C6F42 /* RKObjectSeeder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKObjectSeeder.m; path = Code/RKObjectSeeder.m; sourceTree = "<group>"; };
|
||||
252F4F9E1140433D003C6F42 /* RKResourceMapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKResourceMapper.h; path = Code/RestKit/RKResourceMapper.h; sourceTree = "<group>"; };
|
||||
252F4F9F1140433D003C6F42 /* RKResourceMapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKResourceMapper.m; path = Code/RKResourceMapper.m; sourceTree = "<group>"; };
|
||||
252F4F9E1140433D003C6F42 /* RKObjectMapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKObjectMapper.h; path = Code/RestKit/RKObjectMapper.h; sourceTree = "<group>"; };
|
||||
252F4F9F1140433D003C6F42 /* RKObjectMapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKObjectMapper.m; path = Code/RKObjectMapper.m; sourceTree = "<group>"; };
|
||||
252F4FA7114046C9003C6F42 /* RKMappingFormatJSONParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKMappingFormatJSONParser.h; path = Code/RKMappingFormatJSONParser.h; sourceTree = "<group>"; };
|
||||
252F4FA8114046C9003C6F42 /* RKMappingFormatJSONParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKMappingFormatJSONParser.m; path = Code/RKMappingFormatJSONParser.m; sourceTree = "<group>"; };
|
||||
252F55891140B93A003C6F42 /* RKObjectPropertyInspector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKObjectPropertyInspector.h; path = Code/RKObjectPropertyInspector.h; sourceTree = "<group>"; };
|
||||
@@ -356,13 +356,13 @@
|
||||
256FDE54112DB0B90077F340 /* RKResourceMapperSpecModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RKResourceMapperSpecModel.m; sourceTree = "<group>"; };
|
||||
256FE8D6112EE5310077F340 /* RestKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RestKit.h; path = Code/RestKit/RestKit.h; sourceTree = "<group>"; };
|
||||
257EAAAE11F73DA000DB04C3 /* RKObjectSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RKObjectSpec.m; sourceTree = "<group>"; };
|
||||
2580B066102E0F1000832D07 /* RKResourceLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKResourceLoader.h; path = Code/RestKit/RKResourceLoader.h; sourceTree = "<group>"; };
|
||||
2580B067102E0F1000832D07 /* RKResourceLoader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKResourceLoader.m; path = Code/RKResourceLoader.m; sourceTree = "<group>"; };
|
||||
2580B066102E0F1000832D07 /* RKObjectLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKObjectLoader.h; path = Code/RestKit/RKObjectLoader.h; sourceTree = "<group>"; };
|
||||
2580B067102E0F1000832D07 /* RKObjectLoader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKObjectLoader.m; path = Code/RKObjectLoader.m; sourceTree = "<group>"; };
|
||||
25B86E09115BEB71009761A1 /* Errors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Errors.h; path = Code/RestKit/Errors.h; sourceTree = "<group>"; };
|
||||
25B86EDD115BEFE8009761A1 /* Errors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Errors.m; path = Code/Errors.m; sourceTree = "<group>"; };
|
||||
25FCDDD91035BC85005418A7 /* RKManagedObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKManagedObject.h; path = Code/RestKit/RKManagedObject.h; sourceTree = "<group>"; };
|
||||
25FCDDDA1035BC85005418A7 /* RKManagedObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKManagedObject.m; path = Code/RKManagedObject.m; sourceTree = "<group>"; };
|
||||
25FCDE9B1035E901005418A7 /* RKResourceMappable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKResourceMappable.h; path = Code/RestKit/RKResourceMappable.h; sourceTree = "<group>"; };
|
||||
25FCDE9B1035E901005418A7 /* RKObjectMappable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKObjectMappable.h; path = Code/RestKit/RKObjectMappable.h; sourceTree = "<group>"; };
|
||||
3F032A7710FFB89100F35142 /* RKCat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RKCat.h; sourceTree = "<group>"; };
|
||||
3F032A7810FFB89100F35142 /* RKCat.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RKCat.m; sourceTree = "<group>"; };
|
||||
3F032AA610FFBBCD00F35142 /* RKHouse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RKHouse.h; sourceTree = "<group>"; };
|
||||
@@ -393,8 +393,8 @@
|
||||
3F6C3A9310FE7519008F47C5 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
3F6C3A9510FE7524008F47C5 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
||||
3F6C3AD010FE76C1008F47C5 /* RKModelMapperSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RKModelMapperSpec.m; sourceTree = "<group>"; };
|
||||
3FBF1D37103614E500E307AC /* RKResourceManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKResourceManager.h; path = Code/RestKit/RKResourceManager.h; sourceTree = "<group>"; };
|
||||
3FBF1D38103614E500E307AC /* RKResourceManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKResourceManager.m; path = Code/RKResourceManager.m; sourceTree = "<group>"; };
|
||||
3FBF1D37103614E500E307AC /* RKObjectManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RKObjectManager.h; path = Code/RestKit/RKObjectManager.h; sourceTree = "<group>"; };
|
||||
3FBF1D38103614E500E307AC /* RKObjectManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RKObjectManager.m; path = Code/RKObjectManager.m; sourceTree = "<group>"; };
|
||||
739573BC11BC15E700F44055 /* NSObject+SBJSON.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSObject+SBJSON.m"; path = "Code/JSON/NSObject+SBJSON.m"; sourceTree = "<group>"; };
|
||||
739573BD11BC15E700F44055 /* NSString+SBJSON.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSString+SBJSON.m"; path = "Code/JSON/NSString+SBJSON.m"; sourceTree = "<group>"; };
|
||||
739573BE11BC15E700F44055 /* SBJSON.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SBJSON.m; path = Code/JSON/SBJSON.m; sourceTree = "<group>"; };
|
||||
@@ -459,12 +459,8 @@
|
||||
0867D691FE84028FC02AAC07 /* OTRestFramework */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
739573BB11BC15CD00F44055 /* JSON */,
|
||||
256FEA54112EF35C0077F340 /* Core */,
|
||||
256FEA5C112EF3870077F340 /* Resources */,
|
||||
2523362211E7A1080048F9B4 /* Three20 */,
|
||||
2538E5FA1231C64500ACB5D7 /* Code */,
|
||||
3F6C3A9210FE750E008F47C5 /* Specs */,
|
||||
32C88DFF0371C24200C91783 /* Other Sources */,
|
||||
256FD512112C66870077F340 /* Resources */,
|
||||
0867D69AFE84028FC02AAC07 /* Frameworks */,
|
||||
034768DFFF38A50411DB9C8B /* Products */,
|
||||
@@ -595,6 +591,42 @@
|
||||
name = Three20;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
2538E5F61231C5D800ACB5D7 /* Core Data */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
25FCDDD91035BC85005418A7 /* RKManagedObject.h */,
|
||||
25FCDDDA1035BC85005418A7 /* RKManagedObject.m */,
|
||||
2525EBE9106961DD0069EBED /* RKManagedObjectStore.h */,
|
||||
2525EBEA106961DD0069EBED /* RKManagedObjectStore.m */,
|
||||
);
|
||||
name = "Core Data";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
2538E5FA1231C64500ACB5D7 /* Code */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
256FEA54112EF35C0077F340 /* Core */,
|
||||
2538E5FB1231C65200ACB5D7 /* Support */,
|
||||
256FEA5C112EF3870077F340 /* Object Mapping */,
|
||||
2538E5F61231C5D800ACB5D7 /* Core Data */,
|
||||
2523362211E7A1080048F9B4 /* Three20 */,
|
||||
);
|
||||
name = Code;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
2538E5FB1231C65200ACB5D7 /* Support */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
253BBE941076AB1C00C804B2 /* NSString+InflectionSupport.h */,
|
||||
253BBE951076AB1C00C804B2 /* NSString+InflectionSupport.m */,
|
||||
2523367611E7A6800048F9B4 /* RKSearchEngine.h */,
|
||||
2523362B11E7A1360048F9B4 /* RKSearchEngine.m */,
|
||||
AA747D9E0F9514B9006C5449 /* RestKit_Prefix.pch */,
|
||||
739573BB11BC15CD00F44055 /* JSON */,
|
||||
);
|
||||
name = Support;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
255DE05B10FFA04200A85891 /* Models */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -680,57 +712,41 @@
|
||||
25232D4E11E62C470048F9B4 /* RKJSONSerialization.m */,
|
||||
2525F99E106C0FF40069EBED /* RKNotifications.h */,
|
||||
2525F99F106C0FF40069EBED /* RKNotifications.m */,
|
||||
253BBE941076AB1C00C804B2 /* NSString+InflectionSupport.h */,
|
||||
253BBE951076AB1C00C804B2 /* NSString+InflectionSupport.m */,
|
||||
3F4E18EF102DD38700320118 /* RKRequestSerializable.h */,
|
||||
3F4E1918102DD42F00320118 /* NSDictionary+RKRequestSerialization.h */,
|
||||
3F4E1919102DD42F00320118 /* NSDictionary+RKRequestSerialization.m */,
|
||||
256FE8D6112EE5310077F340 /* RestKit.h */,
|
||||
25B86E09115BEB71009761A1 /* Errors.h */,
|
||||
25B86EDD115BEFE8009761A1 /* Errors.m */,
|
||||
3F4E1918102DD42F00320118 /* NSDictionary+RKRequestSerialization.h */,
|
||||
3F4E1919102DD42F00320118 /* NSDictionary+RKRequestSerialization.m */,
|
||||
25232F8611E6476B0048F9B4 /* NSObject+RKJSONSerialization.h */,
|
||||
25232F8711E6476B0048F9B4 /* NSObject+RKJSONSerialization.m */,
|
||||
2523367611E7A6800048F9B4 /* RKSearchEngine.h */,
|
||||
2523362B11E7A1360048F9B4 /* RKSearchEngine.m */,
|
||||
);
|
||||
name = Core;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
256FEA5C112EF3870077F340 /* Resources */ = {
|
||||
256FEA5C112EF3870077F340 /* Object Mapping */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
3FBF1D37103614E500E307AC /* RKResourceManager.h */,
|
||||
3FBF1D38103614E500E307AC /* RKResourceManager.m */,
|
||||
25FCDE9B1035E901005418A7 /* RKResourceMappable.h */,
|
||||
3FBF1D37103614E500E307AC /* RKObjectManager.h */,
|
||||
3FBF1D38103614E500E307AC /* RKObjectManager.m */,
|
||||
25FCDE9B1035E901005418A7 /* RKObjectMappable.h */,
|
||||
250BBFAD11F606D300F3FE5A /* RKRouter.h */,
|
||||
250BBFC111F608DB00F3FE5A /* RKStaticRouter.h */,
|
||||
250BBFC211F608DB00F3FE5A /* RKStaticRouter.m */,
|
||||
25FCDDD91035BC85005418A7 /* RKManagedObject.h */,
|
||||
25FCDDDA1035BC85005418A7 /* RKManagedObject.m */,
|
||||
250BBF9811F5FFF500F3FE5A /* RKObject.h */,
|
||||
250BBF9911F5FFF500F3FE5A /* RKObject.m */,
|
||||
2580B066102E0F1000832D07 /* RKResourceLoader.h */,
|
||||
2580B067102E0F1000832D07 /* RKResourceLoader.m */,
|
||||
2525EBE9106961DD0069EBED /* RKManagedObjectStore.h */,
|
||||
2525EBEA106961DD0069EBED /* RKManagedObjectStore.m */,
|
||||
2580B066102E0F1000832D07 /* RKObjectLoader.h */,
|
||||
2580B067102E0F1000832D07 /* RKObjectLoader.m */,
|
||||
252F4CBE114021B5003C6F42 /* RKObjectSeeder.h */,
|
||||
252F4CBF114021B5003C6F42 /* RKObjectSeeder.m */,
|
||||
252F4F9E1140433D003C6F42 /* RKResourceMapper.h */,
|
||||
252F4F9F1140433D003C6F42 /* RKResourceMapper.m */,
|
||||
252F4F9E1140433D003C6F42 /* RKObjectMapper.h */,
|
||||
252F4F9F1140433D003C6F42 /* RKObjectMapper.m */,
|
||||
252F4FA7114046C9003C6F42 /* RKMappingFormatJSONParser.h */,
|
||||
252F4FA8114046C9003C6F42 /* RKMappingFormatJSONParser.m */,
|
||||
252F55891140B93A003C6F42 /* RKObjectPropertyInspector.h */,
|
||||
252F558A1140B93A003C6F42 /* RKObjectPropertyInspector.m */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
32C88DFF0371C24200C91783 /* Other Sources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
AA747D9E0F9514B9006C5449 /* RestKit_Prefix.pch */,
|
||||
);
|
||||
name = "Other Sources";
|
||||
name = "Object Mapping";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
3F6C3A9210FE750E008F47C5 /* Specs */ = {
|
||||
@@ -795,15 +811,15 @@
|
||||
3F4E18FE102DD38800320118 /* RKRequestSerializable.h in Headers */,
|
||||
3F4E18FF102DD38800320118 /* RKResponse.h in Headers */,
|
||||
3F4E191A102DD42F00320118 /* NSDictionary+RKRequestSerialization.h in Headers */,
|
||||
2580B068102E0F1000832D07 /* RKResourceLoader.h in Headers */,
|
||||
2580B068102E0F1000832D07 /* RKObjectLoader.h in Headers */,
|
||||
25FCDDDB1035BC85005418A7 /* RKManagedObject.h in Headers */,
|
||||
25FCDE9C1035E901005418A7 /* RKResourceMappable.h in Headers */,
|
||||
3FBF1D39103614E500E307AC /* RKResourceManager.h in Headers */,
|
||||
25FCDE9C1035E901005418A7 /* RKObjectMappable.h in Headers */,
|
||||
3FBF1D39103614E500E307AC /* RKObjectManager.h in Headers */,
|
||||
2525EBEB106961DD0069EBED /* RKManagedObjectStore.h in Headers */,
|
||||
2525F9A0106C0FF40069EBED /* RKNotifications.h in Headers */,
|
||||
253BBE961076AB1C00C804B2 /* NSString+InflectionSupport.h in Headers */,
|
||||
252F4CC0114021B5003C6F42 /* RKObjectSeeder.h in Headers */,
|
||||
252F4FA11140433D003C6F42 /* RKResourceMapper.h in Headers */,
|
||||
252F4FA11140433D003C6F42 /* RKObjectMapper.h in Headers */,
|
||||
252F4FA9114046C9003C6F42 /* RKMappingFormatJSONParser.h in Headers */,
|
||||
252F558C1140B93A003C6F42 /* RKObjectPropertyInspector.h in Headers */,
|
||||
25B86E0A115BEB71009761A1 /* Errors.h in Headers */,
|
||||
@@ -1079,7 +1095,7 @@
|
||||
3F6C3A9410FE7519008F47C5 /* main.m in Sources */,
|
||||
255DE05A10FF9DA500A85891 /* RKModelManagerSpec.m in Sources */,
|
||||
255DE05E10FFA05800A85891 /* RKHuman.m in Sources */,
|
||||
255DE0DB10FFAB7700A85891 /* RKResourceManager.m in Sources */,
|
||||
255DE0DB10FFAB7700A85891 /* RKObjectManager.m in Sources */,
|
||||
255DE0DD10FFAB7E00A85891 /* RKManagedObjectStore.m in Sources */,
|
||||
255DE0DE10FFAB7F00A85891 /* RKManagedObject.m in Sources */,
|
||||
255DE0E510FFABBB00A85891 /* RKResponse.m in Sources */,
|
||||
@@ -1106,8 +1122,8 @@
|
||||
256FDE55112DB0B90077F340 /* RKResourceMapperSpecModel.m in Sources */,
|
||||
2520776E113587BE00382018 /* NSDictionary+RKRequestSerializationSpec.m in Sources */,
|
||||
252F4CC2114021B5003C6F42 /* RKObjectSeeder.m in Sources */,
|
||||
252F4F9D11404322003C6F42 /* RKResourceLoader.m in Sources */,
|
||||
252F4FA01140433D003C6F42 /* RKResourceMapper.m in Sources */,
|
||||
252F4F9D11404322003C6F42 /* RKObjectLoader.m in Sources */,
|
||||
252F4FA01140433D003C6F42 /* RKObjectMapper.m in Sources */,
|
||||
252F4FAB114046C9003C6F42 /* RKMappingFormatJSONParser.m in Sources */,
|
||||
252F558B1140B93A003C6F42 /* RKObjectPropertyInspector.m in Sources */,
|
||||
25B86EDE115BEFE8009761A1 /* Errors.m in Sources */,
|
||||
@@ -1137,14 +1153,14 @@
|
||||
3F4E18FD102DD38800320118 /* RKRequest.m in Sources */,
|
||||
3F4E1900102DD38800320118 /* RKResponse.m in Sources */,
|
||||
3F4E191B102DD42F00320118 /* NSDictionary+RKRequestSerialization.m in Sources */,
|
||||
2580B069102E0F1000832D07 /* RKResourceLoader.m in Sources */,
|
||||
2580B069102E0F1000832D07 /* RKObjectLoader.m in Sources */,
|
||||
25FCDDDC1035BC85005418A7 /* RKManagedObject.m in Sources */,
|
||||
3FBF1D3A103614E500E307AC /* RKResourceManager.m in Sources */,
|
||||
3FBF1D3A103614E500E307AC /* RKObjectManager.m in Sources */,
|
||||
2525EBEC106961DD0069EBED /* RKManagedObjectStore.m in Sources */,
|
||||
2525F9A1106C0FF40069EBED /* RKNotifications.m in Sources */,
|
||||
253BBE971076AB1C00C804B2 /* NSString+InflectionSupport.m in Sources */,
|
||||
252F4CC1114021B5003C6F42 /* RKObjectSeeder.m in Sources */,
|
||||
252F4FA21140433D003C6F42 /* RKResourceMapper.m in Sources */,
|
||||
252F4FA21140433D003C6F42 /* RKObjectMapper.m in Sources */,
|
||||
252F4FAA114046C9003C6F42 /* RKMappingFormatJSONParser.m in Sources */,
|
||||
252F558D1140B93A003C6F42 /* RKObjectPropertyInspector.m in Sources */,
|
||||
25B86EE0115BEFE8009761A1 /* Errors.m in Sources */,
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKObjectMappable.h"
|
||||
|
||||
@interface RKMappableAssociation : NSObject <RKResourceMappable> {
|
||||
@interface RKMappableAssociation : NSObject <RKObjectMappable> {
|
||||
NSString* _testString;
|
||||
}
|
||||
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "RKResourceMappable.h"
|
||||
#import "RKObjectMappable.h"
|
||||
#import "RKMappableAssociation.h"
|
||||
|
||||
@interface RKMappableObject : NSObject <RKResourceMappable> {
|
||||
@interface RKMappableObject : NSObject <RKObjectMappable> {
|
||||
NSDate* _dateTest;
|
||||
NSNumber* _numberTest;
|
||||
NSString* _stringTest;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceMapperSpecModel.h
|
||||
// RKObjectMapperSpecModel.h
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 2/18/10.
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface RKResourceMapperSpecModel : NSObject {
|
||||
@interface RKObjectMapperSpecModel : NSObject {
|
||||
NSString* _name;
|
||||
NSNumber* _age;
|
||||
NSDate* _createdAt;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
//
|
||||
// RKResourceMapperSpecModel.m
|
||||
// RKObjectMapperSpecModel.m
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 2/18/10.
|
||||
// Copyright 2010 Two Toasters. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RKResourceMapperSpecModel.h"
|
||||
#import "RKObjectMapperSpecModel.h"
|
||||
|
||||
@implementation RKResourceMapperSpecModel
|
||||
@implementation RKObjectMapperSpecModel
|
||||
|
||||
@synthesize name = _name;
|
||||
@synthesize age = _age;
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
//
|
||||
|
||||
#import "RKSpecEnvironment.h"
|
||||
#import "RKResourceManager.h"
|
||||
#import "RKObjectManager.h"
|
||||
#import "RKHuman.h"
|
||||
|
||||
@interface RKManagedObjectSpec : NSObject <UISpec> {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceManagerSpec.m
|
||||
// RKObjectManagerSpec.m
|
||||
// RestKit
|
||||
//
|
||||
// Created by Blake Watters on 1/14/10.
|
||||
@@ -7,22 +7,22 @@
|
||||
//
|
||||
|
||||
#import "RKSpecEnvironment.h"
|
||||
#import "RKResourceManager.h"
|
||||
#import "RKObjectManager.h"
|
||||
#import "RKSpecResponseLoader.h"
|
||||
#import "RKHuman.h"
|
||||
|
||||
@interface RKResourceManagerSpec : NSObject <UISpec> {
|
||||
RKResourceManager* _modelManager;
|
||||
@interface RKObjectManagerSpec : NSObject <UISpec> {
|
||||
RKObjectManager* _modelManager;
|
||||
RKSpecResponseLoader* _responseLoader;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation RKResourceManagerSpec
|
||||
@implementation RKObjectManagerSpec
|
||||
|
||||
- (void)beforeAll {
|
||||
NSString* localBaseURL = [NSString stringWithFormat:@"http://%s:3000", getenv("RKREST_IP_ADDRESS")];
|
||||
_modelManager = [RKResourceManager managerWithBaseURL:localBaseURL];
|
||||
_modelManager = [RKObjectManager managerWithBaseURL:localBaseURL];
|
||||
_modelManager.objectStore = [[RKManagedObjectStore alloc] initWithStoreFilename:@"RKSpecs.sqlite"];
|
||||
[_modelManager registerClass:[RKHuman class] forElementNamed:@"human"];
|
||||
_responseLoader = [[RKSpecResponseLoader alloc] init];
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
- (void)itShouldHandleConnectionFailures {
|
||||
NSString* localBaseURL = [NSString stringWithFormat:@"http://%s:3001", getenv("RKREST_IP_ADDRESS")];
|
||||
RKResourceManager* modelManager = [RKResourceManager managerWithBaseURL:localBaseURL];
|
||||
RKObjectManager* modelManager = [RKObjectManager managerWithBaseURL:localBaseURL];
|
||||
[modelManager loadResource:@"/humans/1" delegate:_responseLoader];
|
||||
[_responseLoader waitForResponse];
|
||||
[expectThat(_responseLoader.success) should:be(NO)];
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//
|
||||
// RKResourceMapperSpec.m
|
||||
// RKObjectMapperSpec.m
|
||||
// RestKit
|
||||
//
|
||||
// Created by Jeremy Ellison on 12/8/09.
|
||||
@@ -7,20 +7,20 @@
|
||||
//
|
||||
|
||||
#import "RKSpecEnvironment.h"
|
||||
#import "RKResourceMapper.h"
|
||||
#import "RKObjectMapper.h"
|
||||
|
||||
#import "RKMappableObject.h"
|
||||
#import "RKMappableAssociation.h"
|
||||
#import "RKResourceMapperSpecModel.h"
|
||||
#import "RKObjectMapperSpecModel.h"
|
||||
|
||||
@interface RKResourceMapperSpec : NSObject <UISpec>
|
||||
@interface RKObjectMapperSpec : NSObject <UISpec>
|
||||
|
||||
@end
|
||||
|
||||
@implementation RKResourceMapperSpec
|
||||
@implementation RKObjectMapperSpec
|
||||
|
||||
- (void)itShouldMapFromJSON {
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
mapper.format = RKMappingFormatJSON;
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
@@ -41,7 +41,7 @@
|
||||
}
|
||||
|
||||
- (void)itShouldMapObjectsFromJSON {
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
mapper.format = RKMappingFormatJSON;
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
@@ -64,7 +64,7 @@
|
||||
}
|
||||
|
||||
- (void)itShouldMapFromXML {
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
mapper.format = RKMappingFormatXML;
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
@@ -85,7 +85,7 @@
|
||||
}
|
||||
|
||||
- (void)itShouldMapObjectsFromXML {
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
mapper.format = RKMappingFormatXML;
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
[mapper registerClass:[RKMappableObject class] forElementNamed:@"test_serialization_class"];
|
||||
@@ -108,33 +108,33 @@
|
||||
}
|
||||
|
||||
- (void)itShouldNotUpdateNilPropertyToNil {
|
||||
RKResourceMapperSpecModel* model = [[RKResourceMapperSpecModel alloc] autorelease];
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapperSpecModel* model = [[RKObjectMapperSpecModel alloc] autorelease];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
[mapper updateObject:model ifNewPropertyValue:nil forPropertyNamed:@"name"];
|
||||
|
||||
[expectThat(model.name) should:be(nil)];
|
||||
}
|
||||
|
||||
- (void)itShouldBeAbleToSetNonNilPropertiesToNil {
|
||||
RKResourceMapperSpecModel* model = [[RKResourceMapperSpecModel alloc] autorelease];
|
||||
RKObjectMapperSpecModel* model = [[RKObjectMapperSpecModel alloc] autorelease];
|
||||
model.age = [NSNumber numberWithInt:0];
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
[mapper updateObject:model ifNewPropertyValue:nil forPropertyNamed:@"age"];
|
||||
|
||||
[expectThat(model.age) should:be(nil)];
|
||||
}
|
||||
|
||||
- (void)itShouldBeAbleToSetNilPropertiesToNonNil {
|
||||
RKResourceMapperSpecModel* model = [[RKResourceMapperSpecModel alloc] autorelease];
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapperSpecModel* model = [[RKObjectMapperSpecModel alloc] autorelease];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
[mapper updateObject:model ifNewPropertyValue:[NSNumber numberWithInt:0] forPropertyNamed:@"age"];
|
||||
|
||||
[expectThat(model.age) should:be([NSNumber numberWithInt:0])];
|
||||
}
|
||||
|
||||
- (void)itShouldBeAbleToSetNonNilNSStringPropertiesToNonNil {
|
||||
RKResourceMapperSpecModel* model = [[RKResourceMapperSpecModel alloc] autorelease];
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapperSpecModel* model = [[RKObjectMapperSpecModel alloc] autorelease];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
|
||||
model.name = @"Bob";
|
||||
[mapper updateObject:model ifNewPropertyValue:@"Will" forPropertyNamed:@"name"];
|
||||
@@ -142,8 +142,8 @@
|
||||
}
|
||||
|
||||
- (void)itShouldBeAbleToSetNonNilNSNumberPropertiesToNonNil {
|
||||
RKResourceMapperSpecModel* model = [[RKResourceMapperSpecModel alloc] autorelease];
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapperSpecModel* model = [[RKObjectMapperSpecModel alloc] autorelease];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
|
||||
model.age = [NSNumber numberWithInt:16];
|
||||
[mapper updateObject:model ifNewPropertyValue:[NSNumber numberWithInt:17] forPropertyNamed:@"age"];
|
||||
@@ -151,8 +151,8 @@
|
||||
}
|
||||
|
||||
- (void)itShouldBeAbleToSetNonNilNSDatePropertiesToNonNil {
|
||||
RKResourceMapperSpecModel* model = [[RKResourceMapperSpecModel alloc] autorelease];
|
||||
RKResourceMapper* mapper = [[RKResourceMapper alloc] init];
|
||||
RKObjectMapperSpecModel* model = [[RKObjectMapperSpecModel alloc] autorelease];
|
||||
RKObjectMapper* mapper = [[RKObjectMapper alloc] init];
|
||||
|
||||
model.createdAt = [NSDate date];
|
||||
[mapper updateObject:model ifNewPropertyValue:[NSDate dateWithTimeIntervalSince1970:0] forPropertyNamed:@"createdAt"];
|
||||
@@ -162,7 +162,7 @@
|
||||
|
||||
@end
|
||||
|
||||
@implementation RKResourceMapperSpec (Private)
|
||||
@implementation RKObjectMapperSpec (Private)
|
||||
|
||||
- (NSString*)jsonString {
|
||||
return
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "RKResourceLoader.h"
|
||||
#import "RKObjectLoader.h"
|
||||
|
||||
@interface RKSpecResponseLoader : NSObject <RKResourceLoaderDelegate> {
|
||||
@interface RKSpecResponseLoader : NSObject <RKObjectLoaderDelegate> {
|
||||
BOOL _awaitingResponse;
|
||||
BOOL _success;
|
||||
id _response;
|
||||
|
||||
@@ -53,11 +53,11 @@
|
||||
_success = YES;
|
||||
}
|
||||
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didLoadObjects:(NSArray*)objects response:(RKResponse*)response object:(id<RKResourceMappable>)object {
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didLoadObjects:(NSArray*)objects response:(RKResponse*)response object:(id<RKObjectMappable>)object {
|
||||
[self loadResponse:response];
|
||||
}
|
||||
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didFailWithError:(NSError*)error response:(RKResponse*)response object:(id<RKResourceMappable>)object {
|
||||
- (void)resourceLoadRequest:(RKRequest*)request didFailWithError:(NSError*)error response:(RKResponse*)response object:(id<RKObjectMappable>)object {
|
||||
_awaitingResponse = NO;
|
||||
_success = NO;
|
||||
_failureError = [error retain];
|
||||
|
||||
Reference in New Issue
Block a user