@@ -49,18 +49,43 @@ public function __construct(
49
49
*/
50
50
public function process (ServerRequestInterface $ request , DelegateInterface $ delegate )
51
51
{
52
- $ requestIdProvider = $ this ->requestIdProviderFactory ->create ($ request );
53
- $ this ->requestId = $ requestIdProvider ->getRequestId ();
54
- $ requestWithAttribute = $ request ->withAttribute (self ::ATTRIBUTE_NAME , $ this ->requestId );
52
+ $ requestWithAttribute = $ this ->attachRequestIdToAttribute ($ request );
55
53
56
54
$ response = $ delegate ->process ($ requestWithAttribute );
57
55
58
- if (is_string ( $ this ->responseHeader )) {
59
- return $ response -> withHeader ( $ this -> responseHeader , $ this -> requestId );
56
+ if ($ this ->canAttachToResponse ( )) {
57
+ return $ this -> attachRequestIdToResponse ( $ response );
60
58
}
61
59
return $ response ;
62
60
}
63
61
62
+ /**
63
+ * @return ResponseInterface
64
+ */
65
+ private function attachRequestIdToAttribute (ServerRequestInterface $ request )
66
+ {
67
+ $ requestIdProvider = $ this ->requestIdProviderFactory ->create ($ request );
68
+ $ this ->requestId = $ requestIdProvider ->getRequestId ();
69
+
70
+ return $ request ->withAttribute (self ::ATTRIBUTE_NAME , $ this ->requestId );
71
+ }
72
+
73
+ /**
74
+ * @return ResponseInterface
75
+ */
76
+ private function attachRequestIdToResponse (ResponseInterface $ response )
77
+ {
78
+ return $ response ->withHeader ($ this ->responseHeader , $ this ->requestId );
79
+ }
80
+
81
+ /**
82
+ * @return bool
83
+ */
84
+ private function canAttachToResponse ()
85
+ {
86
+ return is_string ($ this ->responseHeader ) && !empty ($ this ->responseHeader );
87
+ }
88
+
64
89
/**
65
90
* @return mixed
66
91
*
0 commit comments