Commit Graph

236 Commits

Author SHA1 Message Date
Jeff Arena
c0cd23a14d Add setBody:forMIMEType: method to RKRequest. Fixes #227. 2012-01-20 14:09:25 -05:00
Jeff Arena
37f40d0d3a Add cacheTimeoutInterval as a settable property on RKClient and allow RKRequests to inherit the RKClient value when appropriate. Fixes #217 2012-01-20 12:40:50 -05:00
Jeff Arena
53ce2260bd Fixes #428, related to a misspelling in the request:didReceiveData:totalBytesReceived:totalBytesExpectedToReceive: 2012-01-20 12:13:40 -05:00
Jeff Arena
507dfb0cfe Copy our requestQueue array prior to fast enumeration to ensure no mutations of the underlying array occur while we are looping 2012-01-20 11:52:37 -05:00
Jeff Arena
6e80ae62ae Fix for #486 2012-01-20 11:45:04 -05:00
Blake Watters
5a92a661a8 Fix spelling errors for Cacheing -> Caching 2012-01-20 10:21:56 -05:00
Blake Watters
1d27f7bbbe Refactored object manager API's to de-emphasize delegates and removal duplication of blocks and delegates. Added block callbacks to RKObjectLoader. 2012-01-20 10:21:56 -05:00
Blake Watters
7c5ad95816 Updated all example projects to reflect changes. 2012-01-20 10:21:19 -05:00
Blake Watters
31dcb31188 Authored full documentation for the RKURL class 2012-01-20 10:21:18 -05:00
Blake Watters
89b02e7550 Refactored paginator to use RKURL rather than relying on its own baseURL and resource path. Expanded paginator documentation. 2012-01-20 10:21:18 -05:00
Blake Watters
415ef5a193 Cleaned up all broken specs related to RKObjectPaginator and RKURL changes 2012-01-20 10:21:18 -05:00
Blake Watters
412b0f9756 Work in progress on cleanup 2012-01-20 10:21:18 -05:00
Blake Watters
fb41eb73ec Work in progress on responsibility cleanup 2012-01-20 10:21:18 -05:00
Brian Morton
90716335f5 Add support for timing out an RKRequest via a timeoutTimer and a timeout property.
* Add timeoutInterval property on RKRequest with a default value of 120.0
* Add timeout method that is called by the timer when the timeout interval has been exceeded to cancel the request and return an error via didFailLoadWithError:
* Add invalidateTimeoutTimer method that is called by RKResponse when the NSURLConnection begins receiving data.
* Add call to invalidateTimeoutTimer in RKRequest cancelAndInformDelegate: so we don't have a dangling timer.
* Add timer creation to sendAsynchronously and sendSynchronously
2012-01-20 09:19:45 -05:00
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
8946f4d702 Add timeoutInterval property to RKClient so that it can be passed on to RKRequest. 2012-01-20 09:17:16 -05:00
Brian Morton
dab403a9c1 Responsibly invalidate the timeoutTimer when the RKRequest is deallocated. Move location of timer creation for asynchronous request. 2012-01-20 09:17:00 -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
Ray Fix
7be7da61cb Fix for ocassional crashes using http basic auth 2012-01-09 20:10:39 -05:00
David Young-Chan Kay
6a18ebd91b RKRequest: Added null check for HTTP Basic username and password. Closes #493. 2012-01-09 20:08:26 -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
af7a7d22b6 Lowered logging level for body from Info to Debug 2011-12-15 13:41:00 -05:00
Blake Watters
e5e05a0563 Added delegate callback when authentication challenge fails. closes #462 2011-12-13 21:16:30 -05:00
Blake Watters
4f24470d13 Merge pull request #465 from rayfix/url-encoding-fix
Encoded params from RKURLs getting extra 25's.
2011-12-13 15:02:37 -08: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
Ray Fix
21c3b6af39 Fix static analayzer warning for uninitialized variable 2011-12-13 15:33:14 -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
Ray Fix
7eaa0bccfe Fix test failure. Encoded URLs getting extra 25's. 2011-12-09 18:18:08 -08:00
Blake Watters
4a45a15da1 Fixed nearly all broken tests for OS X target 2011-12-09 00:30:34 -05: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
563f5e909b Updated all example projects to build against the new project. Cleaned up header imports for flattened project structure 2011-12-02 09:26:36 -05:00
Blake Watters
f5008ff9fe Cleaned up broken specs for iOS. 2011-12-02 09:26:35 -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
Michael Fleet
6391e5083a Fixed bug where escaped spaces (%20) in URLs were stripped by [NSURL path] and not restored, causing request failures. 2011-12-01 11:41:28 -05:00
Tony Lee
a5661061ec The OAuth use correct parameters to make signature for HTTP PUT/POST. 2011-11-10 17:29:27 +08:00
Blake Watters
fd80eae643 Reworked reachability initialization to support usage when there is no Internet connectivity.
* When the reachabilityObserver property of RKClient is nil, assume we have reachability
* When the baseURL configured contains an IP address or localhost, use hostname based reachability
* Else fall through to using Internet reachability if the user has not configured an observer directly
2011-11-09 08:17:46 -05:00
Blake Watters
dad00a4f6f Fix typo 'current' => 'concurrent' 2011-11-04 11:28:54 -03:00
Blake Watters
6ebe3c2431 Add missing comma in reachabilityFlagsDescription for OS X build 2011-10-24 23:35:50 -03:00
Blake Watters
a3d15d8e0d Add missing scheduleObserver call in initWithAddress: refs #408 2011-10-20 11:58:21 -04:00
Blake Watters
a863da18ec Revert "Use run loop instead of dispatch queue as unscheduling via NULL queue is triggering errors. refs #408"
This reverts commit fa6cff8221.
2011-10-20 11:55:00 -04:00
Blake Watters
fa6cff8221 Use run loop instead of dispatch queue as unscheduling via NULL queue is triggering errors. refs #408 2011-10-20 11:40:56 -04:00
Blake Watters
d75fd7d0b0 Refactored RKReachabilityObserver to work around issues with iOS 5 + host reachability and expand its capabilities. closes #408
* Added support for monitoring by IP address or hostname as well as local Wifi and Internet access generally
* Eliminated usage of synchronous calls to obtain reachability flags during status checks
* Reworked SystemConfiguration reachability callback to cache flags
* RKClient now monitors Internet access instead of hostname based reachability by default. baseURLReachabilityObserver eliminated in favor of reachabilityObserver. It is now a retain property that can be customized
* Queue suspension is now tied to the reachability observer rather than baseURL mutation
2011-10-19 08:51:37 -04:00
Blake Watters
eb9dec5953 Replaced TDOAuth with GCOAuth. fixes #407 2011-10-18 23:51:49 -04:00
Blake Watters
585d4aafc8 Implemented MIMETypeForPathExtension for NSURL and NSString. refs #409
Refactored duplicated code for returning the MIME Type based on file path extension using
Core Services UTI.
2011-10-16 02:06:58 -04:00
Brad Phelan
d6e26a6f9d Implemented support for URL encoding an array of dictionaries. fixes #391
For example the following dict

	terms (
        {
        lhs = "blood_glucose_measurement";
        op = gt;
        rhs = 10;
    	}
	)

should generate the following URL encoded string

	type=or&terms[][lhs]=blood_glucose_measurement&terms[][op]=gt&terms[][rhs]=10
2011-10-14 08:52:25 -04:00
Ivan Vučica
33b663a3cf Fixed building on OS X. 2011-10-13 15:43:47 +02:00