Commit Graph

52 Commits

Author SHA1 Message Date
Brian Morton
8051fbd9ab Invalidate the RKRequest timer in RKResponse when the NSURLConnection begins receiving data. 2012-01-20 09:17:26 -05:00
Brian Morton
15d05f1493 Move the invalidateTimeoutTimer call in RKResponse from didReceiveData to didReceiveResponse and didFailWithError so we are sure its always called and as early as possible. 2012-01-20 09:15:35 -05:00
Blake Watters
89a4e579fd Revert "Merge branch 'nolanw-request-delegate-gets-failed-auth-challenge'"
This reverts commit d6510d963f, reversing
changes made to a1e2061106.
2012-01-09 19:53:23 -05:00
Blake Watters
e5e05a0563 Added delegate callback when authentication challenge fails. closes #462 2011-12-13 21:16:30 -05:00
Matthias Bartelmeß
e123eaa5fb Updated RKResponse to respect the encoding returned in the Content-Type header (charset=XXX). Exposed
encoding information as methods on RKResponse
2011-12-13 17:03:31 -05:00
Blake Watters
4c8a7f1103 Merge pull request #470 from inquinity/master
Fixed: RKResponse parsedBody will fail when encountering a parsing error if it was called with a nil NSError pointer
2011-12-13 12:12:11 -08:00
Robert Altman
2969e6b9f3 Added missing non-null test for NSError pointer 2011-12-12 17:06:17 -06:00
Blake Watters
479864902b Fixed all build warnings on OS X Framework target 2011-12-08 23:23:20 -05:00
Nolan Waite
9cc6de8dc4 Request delegate can learn of authentication failures 2011-12-08 13:17:52 -07:00
Blake Watters
8a39f93e62 Add support for handling 204 'No Content' responses. fixes #450 2011-12-02 09:27:22 -05:00
Blake Watters
5b718890ac Checking in work in progress on the library reorganization 2011-12-02 09:26:35 -05:00
Michael Fleet
0a0c3ac59e Fixed bug where local requests for bundle resources returned a NSURLResponse instead of a NSHTTPURLResponse, and therefore doesn't respond to statusCode or allHeaderFields. 2011-12-01 11:43:22 -05:00
Blake Watters
e86d9375bd Added test coverage and fixes for cases where the parser returns nil, but no error occurred. fixes #365 2011-09-28 09:43:35 -04:00
Sergej Tatarincev
3983bd00f8 Added download progress 2011-09-28 12:23:28 +03:00
Blake Watters
2d281e60d3 Investigated issues surrounding inability to change HTTP AUTH credentials thoroughly. fixes #250, #237, #127
These issues has been open for some time. I have added thorough unit test coverage
for scenarios of mutating the HTTP AUTH credentials on the RKClient and on individual
RKRequest instances. Everything seems to work fine.

