<?php
namespace App\Controller\Endpoint;
use App\Controller\AbstractClass\AbstractTestController;
use App\Service\AdvertisingManagement;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* Class TestController
*/
#[Route(path: '/test')]
class TestController extends AbstractTestController
{
private string $class;
private ?Request $request = null;
public function __construct(AdvertisingManagement $advertiserService, RequestStack $requestStack)
{
$this->request = $requestStack->getCurrentRequest();
$advertiser = $advertiserService->getCurrentAdvertiser();
$className = (new \ReflectionClass($this))->getShortName();
$this->class = 'App\\Controller\\Advertiser\\Generic\\Generic' . $className;
if (method_exists($advertiser, 'getRef') && class_exists('App\\Controller\\Advertiser\\' . $advertiser . '\\' . $advertiser->getRef() . $className)) {
$this->class = 'App\\Controller\\Advertiser\\' . $advertiser . '\\' . $advertiser->getRef() . $className;
}
}
#[Route(path: '/', name: 'test_index', methods: 'GET|POST')]
public function index(): Response
{
return $this->forward($this->class . '::' . __FUNCTION__, $this->request->attributes->get('_route_params'));
}
#[Route(path: '/api/testcall', name: 'test_api_test_call', methods: 'GET|POST')]
public function testCall(): Response
{
return $this->forward($this->class . '::' . __FUNCTION__, $this->request->attributes->get('_route_params'));
}
#[Route(path: '/api/testcallpost', name: 'test_api_test_callpost', methods: 'GET|POST')]
public function testCallPost(): Response
{
return $this->forward($this->class . '::' . __FUNCTION__, $this->request->attributes->get('_route_params'));
}
#[Route(path: '/api/testcallpfm', name: 'test_api_test_call_pfm', methods: 'GET|POST')]
public function testCallPfm(): Response
{
return $this->forward($this->class . '::' . __FUNCTION__, $this->request->attributes->get('_route_params'));
}
#[Route(path: '/api/testcallnotifyagency/{id}', name: 'test_api_test_callnotifyagency', methods: 'GET|POST')]
public function testCallNotifyAgency(): Response
{
return $this->forward($this->class . '::' . __FUNCTION__, $this->request->attributes->get('_route_params'));
}
}