Michael Dowling
e3182afcda
Waiting on deep futuress when necessary to deal with retries.
...
This commit updates the request FSM to resolve deep futures to
ensure that retried synchronous requests are waited on correctly
and produce side-effects when expected. Previously the results of a
retried request were not being properly brought up to the outermost
layer when a client was attempting to dereference a future because the
request was not a future request.
Adding a way to get the number of retries to events
2014-12-19 10:59:24 -08:00
Michael Dowling
9fc544db12
Fixing error and end events for network errors.
...
When a networking error occurs, the future response that is created
for the transaction does not receive an exception until after the
future is waited on. When calling getResponse() in an event that
is emitted after a networking error, the response returned will
be a future with no actual data to use and throws when accessed.
This commit updated these events to return null if the response
of the transaction is a future. In these cases, it means that the
response did not complete successfully. I've also added a new method
to make this more explicit: hasResponse().
Closes #867 .
2014-10-16 10:42:50 -07:00
Michael Dowling
fa8f06609a
Merge branch 'ring' into 5-0
...
Conflicts:
src/Adapter/Curl/CurlAdapter.php
src/Adapter/Curl/CurlFactory.php
src/Adapter/Curl/MultiAdapter.php
src/Adapter/MockAdapter.php
src/Adapter/StreamAdapter.php
src/Event/HeadersEvent.php
tests/Adapter/Curl/CurlAdapterTest.php
tests/Adapter/Curl/CurlFactoryTest.php
tests/Adapter/Curl/MultiAdapterTest.php
tests/Adapter/Curl/RequestMediatorTest.php
tests/Adapter/FakeParallelAdapterTest.php
tests/Adapter/MockAdapterTest.php
tests/Adapter/StreamAdapterTest.php
tests/Adapter/StreamingProxyAdapterTest.php
tests/Adapter/TransactionIteratorTest.php
2014-10-12 19:47:31 -07:00
Michael Dowling
eaaf949638
removing request "cancellation"
2014-10-06 17:34:56 -07:00
Michael Dowling
6d1cf961a5
Getting most of the tests passing
2014-10-05 16:37:25 -07:00
Michael Dowling
5251f1067d
Performance and updating to latest changes
...
Removing double-dispatch from MessageFactory and using a switch.
2014-10-05 00:11:40 -07:00
Michael Dowling
311122efa5
Fixing cancellation and some tests
2014-10-04 12:16:39 -07:00
Michael Dowling
de780704e1
React promises
2014-10-02 00:42:11 -07:00
Graham Campbell
51c641b191
CS fixes
2014-10-01 22:07:32 +01:00
Michael Dowling
175fbc8023
Updating to use interface changes
2014-09-30 10:52:33 -07:00
Michael Dowling
8239d99b16
Adding an afterDelay param to retry
2014-09-21 20:47:47 -07:00
Michael Dowling
931d47b3e0
Adding tests, adding retry to FSM, fixing History, fixing Redirects.
2014-09-21 18:39:23 -07:00
Michael Dowling
8441a7dafe
Updating tests
2014-09-21 14:09:04 -07:00
Michael Dowling
0337b7848a
Adding a RingBridge for better separation
2014-09-17 14:21:40 -07:00
Michael Dowling
8fdbeac09c
Do not realize future responses immediately when injected into an event. Allows for Mocks to use futures
2014-09-15 15:27:03 -07:00
Michael Dowling
cee099a079
Moving batch to Pool. Updating docs. Removing throwImmediately
2014-09-14 12:27:53 -07:00
Michael Dowling
52a8595c76
Adding missing coverage
2014-09-12 14:47:15 -07:00
Michael Dowling
15defe7bec
Rounding out test coverage
2014-09-08 21:35:11 -07:00
Michael Dowling
e4b1486fd9
Adding more test coverage
2014-09-08 21:35:11 -07:00
Michael Dowling
668209c895
Getting tests working again. Removing more fluent interfaces.
...
Removing more fluent interfaces to make it easier to decorate
classes.
2014-09-08 21:35:11 -07:00
Michael Dowling
e5f0b6b84d
Added the ability to throw exceptions immediately.
...
Closes #760
2014-08-17 16:21:32 -07:00
Michael Dowling
fbf2bf6dbd
Allowing mulitple event subscriber listeners to be registered per event name
2014-08-02 15:35:17 -07:00
Michael Dowling
11810f6895
Fixing an issue with generating event arrays and adding missing tests
2014-07-14 16:34:23 -07:00
Jeremy Lindblom
a0146ced57
Extracted the event/listener management portion of the TransactionIterator into a trait.
2014-04-30 13:46:07 -07:00
Michael Dowling
85422b5bd5
Adding shims that emit deprecations for the really common event method names
2014-03-12 13:44:27 -07:00
Michael Dowling
32f7bb8ba0
Adding first and last dynamic event priorities
2014-03-09 20:54:03 -07:00
Michael Dowling
e32d850a99
Cleaning up the EventEmitter
...
- Changed GuzzleHttp\Event\SubscriberInterface::getSubscribedEvents from a
static method to an instance method.
- Renamed addSubscriber to attach.
- Renamed removeSubscriber to detach.
2014-03-07 10:14:17 -08:00
Michael Dowling
368191d72c
Ensuring a response is set in headers event
2014-03-02 21:33:09 -08:00
Michael Dowling
2b2ee1bb95
Hardening the event system for the before and error event so that events are not emitted twice that are encountered during the before event
2014-03-02 12:12:59 -08:00
Michael Dowling
c23935ee82
Shortening event name
2014-03-01 10:19:55 -08:00
Michael Dowling
7bced1367e
Renaming Event\\Event to Event\\AbstractEvent
2014-02-16 23:32:33 -08:00
Michael Dowling
89a8e2ede1
Using PSR-4 and moving namespace from Guzzle to GuzzleHttp
...
- Moving various namespaces up a level
- Updating docs
- Renaming EventSubscriberInterface to SubscriberInterface
2014-02-16 20:42:45 -08:00