-
-
Notifications
You must be signed in to change notification settings - Fork 10
Description
I have this function in AuditAspect
/**
* @Around("execution(public * *Repository->create(*))")
*/
public function repositoryCreate(MethodInvocation $invocation) {
\Illuminate\Support\Facades\Log::info('Method intercepted');
...
It's supposed to intercept public function create(array $data) in class PositionRepository extends Repository (Repository extends Optimus\Genie\Repository)
In AuditService's constructor, I have the following
public function __construct(
DatabaseManager $database,
Dispatcher $dispatcher,
AuditRepository $auditRepository,
PositionService $positionService
) {
$this->database = $database;
$this->dispatcher = $dispatcher;
$this->auditRepository = $auditRepository;
$this->positionService = $positionService;
}
The repositoryCreate() function fail to be executed when a *Repository->create() function is executed.
Removing Position $positionService in the constructor parameter and $this->positionService = $positionService in the constructor body (and deleting the _transformation.cache file) will make repositoryCreate() work again.
Not sure if this would help, but here are the cache files
With the lines in AuditService constructor
<?php return array (
AOP_ROOT_DIR . '/api/Audits/Services/AuditService.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Audits/Repositories/AuditRepository.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Audits/Models/Audit.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Services/PositionService.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Repositories/PositionRepository.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Models/Position.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Repositories/PositionAssignmentRepository.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Models/PositionAssignment.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Repositories/UserAssignmentRepository.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Models/UserAssignment.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Controllers/PositionsController.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Users/Models/User.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Requests/CreatePositionRequest.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Enums/PositionStatus.php' =>
array (
'filemtime' => 1500536968,
'cacheUri' => NULL,
),
);
Without the lines:
<?php return array (
AOP_ROOT_DIR . '/api/Audits/Services/AuditService.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Audits/Repositories/AuditRepository.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Audits/Models/Audit.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Controllers/PositionsController.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Services/PositionService.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => AOP_CACHE_DIR . '/api/Positions/Services/PositionService.php',
),
AOP_ROOT_DIR . '/api/Positions/Repositories/PositionRepository.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => AOP_CACHE_DIR . '/api/Positions/Repositories/PositionRepository.php',
),
AOP_ROOT_DIR . '/api/Positions/Models/Position.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Repositories/PositionAssignmentRepository.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => AOP_CACHE_DIR . '/api/Positions/Repositories/PositionAssignmentRepository.php',
),
AOP_ROOT_DIR . '/api/Positions/Models/PositionAssignment.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Repositories/UserAssignmentRepository.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => AOP_CACHE_DIR . '/api/Positions/Repositories/UserAssignmentRepository.php',
),
AOP_ROOT_DIR . '/api/Positions/Models/UserAssignment.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Users/Models/User.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Requests/CreatePositionRequest.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Positions/Enums/PositionStatus.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
AOP_ROOT_DIR . '/api/Audits/Enums/AuditEvent.php' =>
array (
'filemtime' => 1500536999,
'cacheUri' => NULL,
),
);
Also, unrelated question: How is the _transformation.cache file (re)generated? Sometimes when I add new code, an OutOfBoundsException will be thrown:
Value aspect.Infrastructure\Aspects\AuditAspect is not defined in the container in /var/www/laravel/vendor/goaop/framework/src/Core/Container.php:84
the only way to fix this is to delete the cache file.