infinito/application/symfony/src/Domain/ActionManagement/ActionServiceInterface.php

51 lines
1.2 KiB
PHP
Raw Normal View History

2019-01-27 09:35:43 +01:00
<?php
namespace App\Domain\ActionManagement;
use App\Domain\RequestManagement\Action\RequestedActionInterface;
2019-01-27 15:28:25 +01:00
use Symfony\Component\HttpFoundation\Request;
use App\Repository\RepositoryInterface;
use Symfony\Component\Form\FormBuilderInterface;
use App\Entity\EntityInterface;
use Doctrine\ORM\EntityManagerInterface;
2019-01-27 09:35:43 +01:00
/**
* This interface offers all classes for managing an Action.
*
* @author kevinfrantz
*/
interface ActionServiceInterface
{
/**
* @return RequestedActionInterface Returns the requested action
*/
public function getRequestedAction(): RequestedActionInterface;
/**
* @return bool true if the action permissions are right
*/
public function isRequestedActionSecure(): bool;
2019-01-27 15:28:25 +01:00
/**
* @return Request
*/
public function getRequest(): Request;
/**
* @return RepositoryInterface
*/
public function getRepository(): RepositoryInterface;
/**
* @param EntityInterface $entity
*
* @return FormBuilderInterface
*/
public function getForm(EntityInterface $entity): FormBuilderInterface;
/**
* @return EntityManagerInterface
*/
public function getEntityManager(): EntityManagerInterface;
2019-01-27 09:35:43 +01:00
}