Пример #1
0
 /**
  * respond with document if non json mime-type is requested
  *
  * @param Request $request Current http request
  * @param string  $id      id of file
  *
  * @return Response
  */
 public function getAction(Request $request, $id)
 {
     $accept = $request->headers->get('accept');
     if (substr(strtolower($accept), 0, 16) === 'application/json') {
         return parent::getAction($request, $id);
     }
     $response = $this->getResponse();
     if (!$this->fileManager->has($id)) {
         $response->setStatusCode(Response::HTTP_NOT_FOUND);
         return $response;
     }
     $record = $this->findRecord($id);
     $data = $this->fileManager->read($id);
     $response->setStatusCode(Response::HTTP_OK);
     $response->headers->set('Content-Type', $record->getMetadata()->getMime());
     return $this->render('GravitonFileBundle:File:index.raw.twig', ['data' => $data], $response);
 }
Пример #2
0
 /**
  * Verifies the correct behavior of read method
  *
  * @return void
  */
 public function testRead()
 {
     $this->fileSystem->expects($this->once())->method('read')->willReturn('myData');
     $manager = new FileManager($this->fileSystem, $this->fileDocumentFactory);
     $this->assertEquals('myData', $manager->read('myKey'));
 }