Пример #1
0
 /**
  * @param BreadCrumb[] $crumbs
  * @return BreadCrumb[]
  */
 private function saveCrumbs($crumbs)
 {
     $this->cookies->write(new Cookie(array_map(function (BreadCrumb $crumb) {
         return ['caption' => $crumb->getCaption(), 'target' => $crumb->getTarget()];
     }, $crumbs)), self::COOKIE_KEY);
     return $crumbs;
 }
Пример #2
0
 /**
  * @param WebResponse|mixed $response
  * @throws \Exception if $response is not a WebResponse
  * @return null
  */
 public function deliver($response)
 {
     if ($response instanceof WebResponse) {
         if ($response->getStatus()) {
             header('HTTP/1.1 ' . $response->getStatus());
         }
         foreach ($response->getHeaders() as $header => $value) {
             if (!is_null($value)) {
                 header($header . ': ' . $value);
             }
         }
     }
     $this->cookies->applyCookies('setcookie');
     echo $response;
 }
Пример #3
0
 protected function readBreadcrumbs()
 {
     if ($this->cookies->hasKey(self::BREADCRUMB_COOKIE)) {
         return $this->cookies->read(self::BREADCRUMB_COOKIE)->payload;
     }
     return [];
 }
Пример #4
0
 private function resetBreadCrumbs()
 {
     $this->cookies->create(new Cookie([]), ExecuteResource::BREADCRUMB_COOKIE);
 }
Пример #5
0
 private function saveCrumbs($crumbs)
 {
     $this->cookies->create(new Cookie($crumbs), self::BREADCRUMB_COOKIE);
 }
Пример #6
0
 private function givenThereAreNoSavedCrumbs()
 {
     Mockster::stub($this->cookies->hasKey(ExecuteResource::BREADCRUMB_COOKIE))->will()->return_(false);
 }
Пример #7
0
 private function thenAllKeysShouldBe($array)
 {
     $this->assertEquals($array, $this->store->keys());
 }