Issue #267: Inject PSR http client into BigBlueButton class, instead of using curl#273
Issue #267: Inject PSR http client into BigBlueButton class, instead of using curl#273donquixote wants to merge 8 commits intobigbluebutton:developfrom
Conversation
|
For cookies, see: @GhaziTriki Let me know if we should follow up in the direction of this PR, or do things differently. Obviously this cannot be merged as-is. |
|
@donquixote looks good so far. Let's continue this pathway, and everything should be clear with an example once the implementation is finished. We need a default transport or auto-discovery when not explicitly set. |
src/BigBlueButton.php
Outdated
| /** | ||
| * Sets curl options. | ||
| * | ||
| * This has no effect if the instance has a http client. |
There was a problem hiding this comment.
I think this would be "an http client"..
| * This has no effect if the instance has a http client. | |
| * This has no effect if the instance has an http client. |
and same for other similar places.
| RequestFactoryInterface $requestFactory, | ||
| StreamFactoryInterface $streamFactory, | ||
| string $baseUrl, | ||
| string $secret, |
There was a problem hiding this comment.
Should we have the UrlBuilder injected instead of passing base url and secret?
Not sure what you mean by this. The fallback to env vars as in the constructor? The main purpose of this package (I think) is to be pulled in as a dependency to be used by other code. |
|
@GhaziTriki I think eventually we want to be able to inject the UrlBuilder. I think it is better to discuss this separately, see |
| * | ||
| * @internal | ||
| */ | ||
| class BigBlueButtonGuzzleTest extends BigBlueButtonTest |
There was a problem hiding this comment.
This is a cheap way to run the same tests with curl and with a http client.
In the future we may come up with something better, perhaps.
5501e2c to
44aafe1
Compare
…ility of the client.
|
Hi @donquixote, |
See
This probably won't work. Just a preview prototype to see the general idea.
I would like to split the class, so that the version with a http client does not have methods like
->setTimeOut()that have no effect. We could use a shared base class for that.