55 */
66namespace Embed \Providers ;
77
8- use Embed \Url ;
98use Embed \Request ;
109
1110class OEmbedImplementations extends Provider
1211{
1312 /**
1413 * Creates a new OEmbed instance
1514 *
16- * @param Url $url
15+ * @param Request $request
1716 *
1817 * @return null|OEmbed
1918 */
20- public static function create (Url $ url , array $ extraParameters = array ())
19+ public static function create (Request $ request , array $ extraParameters = array ())
2120 {
2221 //Search the oembed provider using the domain
23- $ class = 'Embed \\Providers \\OEmbed \\' .str_replace (' ' , '' , ucwords (strtolower (str_replace ('- ' , ' ' , $ url ->getDomain ()))));
22+ $ class = 'Embed \\Providers \\OEmbed \\' .str_replace (' ' , '' , ucwords (strtolower (str_replace ('- ' , ' ' , $ request -> url ->getDomain ()))));
2423
2524 if (class_exists ($ class )) {
2625 $ settings = array (
@@ -29,18 +28,18 @@ public static function create(Url $url, array $extraParameters = array())
2928 'params ' => $ class ::getParams (),
3029 );
3130
32- if ($ url ->match ($ settings ['patterns ' ])) {
33- $ endPoint = new Request ($ settings ['endPoint ' ]);
31+ if ($ request ->match ($ settings ['patterns ' ])) {
32+ $ endPoint = $ request -> createSubRequest ($ settings ['endPoint ' ]);
3433
3534 if ($ extraParameters ) {
36- $ endPoint ->setParameter ($ extraParameters );
35+ $ endPoint ->url -> setParameter ($ extraParameters );
3736 }
3837
3938 if (empty ($ settings ['params ' ]) === false ) {
40- $ endPoint ->setParameter ($ settings ['params ' ]);
39+ $ endPoint ->url -> setParameter ($ settings ['params ' ]);
4140 }
4241
43- $ endPoint ->setParameter ('url ' , $ url ->getUrl ());
42+ $ endPoint ->url -> setParameter ('url ' , $ request ->getUrl ());
4443
4544 return new OEmbed ($ endPoint );
4645 }
0 commit comments