mirror of
https://github.com/kevinveenbirkenbach/infinito.git
synced 2025-09-13 13:57:10 +02:00
Implemented ActionManagement
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
namespace App\Domain\ActionManagement;
|
||||
|
||||
use App\Domain\RequestManagement\Action\RequestedActionInterface;
|
||||
use App\Domain\SecureManagement\SecureRequestedRightCheckerInterface;
|
||||
|
||||
/**
|
||||
* @author kevinfrantz
|
||||
*/
|
||||
final class ActionService implements ActionServiceInterface
|
||||
{
|
||||
/**
|
||||
* @var RequestedActionInterface
|
||||
*/
|
||||
private $requestedAction;
|
||||
|
||||
/**
|
||||
* @var SecureRequestedRightCheckerInterface
|
||||
*/
|
||||
private $secureRequestedRightChecker;
|
||||
|
||||
/**
|
||||
* @param RequestedActionInterface $requestedAction
|
||||
*/
|
||||
public function __construct(RequestedActionInterface $requestedAction, SecureRequestedRightCheckerInterface $secureRequestedRightChecker)
|
||||
{
|
||||
$this->requestedAction = $requestedAction;
|
||||
$this->secureRequestedRightChecker = $secureRequestedRightChecker;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*
|
||||
* @see \App\Domain\ActionManagement\ActionServiceInterface::getRequestedAction()
|
||||
*/
|
||||
public function getRequestedAction(): RequestedActionInterface
|
||||
{
|
||||
return $this->requestedAction;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*
|
||||
* @see \App\Domain\ActionManagement\ActionServiceInterface::isRequestedActionSecure()
|
||||
*/
|
||||
public function isRequestedActionSecure(): bool
|
||||
{
|
||||
return $this->secureRequestedRightChecker->check($this->requestedAction);
|
||||
}
|
||||
}
|
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace App\Domain\ActionManagement;
|
||||
|
||||
use App\Domain\RequestManagement\Action\RequestedActionInterface;
|
||||
|
||||
/**
|
||||
* 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;
|
||||
}
|
Reference in New Issue
Block a user