Jeremy Ellison
ffe46ffeaa
If the RKObjectLoaderTTModel wants to load without Disk cache (TTURLRequestCachePolicyDisk), tell the object loader not to use the RK cache.
2011-06-30 12:54:03 -04:00
Jeremy Ellison
f98566b837
Implement Timeout Based Caches
2011-06-30 12:54:02 -04:00
Duncan Lewis
403bf29f57
Added helper functions to RKObjectSerializer to map local objects into json
2011-06-30 12:28:28 -04:00
Blake Watters
7053a8ca97
Add support for sending objects of one type and getting back another. Target object has been disambiguated into sourceObject and targetObject
...
and act independently with regards to serialization and destination mapping. When you leverage the getObject:mapResponseWith: flavor of methods,
the type of your sourceObject is checked with the destination type of the object mapping. If they agree, it is assumed that you are trying to update
the object with the results of the mapping and targetObject is set appropriately. If they do not match, the targetObject is set to nil so that new
objects will be loaded. closes #161 , #168
2011-06-30 10:33:39 -04:00
Blake Watters
2ac45f5ccc
Refactored object loaders to provide easier support for non-nested JSON responses. There are new flavors of getObject:, postObject:, etc.
...
that allow the developer to explicitly specify the object mapping to use for processing the response. closes #168
2011-06-30 10:33:39 -04:00
Blake Watters
e18c1f2811
Merge pull request #181 from dhilus/master
...
YAJL serialization option modified so NSURL properties are serialized as String.
2011-06-30 05:18:13 -07:00
Rémy SAISSY
69460fdc4f
YAJLGenOptionsIncludeNone -> YAJLGenOptionsIncludeUnsupportedTypes thus enabling NSURL properties to be serialized as string.
2011-06-30 09:40:41 +02:00
Blake Watters
2e7adbdc1e
Restore the managed object cache functionality and add test coverage so it does not break again. fixes #167
2011-06-29 22:08:35 -04:00
Blake Watters
d57b784c30
Don't delete the managed object unless we were responsible for saving it in the first place. closes #125
2011-06-29 21:04:17 -04:00
Blake Watters
5a2f937a52
Reworked notifications for consistency with Cocoa idioms. Simplified code paths through the queue. Tweaked the logging for easier info at the Debug level without having to drop down to Trace.
2011-06-29 16:18:18 -04:00
Blake Watters
853704b2fd
Rework notifications to allow request queue to observe only the requests it dispatches instead of all of them. Fixes incorrectly decrementing loading count.
2011-06-29 15:36:10 -04:00
Blake Watters
6faa525344
Added specs and support for either failing out the mapping operation or skipping over an attribute depending on key/value validation response. If NO is returned and a validation error is returned, the mapping operation will fail. If NO is returned without an error, the attribute will be skipped and a warning will be logged. You can also mutate the values. closes #166
2011-06-29 15:07:43 -04:00
Scott Penrose
41071ad61a
Added Key-Value validation checking during object mapping operation. If you return NO it will continue mapping but skip that key path. If you set the error it will error out of object mapping operation. Issue #166
2011-06-29 14:11:00 -04:00
Blake Watters
4b4d3d1af6
Remove dead RKRailsRouter code. fixes #178
2011-06-29 14:08:21 -04:00
Blake Watters
c97af0802b
Added new spec for RKURL. Implemented encoding of plus characters. fixes #170
2011-06-29 13:59:40 -04:00
Blake Watters
93d84bc463
Added comments about cache
2011-06-29 13:42:19 -04:00
Blake Watters
2a8ece97c1
Improvements to reachability, the request queue, logging throughout the network layer, decoupling of components via notifications, reliability improvements for unit tests in the cache layer. Improved thread-local cleanup routines inside the managed object store. Changing base URL's is now more reliable. fixes #171 , #158 , #113 , #104 , #102
2011-06-29 13:28:14 -04:00
Blake Watters
537a9d2fd1
Removed NSAssert and added logging about cases in which there is no error object or a collection is coerced into a single result. closes #159
2011-06-28 19:41:30 -04:00
Blake Watters
8fe8e5cc75
Rework queue iteration to use a while loop and maintain a count of dequeued requests to ensure finite iteration. refs #164
2011-06-28 19:20:17 -04:00
Blake Watters
1cfa273224
Added new logging to the RKRequestQueue for inspecting what is happening. Eliminated use of copy during iteration of the request queue to avoid issues with re-entrant invocations of the queue resulting in the queue becoming starved. Fixed a number of flaky tests by making the RKSpec helpers stub out network availability. closes #164
2011-06-28 18:18:49 -04:00
Blake Watters
b9ceef340e
Merge branch 'master' of github.com:twotoasters/RestKit
2011-06-28 15:31:55 -04:00
Blake Watters
3dfbaf1810
Updated to support setting default value instead of nil when an attribute is missing in the payload. For Core Data backed models, we consult the entity definition to obtain the default value. closes #117
2011-06-28 15:22:04 -04:00
Blake Watters
d72ed28000
Merge pull request #176 from hotwoofy/master
...
Use MIMEType as parser registry key, not content type
2011-06-28 11:42:40 -07:00
Blake Watters
851df3bcba
Changed signature of willMapData: to allow you to completely replace the mappableData.
2011-06-28 11:46:03 -04:00
Thom Lawrence
c982cac037
Retrieve parsers using MIME type, not content type.
2011-06-28 15:58:14 +01:00
Blake Watters
0949337749
Allow modification of the data in objectLoader:willMapData: by creating a mutable copy of the parsed data if the delegate method is implemented.
2011-06-27 16:37:55 -04:00
Blake Watters
e4320f7ea9
Added error reporting when RKManagedObjectLoader fails to save the object context. This was silently masking validation failures post-mapping.
2011-06-24 15:59:40 -04:00
Blake Watters
5dff3088e2
Added trace logging for Response body
2011-06-24 10:23:54 -04:00
Blake Watters
6f0b0b38f8
Broke out logging for requests into meaningfully differentiated Debug and Trace messages.
2011-06-24 10:13:59 -04:00
Blake Watters
4773542a9e
Fix breakage in Core Data
2011-06-23 09:21:54 -04:00
Blake Watters
64db97ce60
Helper methods for retrieving attribute and relationship mappings by attribute/relationship keyPath. Useful for customizing serialization mappings that were built using inverseMapping.
2011-06-22 10:43:42 -04:00
Blake Watters
8ad1a84281
Reworked object loader to check if a response is mappable even if it is an error. We had an assertion failure that could be triggered by trying to load a remote error payload in a non-mappable format (i.e. text/html).
2011-06-21 13:27:15 -04:00
Blake Watters
903ab19eae
Ensure that logging is configured on first invocation of RKLogConfigureByName. This
...
allows you to initialize the log level before you have configured any other part of the
framework.
2011-06-21 13:26:06 -04:00
Blake Watters
1ab61ad735
Check for nil target object ID before performing deletion. Log info about the process.
2011-06-21 10:13:34 -04:00
Blake Watters
13da6aa77e
Fix memory leak in the Three20 data source
2011-06-20 15:49:29 -04:00
Blake Watters
0954d4a063
Fixing more memory leaks
2011-06-20 15:03:35 -04:00
Blake Watters
99ae37037a
Fixes for memory leaks with RKParams related to HTTPBodyStream causing a retain
2011-06-20 13:41:42 -04:00
Jeremy Ellison
a5cc456351
Merge branch 'restkit-sprint' of github.com:twotoasters/RestKit into restkit-sprint
2011-06-20 10:51:30 -04:00
Jeremy Ellison
de154e21b8
Fix -reset in RKManagedObjectLoader.m
2011-06-20 10:50:56 -04:00
Blake Watters
3204682f72
Added object mapping management to the mapping provider for folks who don't have keyPaths. Deprecated setMapping:forKeyPath: in favor of setObjectMapping:forKeyPath: for consistency with the other method signatures.
2011-06-20 10:49:40 -04:00
Blake Watters
2006633491
Memory and ivar cleanups for RKParams
2011-06-20 10:49:40 -04:00
Victor Kryukov
9cb4e91ec6
Fix types: _body should be NSMutableData
2011-06-20 10:49:40 -04:00
Victor Kryukov
b14578436b
Fix typo in documentation string
2011-06-20 10:49:40 -04:00
Victor Kryukov
714be36907
Code cleanup: initWithDictionary is used in RKObjectLoader and should be declared
2011-06-20 10:49:39 -04:00
Victor Kryukov
00ee7e93c3
Code cleanup: **error may be null as per coding standards in 'Creating and Returning NSError Objects' (found with Analyzer)
2011-06-20 10:49:39 -04:00
Victor Kryukov
5eb654b76a
Code cleanup: sent == 0 at that point (found with XCode's Analyzer)
2011-06-20 10:49:39 -04:00
Victor Kryukov
b25d1395ee
Code cleanup: background policy is iOS 4.x and higher only
2011-06-20 10:49:39 -04:00
Jeremy Ellison
de684989db
Fix memory leaks in -reset on RKObjectLoader and RKManagedObjectLoader.
2011-06-20 09:12:56 -04:00
Blake Watters
3bf4b7bc0f
Implemented nested mapping for structures similar to the BuildBot JSON structure. fixes #112
2011-06-17 15:36:28 -04:00
Daniel Hammond
e9e4c83630
Merge branch 'restkit-sprint' of github.com:twotoasters/RestKit into restkit-sprint
2011-06-16 21:17:31 -04:00