Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ This package is compatible with PHP 5.6+.

## How to install it ?

Todo: Composer via packagist
composer require 202ecommerce/bridge-sdk

To use this package with php 5.6 or in production mode, please install this dependency with :

Expand Down
Binary file removed bridgesdk.zip
Binary file not shown.
3 changes: 0 additions & 3 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,6 @@
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^3.4",
"psr/log": "^1.0",
"psr/http-message": "^1.0",
"psr/cache": "^1.0.0",
"phpunit/phpunit": "^9.0",
"phpstan/phpstan": "^0.12.81"
},
Expand Down
Binary file removed gitrepo.zip
Binary file not shown.
44 changes: 24 additions & 20 deletions src/Client.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,6 @@
use BridgeSDK\Response\WebhookResponse;
use InvalidArgumentException;
use Logger\NullLogger;
use Psr\Http\Message\RequestInterface;
use Psr\Log\LoggerInterface;
use RuntimeException;
use UnexpectedValueException;

Expand All @@ -48,7 +46,7 @@ class Client
protected $options;

/**
* @var LoggerInterface
* @var mixed
*/
protected $logger;

Expand Down Expand Up @@ -89,13 +87,16 @@ public function __construct()
}

/**
* Send a PSR-7 Request.
* Send a Request
*
* @return AbstractResponse
* @param AbstractRequest $request
* @param mixed $additionnalHeaders
*
* @return Response\AbstractResponse
*
* @throws RequestException Invalid request
* @throws RequestException Invalid request
* @throws InvalidArgumentException Invalid header names and/or values
* @throws RuntimeException Failure to create stream
* @throws RuntimeException Failure to create stream
*/
public function sendRequest(AbstractRequest $request)
{
Expand Down Expand Up @@ -217,7 +218,7 @@ public function setVersion($version)
}

/**
* @param LoggerInterface $logger
* @param mixed $logger
*
* @return Client
*/
Expand Down Expand Up @@ -261,14 +262,14 @@ protected function createResponse($request)
}

/**
* Create array of headers to pass to CURLOPT_HTTPHEADER.
* Create array of headers to pass to CURLOPT_HTTPHEADER
*
* @param RequestInterface $request Request object
* @param array<mixed> $options cURL options
* @param AbstractRequest $request Request object
* @param array<mixed> $options cURL options
*
* @return array<mixed> Array of http header lines
*/
protected function createHeaders(RequestInterface $request, array $options)
protected function createHeaders(AbstractRequest $request, array $options)
{
$headers = [];
$request_headers = $request->getHeaders();
Expand Down Expand Up @@ -303,15 +304,18 @@ protected function createHeaders(RequestInterface $request, array $options)
}

/**
* Create cURL request options.
* Create cURL request options
*
* @param AbstractRequest $request
* @param ResponseBuilder $response
*
* @return array<mixed> cURL options
*
* @throws RequestException Invalid request
* @throws RequestException Invalid request
* @throws InvalidArgumentException Invalid header names and/or values
* @throws RuntimeException Unable to read request body
* @throws RuntimeException Unable to read request body
*/
protected function createOptions(RequestInterface $request, ResponseBuilder $response)
protected function createOptions(AbstractRequest $request, ResponseBuilder $response)
{
$options = $this->options;

Expand Down Expand Up @@ -363,14 +367,14 @@ protected function createOptions(RequestInterface $request, ResponseBuilder $res
}

/**
* Add cURL options related to the request body.
* Add cURL options related to the request body
*
* @param RequestInterface $request Request object
* @param array<mixed> $options cURL options
* @param AbstractRequest $request Request object
* @param array<mixed> $options cURL options
*
* @return mixed
*/
protected function addRequestBodyOptions(RequestInterface $request, array $options)
protected function addRequestBodyOptions(AbstractRequest $request, array $options)
{
/*
* HTTP methods that cannot have payload:
Expand Down
24 changes: 12 additions & 12 deletions src/Exception/RequestException.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,42 +15,42 @@

namespace BridgeSDK\Exception;

use BridgeSDK\Request\AbstractRequest;
use Exception;
use Psr\Http\Message\RequestInterface;
use RuntimeException;

/**
* Request Exception.
* Request Exception
*
* Failed http request exception class
*/
class RequestException extends RuntimeException
{
/**
* Request object.
* Request object
*
* @var RequestInterface
* @var AbstractRequest
*/
private $request;

/**
* Create request exception object.
* Create request exception object
*
* @param string $message Exception message
* @param RequestInterface $request Request object
* @param null|\Exception $lastException Previous exception object
* @param string $message Exception message
* @param AbstractRequest $request Request object
* @param \Exception|null $last_exception Previous exception object
*/
public function __construct($message, RequestInterface $request, Exception $lastException = null)
public function __construct($message, AbstractRequest $request, ?Exception $last_exception)
{
$this->request = $request;

parent::__construct($message, 0, $lastException);
parent::__construct($message, 0, $last_exception);
}

/**
* Get the request object.
* Get the request object
*
* @return RequestInterface
* @return AbstractRequest
*/
public function getRequest()
{
Expand Down
4 changes: 1 addition & 3 deletions src/Logger/NullLogger.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,7 @@

namespace Logger;

use Psr\Log\LoggerInterface;

class NullLogger implements LoggerInterface
class NullLogger
{
public function emergency($message, array $context = [])
{
Expand Down
3 changes: 1 addition & 2 deletions src/Request/AbstractRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,11 @@
use BridgeSDK\Stream;
use BridgeSDK\Uri\ApiUri;
use JsonSerializable;
use Psr\Http\Message\RequestInterface;

/**
* API client.
*/
abstract class AbstractRequest implements RequestInterface, JsonSerializable
abstract class AbstractRequest implements JsonSerializable
{
use MessageTrait;
use RequestTrait;
Expand Down
5 changes: 2 additions & 3 deletions src/Request/MessageTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
namespace BridgeSDK\Request;

use BridgeSDK\Stream;
use Psr\Http\Message\StreamInterface;

/**
* Trait implementing functionality common to requests and responses.
Expand All @@ -38,7 +37,7 @@ trait MessageTrait
/** @var string */
protected $protocol = '1.1';

/** @var null|StreamInterface */
/** @var null|Stream */
protected $stream;

/**
Expand Down Expand Up @@ -184,7 +183,7 @@ public function getBody()
/**
* @inherit
*/
public function withBody(StreamInterface $body)
public function withBody(Stream $body)
{
if ($body === $this->stream) {
return $this;
Expand Down
6 changes: 2 additions & 4 deletions src/Request/RequestTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@

namespace BridgeSDK\Request;

use Psr\Http\Message\UriInterface;

/**
* @internal should not be used outside of BridgeSDK as it does not fall under our BC promise
*/
Expand All @@ -28,7 +26,7 @@ trait RequestTrait
/** @var null|string */
protected $requestTarget;

/** @var UriInterface */
/** @var array|mixed|void|bool|null */
protected $uri;

public function getRequestTarget()
Expand Down Expand Up @@ -81,7 +79,7 @@ public function getUri()
return $this->uri;
}

public function withUri(UriInterface $uri, $preserveHost = false)
public function withUri($uri, $preserveHost = false)
{
if ($uri === $this->uri) {
return $this;
Expand Down
Loading
Loading