Optimized SecureCRUDManagement Draft

This commit is contained in:
Kevin Frantz
2019-01-07 21:19:20 +01:00
parent f2828e0d5e
commit 6b29c5a577
21 changed files with 271 additions and 159 deletions

View File

@@ -5,7 +5,6 @@ namespace App\Controller\API;
use App\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
use App\Domain\SecureCRUDManagement\SecureCRUDFactoryService;
/**
* @author kevinfrantz
@@ -21,7 +20,7 @@ abstract class AbstractAPIController extends AbstractController
*
* @return Response
*/
abstract public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response;
// abstract public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response;
/**
* @param Request $request HTTP Method GET

View File

@@ -5,7 +5,6 @@ namespace App\Controller\API\Meta;
use App\Controller\API\AbstractAPIController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use App\Domain\SecureCRUDManagement\SecureCRUDFactoryService;
/**
* @author kevinfrantz
@@ -18,9 +17,9 @@ class HeredityApiController extends AbstractAPIController
{
}
public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
{
}
// public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
// {
// }
public function update(Request $request, $identifier): Response
{

View File

@@ -5,7 +5,6 @@ namespace App\Controller\API\Meta;
use App\Controller\API\AbstractAPIController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use App\Domain\SecureCRUDManagement\SecureCRUDFactoryService;
/**
* @author kevinfrantz
@@ -18,9 +17,9 @@ class LawApiController extends AbstractAPIController
{
}
public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
{
}
// public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
// {
// }
public function update(Request $request, $identifier): Response
{

View File

@@ -5,7 +5,6 @@ namespace App\Controller\API\Meta;
use App\Controller\API\AbstractAPIController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use App\Domain\SecureCRUDManagement\SecureCRUDFactoryService;
/**
* @author kevinfrantz
@@ -18,9 +17,9 @@ class MemberApiController extends AbstractAPIController
{
}
public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
{
}
// public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
// {
// }
public function update(Request $request, $identifier): Response
{

View File

@@ -5,7 +5,6 @@ namespace App\Controller\API\Meta;
use App\Controller\API\AbstractAPIController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use App\Domain\SecureCRUDManagement\SecureCRUDFactoryService;
/**
* @author kevinfrantz
@@ -18,9 +17,9 @@ class RightApiController extends AbstractAPIController
{
}
public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
{
}
// public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
// {
// }
public function update(Request $request, $identifier): Response
{

View File

@@ -7,8 +7,6 @@ use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\Request;
use App\Controller\API\AbstractAPIController;
use App\Entity\Source\PureSource;
use App\Domain\SecureCRUDManagement\SecureCRUDFactoryService;
use App\Domain\SecureCRUDManagement\Create\SecureSourceCreatorInterface;
/**
* @author kevinfrantz
@@ -30,51 +28,51 @@ class SourceApiController extends AbstractAPIController
{
}
/**
* @Route("/{_locale}/api/source.{_format}",
* defaults={"_format"="json"} ,
* methods={"POST","GET"}
* )
* {@inheritdoc}
*
* @see \App\Controller\API\AbstractAPIController::create()
*/
public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
{
$response = new Response();
if (!$this->getUser()) {
//throw $this->createAccessDeniedException('The user must be logged in!');
}
if (Request::METHOD_POST === $request->getMethod()) {
$response = new Response();
$response->setContent('Post Request!');
return $response;
}
/**
* @var SecureSourceCreatorInterface
*/
$sourceCreator = $crudFactory->create();
$response->setContent($sourceCreator->create()->getText());
return $response;
// /**
// * @Route("/{_locale}/api/source.{_format}",
// * defaults={"_format"="json"} ,
// * methods={"POST","GET"}
// * )
// * {@inheritdoc}
// *
// * @see \App\Controller\API\AbstractAPIController::create()
// */
// public function create(Request $request, SecureCRUDFactoryService $crudFactory): Response
// {
// $response = new Response();
// $response->setContent('GET Request!');
// if (!$this->getUser()) {
// //throw $this->createAccessDeniedException('The user must be logged in!');
// }
// if (Request::METHOD_POST === $request->getMethod()) {
// $response = new Response();
// $response->setContent('Post Request!');
// return $response;
// }
// /**
// * @var SecureSourceCreatorInterface
// */
// $sourceCreator = $crudFactory->create();
// $response->setContent($sourceCreator->create()->getText());
// return $response;
// $requestedSource = new PureSource();
// $requestedSource->setSlug(SystemSlugType::IMPRINT);
// $requestedRight = new Right();
// $requestedRight->setSource($requestedSource);
// $requestedRight->setLayer(LayerType::SOURCE);
// $requestedRight->setType(CRUDType::READ);
// $sourceResponseManager = new SourceRESTResponseManager($this->getUser(), $entityManager, $requestedRight, $this->getViewHandler());
// // $response = new Response();
// // $response->setContent('GET Request!');
// return $sourceResponseManager->getResponse();
}
// // return $response;
// // $requestedSource = new PureSource();
// // $requestedSource->setSlug(SystemSlugType::IMPRINT);
// // $requestedRight = new Right();
// // $requestedRight->setSource($requestedSource);
// // $requestedRight->setLayer(LayerType::SOURCE);
// // $requestedRight->setType(CRUDType::READ);
// // $sourceResponseManager = new SourceRESTResponseManager($this->getUser(), $entityManager, $requestedRight, $this->getViewHandler());
// // return $sourceResponseManager->getResponse();
// }
/**
* @Route("/{_locale}/api/source/{identifier}.{_format}",