Also added RKAuthenticationExample to RKCatalog for testing. Needs to be updated with
support for using OAuth.
2011-09-27 23:59:06 -04:00
Blake Watters
947cf378c7 Merge pull request #346 from ralfvdz/patch-1
Log the body when all data has been received.
2011-09-21 05:53:07 -07:00
Greg Combs
62d7042ebc Merge pull request #334 from parkerboundy/add-apache-license
Add the Apache License to headers (Issue #145) Closes #145.  Thanks @parkerboundy.
2011-09-14 21:56:15 -07:00
Ralf van der Zanden
41c8d27f04 Log the body when all data has been received. (body not always available/complete in didReceiveResponse) 2011-09-14 14:43:53 +03:00
Blake Watters
2a89404f7d Return nil from needNewBodyStream: to avoid weirdness with connections being revived. refs #335 2011-09-07 21:37:11 -04:00
Parker
e8b24a3959 added apache license to everything in the Network directory
I got tired of doing individual commits for each file, so I just did the
rest of the directory.
2011-09-07 10:45:42 -04:00
Blake Watters
d5cc021014 Merging SSL certificate validation support from #131 2011-07-27 08:40:33 -04:00
Blake Watters
b778af11d7 Fix for issue where authentication challenges without credentials would cause stream errors when coupled with an RKParams (NSInputStream) based params payload 2011-07-21 21:47:02 -04:00
Blake Watters
546eb627cd Respect the root keyPath when constructing a temporary object mapping provider. Covers the case where an object mapping targeting nested content is being directly specified. 2011-07-02 11:04:56 -04:00
Thom Lawrence
c982cac037 Retrieve parsers using MIME type, not content type. 2011-06-28 15:58:14 +01:00
Blake Watters
5dff3088e2 Added trace logging for Response body 2011-06-24 10:23:54 -04:00
Victor Kryukov
9cb4e91ec6 Fix types: _body should be NSMutableData 2011-06-20 10:49:40 -04:00
Scott Penrose
ea4a930cee Add support for 409 and 410 response status codes BOOL helper methods. fixes #115 2011-06-16 18:11:43 -04:00
Blake Watters
e65ea71b20 Updates to make parsedBody: implementation ready for merge. Migrated all remaining specs to RKSpec so failures don't cause crashes when you use the Hamcrest helpers. closes #153 2011-06-15 10:47:45 -04:00
Leon
550edf9873 Added error to method signature and used RKLogError if the errror isn't nil 2011-06-15 14:51:56 +02:00
Leon
2c5700fded Implemented parsedBody based on the new RKParserRegistry 2011-06-15 13:53:05 +02:00
Blake Watters
9299cabc11 Implemented flexible logging solution utilizing the excellent LibComponentLogging library. 2011-06-11 20:25:28 -04:00
Blake Watters
f2ceefa012 Merge Request Queue (See issue #75):
* Introduces RKRequestCache for cacheing responses (supports ETag conditional GET, use cache if available, use cache on error, etc.) closes #75
    * Updates to Three20 layer to eliminate need for intermediary TTTableItem classes closes #76
    * Fixes to ensure iOS 3.x compatability:
        * Switched compiler to Clang
        * Updated conditional checks for UIBackgroundTask symbols to ensure runtime safety on iOS 3.x
        * Removed unnecessary linkage against UIKit and CoreFoundation from library targets
    * Fix for issue where RKRequest objects could become stuck in infinite loop within RKRequestQueue loadNextInQueue if you start
      a request and then cancel immediately. On cancel only decrement loadCount if the request has start loading. refs #122
2011-06-11 19:28:44 -04:00
Blake Watters
f3c0995d5e Implementation of Object Mapping 2.0 design:
* Removed RestKit from inheritance hierarchy
  * Mappings are implemented as concrete classes
  * Mapper is much more flexible & powerful
  * Much more robust error handling
  * Serialization is reimplemented as an object mapping operation
  * Added ability to serialize to JSON natively
  * Reworked Core Data integration
  * Simplified the codebase substantially
2011-06-11 19:26:56 -04:00
Blake Watters
c35d0bab1d Implemented substantial catalog example application covering advanced usage of RestKit:
* Cleaned up remaining warnings about if (self = [super init])
* RKParamsExample - Highlights multi-part uploads
* RKRequestQueueExample - Working with the request queue
* RKBackgroundRequestExample - Examples of using the background policies for backgrounding requests
* RKReachabilityExample - Shows how to work with the reachability observer
* RKRelationshipMappingExample - Shows how to map related objects from JSON into an object graph
* RKCoreDataExample - Shows the basics of using RestKit's Core Data examples

Also rearranged dispatch of RKRequest delegate method for didStartLoad: to ensure requeue callbacks get invoked in a timely manner. refs #62
2011-04-22 11:28:56 -04:00
Blake Watters
c90ec2770d Finished cleanup of HTTP AUTH and XML Support. Ready to tag 0.9.1 2011-03-28 23:29:06 -04:00
Blake Watters
5411f54d02 Implemented lightweight authentication scheme setup. Enables HTTP Digest AUTH 2011-03-27 01:19:37 -04:00
daniel
20747ffa27 Merge branch 'master' of github.com:twotoasters/RestKit into new-example 2011-01-21 14:54:40 -05:00
Jeremy Ellison
7177c88182 rename internal didStartLoading method name 2011-01-12 15:27:45 -05:00
Jeremy Ellison
6a5ee2af7e Revert "Remove per-file copyrights"
This reverts commit 91e7c6bb5e.
2011-01-12 15:27:19 -05:00
Jeremy Ellison
91e7c6bb5e Remove per-file copyrights 2011-01-12 15:05:22 -05:00
Jeremy Ellison
634185f48a RKResponse should start loading on didReceiveData: or didSendBodyData, whichever is called first.
This prevents didSendData RKRequestDelegate method from being called before didStartLoading.

Remove goOffline and goOnline support from RKObjectManager. This did not work in the current implementation.
2011-01-12 13:20:26 -05:00
Jeff Arena
d3a1059d68 fix bug with content type accessors in cases where the content type response header is nil 2011-01-10 16:10:30 -08:00
Jeff Arena
88489747e8 add additional response convenience method for checking for a 503 response code; quiet a compiler warning regarding depracated client class method; add default support for generating a uialertview when restkit encounters a 503 response; added ability to turn 503 error on/off, as well as ability to customize the alert 2011-01-06 11:55:43 -08:00
Jeff Arena
716ecb4f26 added RKResponse property exposing the cookies available from the RKResponse headers 2010-12-30 13:29:11 -08:00
Jeff Arena
df62bce0dd add unauthorized convenience method on rkresponse 2010-12-29 17:04:37 -08:00
Jeff Arena
c9ba879937 removed duplicate delegates on RKObjectLoader; inverted control for communicating request completion from RKResponse to RKRequest; added state tracking to RKRequest for loaded and loading states; changed queue processing logic to check request states before firing new requests; removed retains of RKObjectLoader from RKRequestTTModel since our queue is handling retains for all asynchronous RKRequest flavors; added separate state tracking to RKRequestTTModel since there are subtle differences between the meaning of loaded/loading in Three20 versus our RKRequest states; removed delegate forwarding code from RKObjectLoader since it is no longer an RKRequestDelegate (which was quite ugly to begin with); removed unnecessary error contructor for RKResponse that was only being used to fire delegate callbacks when an RKRequest failed to fire in offline mode; added TODOs to deep-dive into synchronous request handling 2010-12-02 13:22:38 -08:00
Jeff Arena
6249ece2bc Merge branch 'reachability-queue-three20' of git://github.com/twotoasters/RestKit into reachability-queue-three20
Conflicts:
	Code/Network/RKRequest.m
	RestKit.xcodeproj/project.pbxproj
2010-12-01 21:06:54 -08:00
Blake Watters
a53f28e339 First cut at queue support. 2010-12-01 14:56:16 -05:00
Jeff Arena
39f3d568e2 added reachability support at the manager and client level; added code to short circuit requests if offline; fixed issue with source parameter on loader related to passing managed objects across thread boundaries; added resource path property to the loader 2010-11-30 19:38:27 -08:00
Blake Watters
0127df862d Added support for tracking upload progress 2010-10-26 14:05:29 -04:00