Skip to content

Commit f01c592

Browse files
author
JCManzo
authored
Merge pull request #4 from vimeo/event-cleanup
Event cleanup
2 parents 7c02f59 + c23af9a commit f01c592

File tree

7 files changed

+17
-29
lines changed

7 files changed

+17
-29
lines changed

README.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@ These events are dispatched via the HTTP client's `EventDispatcherInterface`.
44
For example in the gateway's `sendData()` methods we can do:
55

66
```PHP
7-
$request_name; // The name of the API endpoint being called
87
$event_dispatcher = $this->httpClient->getEventDispatcher();
9-
$event_dispatcher->dispatch(Constants::OMNIPAY_REQUEST_BEFORE_SEND, new RequestEvent($request, $request_name));
8+
$event_dispatcher->dispatch(Constants::OMNIPAY_REQUEST_BEFORE_SEND, new RequestEvent($request));
109
```
1110

1211
Logging Errors and Responses events can be emitted like so
1312
```PHP
14-
$event_dispatcher->dispatch(Constants::OMNIPAY_REQUEST_ERROR new ErrorEvent($exception', $request_name));
15-
$event_dispatcher->dispatch(Constants::OMNIPAY_RESPONSE_SUCCESS, new ResponseEvent($response, $request_name));
13+
$event_dispatcher->dispatch(Constants::OMNIPAY_REQUEST_ERROR new ErrorEvent($exception, $request));
14+
$event_dispatcher->dispatch(Constants::OMNIPAY_RESPONSE_SUCCESS, new ResponseEvent($response));
1615
```
1716

1817
`OmnipayGatewayRequestSubscriber.php` takes in a logger of type `LoggerInterface` which will listen to and log these events.

src/Event/Constants.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
* Class events.
77
*
88
* @package payment-gateway-logger
9-
* @author manzoj
109
* @version 1
1110
*/
1211

src/Event/ErrorEvent.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,24 @@
33
* Error event to be used by the payment gateway logger.
44
*
55
* @package payment-gateway-logger
6-
* @author manzoj
76
* @version 1
87
*/
98

109
namespace PaymentGatewayLogger\Event;
1110

1211
use Exception;
1312
use Guzzle\Common\Event;
13+
use Omnipay\Common\Message\RequestInterface;
1414

1515
class ErrorEvent extends Event
1616
{
1717
/**
1818
* @param Exception $error
19-
* @param string $request_name
19+
* @param RequestInterface $request
2020
*/
21-
public function __construct($error, $request_name)
21+
public function __construct($error, $request)
2222
{
23-
parent::__construct(array('error' => $error, 'request_name' => $request_name));
23+
parent::__construct(array('error' => $error, 'request' => $request));
2424
}
2525

2626
/**

src/Event/RequestEvent.php

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
* Request event to be used by the payment gateway logger.
44
*
55
* @package payment-gateway-logger
6-
* @author manzoj
76
* @version 1
87
*/
98

@@ -16,11 +15,10 @@ class RequestEvent extends Event
1615
{
1716
/**
1817
* @param RequestInterface $request
19-
* @param string $request_name
2018
*/
21-
public function __construct($request, $request_name)
19+
public function __construct($request)
2220
{
23-
parent::__construct(array('request' => $request, 'request_name' => $request_name));
21+
parent::__construct(array('request' => $request));
2422
}
2523

2624
/**

src/Event/ResponseEvent.php

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
* Response event to be used by the payment gateway logger.
44
*
55
* @package payment-gateway-logger
6-
* @author manzoj
76
* @version 1
87
*/
98

@@ -16,11 +15,10 @@ class ResponseEvent extends Event
1615
{
1716
/**
1817
* @param ResponseInterface $response
19-
* @param string $request_name
2018
*/
21-
public function __construct($response, $request_name)
19+
public function __construct($response)
2220
{
23-
parent::__construct(array('response' => $response, 'request_name' => $request_name));
21+
parent::__construct(array('response' => $response));
2422
}
2523

2624
/**

src/Event/Subscriber/OmnipayGatewayRequestSubscriber.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
* payment-gateway-logger
44
*
55
* @package payment-gateway-logger
6-
* @author manzoj
76
* @version 1
87
*/
98

@@ -102,7 +101,8 @@ public function onOmnipayResponseSuccess(Event $event)
102101
*
103102
* The event will be converted to an array before being logged. It will contain the following properties:
104103
* array(
105-
* 'error' => Exception
104+
* 'error' => Exception,
105+
* 'request' => \Omnipay\Common\Message\AbstractRequest
106106
* )
107107
* @param Event $event
108108
* @return void

tests/OmnipayGatewayRequestSubscriberTest.php

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
* payment-gateway-logger
2323
*
2424
* @package payment-gateway-logger
25-
* @author manzoj
2625
* @version 1
2726
*/
2827

@@ -42,11 +41,6 @@ class OmnipayGatewayRequestSubscriberTest extends TestCase
4241
*/
4342
private $logger;
4443

45-
/**
46-
* @var string
47-
*/
48-
private $requestName = 'test_request_name';
49-
5044
/**
5145
* @return void
5246
*/
@@ -73,9 +67,9 @@ public function providerLoggingEvents()
7367
/** @var Exception $exception */
7468
$exception = Mockery::mock('Exception');
7569

76-
$requestEvent = new RequestEvent($request, $this->requestName);
77-
$responseEvent = new ResponseEvent($response, $this->requestName);
78-
$errorEvent = new ErrorEvent($exception, $this->requestName);
70+
$requestEvent = new RequestEvent($request);
71+
$responseEvent = new ResponseEvent($response);
72+
$errorEvent = new ErrorEvent($exception, $request);
7973

8074
$requestRecord = array(
8175
'level' => LogLevel::INFO,
@@ -116,7 +110,6 @@ public function testLogging($event_type, $event, array $record)
116110
$this->eventDispatcher->dispatch($event_type, $event);
117111

118112
$context = $event->toArray();
119-
$this->assertEquals($this->requestName, $context['request_name']);
120113

121114
if ($record['level'] === LogLevel::INFO) {
122115
$this->assertInstanceOf('Omnipay\Common\Message\RequestInterface', $context['request']);
@@ -128,6 +121,7 @@ public function testLogging($event_type, $event, array $record)
128121
$this->assertTrue($this->logger->hasNotice($record));
129122
} else if ($record['level'] === LogLevel::ERROR) {
130123
$this->assertInstanceOf('\Exception', $context['error']);
124+
$this->assertInstanceOf('Omnipay\Common\Message\RequestInterface', $context['request']);
131125
$this->assertTrue($this->logger->hasErrorRecords());
132126
$this->assertTrue($this->logger->hasError($record));
133127
} else {

0 commit comments

Comments
 (0)