Commit Graph

63 Commits

Author SHA1 Message Date
Zach Borboa de1869b3ee Return boolean when calling setCookieFile() and setCookieJar() 2016-12-15 03:53:47 -08:00
Zach Borboa 5cb8223c47 Fix #400: Use sequential ids to allow for ordered post processing 2016-10-14 19:50:57 -07:00
Zach Borboa 97b24c65fa Return curl instance when calling MultiCurl::addCurl() like other MultiCurl::add*() methods 2016-10-12 08:24:45 -07:00
Kai Hempel e087f51c61 Add a curl add method for direct handle attach 2016-10-11 17:13:32 +02:00
Zach Borboa ecdfa174cb Rename setURL to setUrl 2016-09-27 00:24:22 -07:00
Zach Borboa bfc868fab4 Remove foreach loops 2016-09-24 01:22:44 -07:00
Zach Borboa 36ad0e4ecf Implement setHeaders() 2016-09-24 01:15:27 -07:00
Zach Borboa 90b17385f6 Implement removeHeader(); unsetHeader now unsets existing header
removeHeader() removes an internal request header.
unsetHeader() now removes an extra header previously set using setHeader().
2016-09-24 00:09:55 -07:00
Zach Borboa f4fffbc486 Add ability to set the number of concurrent requests 2016-09-04 20:54:57 -07:00
Zach Borboa 35fbade352 Rename windowSize to concurrency 2016-09-04 20:50:01 -07:00
Zach Borboa e77f853ab6 Make windowSize private 2016-09-04 20:48:41 -07:00
Zach Borboa 67e7992386 Clean up 2016-09-04 01:45:03 -07:00
Zach Borboa c2d04221e7 Add MultiCurl::setPort() 2016-09-04 01:19:27 -07:00
Zach Borboa 35ac500e03 Improve cookie handling for multicurl requests.
Fix Curl::responseCookies set in headerCallback() being overwritten during multicurl request.
Use rfc cookie encoding when using MultiCurl::setCookie().
Make MultiCurl::responseCookies publicly accessible.
2016-09-04 01:12:06 -07:00
Zach Borboa 21134e119e Add MultiCurl::setOpts() 2016-09-04 00:07:31 -07:00
Zach Borboa 82b64c2290 Add MultiCurl::setConnectTimeout() 2016-09-03 23:19:42 -07:00
Zach Borboa c634e65a19 Add MultiCurl::setCookieString() 2016-09-03 23:18:22 -07:00
Zach Borboa 946f4a74a1 Fix undefined index when option not set for MultiCurl::getOpt() 2016-09-03 23:06:25 -07:00
Zach Borboa 3789e2077b Implement a more efficient handling of requests in parallel.
A window size is now used to set the maximum number of active requests at any given time. Each time a request is
completed, a new request is added from the queue until all requests are processed. The result is a more continuous
stream of requests rather than a burst of requests that may cause servers to quickly become overloaded.
2016-09-02 03:57:53 -07:00
Zach Borboa b907159c2f Move download complete handling to Curl::exec() 2016-09-02 01:30:16 -07:00
Zach Borboa e55c556601 Refactor for queuing 2016-09-02 01:09:23 -07:00
Zach Borboa 75a944dd90 Clean up 2016-09-02 00:43:41 -07:00
Zach Borboa 6e636f02c8 Add warning against using error code from curl_errno() for multi handles 2016-08-31 23:31:32 -07:00
Zach Borboa 1edc13b5eb Clean up docblocks 2016-08-29 23:05:01 -07:00
Zach Borboa 39c21041a5 Clean up per PSR2 2016-08-24 00:25:38 -07:00
Zach Borboa a2918325ae Fix "Too many open files" error when adding hundreds of downloads using MultiCurl:addDownload() 2016-08-15 23:41:46 -07:00
Zach Borboa 58a6568cab Return immediately when already multicurl has already started 2016-08-15 00:39:26 -07:00
Zach Borboa ea7e649308 Set content-length header when it can be determined 2016-08-11 20:47:47 -07:00
Gor Martsen 4f16a605aa Add Search request 2016-08-11 11:54:18 -04:00
Zach Borboa 8f2b878237 Clean up spacing 2016-08-10 02:46:38 -07:00
Zach Borboa 25d9304672 Add output parameter to MultiCurl::verbose 2016-07-04 11:34:52 -07:00
Zach Borboa 74f9d0fa37 Update parameter names to match for Curl::post() and MultiCurl::addPost() 2016-07-04 11:11:54 -07:00
Cyrille Faucheux dc6001688f Support post-redirect-get requests 2016-03-05 13:45:25 +01:00
Zach Borboa ebca4c2c19 Add MultiCurl::setXmlDecoder 2016-01-31 10:53:32 -08:00
Zach Borboa ebf406c14a Fix #170: Allow setting MultiCurl callbacks after requests are added 2016-01-23 12:08:33 -08:00
Zach Borboa e70228cff9 Fix #248: Close MultiCurl resource only when still open 2015-09-18 01:14:51 -07:00
Zach Borboa 2df98d1708 Add test for adding Multicurl handles after calling start() 2015-08-19 08:47:50 -07:00
Julian Esperat b3d25c8b3c Allow adding Multicurl handles again after start() 2015-08-19 10:55:58 +02:00
Zach Borboa 290c178516 Fix typo 2015-08-11 17:08:40 -07:00
Vladimir Chernyshev 8e5de8c2fd Update MultiCurl.php
Add setDigestAuthentication
2015-08-11 13:25:36 +03:00
Zach Borboa 8d701b0648 Fix #191: Use $camelCase for properties (class member variables) 2015-07-30 23:54:03 -07:00
Zach Borboa b7f1ebbea3 Add docblock @throws 2015-05-07 02:40:21 -07:00
Zach Borboa 234d2bc5ae Add docblocks 2015-04-24 01:43:07 -07:00
Zach Borboa 70be5e4eb3 Fix #171: Allow sending body data in delete() 2015-04-22 01:18:48 -07:00
Zach Borboa 7f903ce06b Update parameter names for delete() 2015-04-22 00:13:15 -07:00
Zach Borboa 2a103613a6 Clean up 2015-04-09 10:32:55 -07:00
Zach Borboa 34d2b95d01 Move download complete to unified method 2015-04-01 10:38:37 -07:00
Zach Borboa d279e4b598 Fix curl file handle not being correctly unset; Clean up 2015-04-01 09:58:21 -07:00
Zach Borboa cac457a562 Allow setting the base url for requests in the constructor (MultiCurl::__construct($base_url = null)) 2015-03-03 22:26:02 +07:00
Zach Borboa 20ee312a10 Add ability to specify a callback for MultiCurl::download() 2015-02-25 01:24:38 +07:00