Change APIController to abstract class from interface #166
This commit is contained in:
parent
d78e30c9c2
commit
6771b86d6c
5 changed files with 39 additions and 37 deletions
|
|
@ -2,6 +2,40 @@
|
|||
|
||||
namespace Catalyst\APIBundle\Controller;
|
||||
|
||||
interface APIController
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
|
||||
abstract class APIController extends Controller
|
||||
{
|
||||
protected function checkRequiredParameters(Request $req, $params = [])
|
||||
{
|
||||
$missing = [];
|
||||
|
||||
// check if parameters are there
|
||||
foreach ($params as $param)
|
||||
{
|
||||
if ($req->getMethod() == 'GET')
|
||||
{
|
||||
$check = $req->query->get($param);
|
||||
if (empty($check))
|
||||
$missing[] = $param;
|
||||
}
|
||||
// else if ($req->getMethod() == 'POST')
|
||||
else
|
||||
{
|
||||
$check = $req->request->get($param);
|
||||
if (empty($check))
|
||||
$missing[] = $param;
|
||||
}
|
||||
}
|
||||
|
||||
// check missing parameters
|
||||
if (count($missing) > 0)
|
||||
{
|
||||
$miss_string = implode(', ', $missing);
|
||||
return 'Missing required parameter(s): ' . $miss_string;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ use Catalyst\APIBundle\Response\APIResponse;
|
|||
use App\Entity\BatteryModel;
|
||||
use App\Entity\BatterySize;
|
||||
|
||||
class BatteryController extends Controller implements APIController
|
||||
class BatteryController extends APIController
|
||||
{
|
||||
public function getModels(EntityManagerInterface $em)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ use Doctrine\ORM\Query;
|
|||
use Catalyst\APIBundle\Controller\APIController;
|
||||
use Catalyst\APIBundle\Response\APIResponse;
|
||||
|
||||
class TestController extends Controller implements APIController
|
||||
class TestController extends APIController
|
||||
{
|
||||
public function test()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ use Catalyst\APIBundle\Response\APIResponse;
|
|||
use App\Entity\Vehicle;
|
||||
use App\Entity\VehicleManufacturer;
|
||||
|
||||
class VehicleController extends Controller implements APIController
|
||||
class VehicleController extends APIController
|
||||
{
|
||||
public function getManufacturers(EntityManagerInterface $em)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -17,40 +17,8 @@ use App\Ramcar\WarrantyClass;
|
|||
use App\Ramcar\WarrantyStatus;
|
||||
use DateTime;
|
||||
|
||||
class WarrantyController extends Controller implements APIController
|
||||
class WarrantyController extends APIController
|
||||
{
|
||||
protected function checkRequiredParameters(Request $req, $params = [])
|
||||
{
|
||||
$missing = [];
|
||||
|
||||
// check if parameters are there
|
||||
foreach ($params as $param)
|
||||
{
|
||||
if ($req->getMethod() == 'GET')
|
||||
{
|
||||
$check = $req->query->get($param);
|
||||
if (empty($check))
|
||||
$missing[] = $param;
|
||||
}
|
||||
// else if ($req->getMethod() == 'POST')
|
||||
else
|
||||
{
|
||||
$check = $req->request->get($param);
|
||||
if (empty($check))
|
||||
$missing[] = $param;
|
||||
}
|
||||
}
|
||||
|
||||
// check missing parameters
|
||||
if (count($missing) > 0)
|
||||
{
|
||||
$miss_string = implode(', ', $missing);
|
||||
return 'Missing required parameter(s): ' . $miss_string;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
protected function cleanSerial($serial)
|
||||
{
|
||||
return trim(strtoupper($serial));
|
||||
|
|
|
|||
Loading…
Reference in a new issue