aliasService = $aliasesService; $this->currentUserId = $UserId; } /** * @NoAdminRequired * * @param int $accountId * * @return JSONResponse */ #[TrapError] public function index(int $accountId): JSONResponse { return new JSONResponse($this->aliasService->findAll($accountId, $this->currentUserId)); } /** * @NoAdminRequired * * * @return never */ #[TrapError] public function show() { throw new NotImplemented(); } /** * @NoAdminRequired */ #[TrapError] public function update(int $id, string $alias, string $aliasName, ?int $smimeCertificateId = null): JSONResponse { return new JSONResponse( $this->aliasService->update( $this->currentUserId, $id, $alias, $aliasName, $smimeCertificateId, ) ); } /** * @NoAdminRequired * * @param int $id * @return JSONResponse */ #[TrapError] public function destroy(int $id): JSONResponse { return new JSONResponse($this->aliasService->delete($this->currentUserId, $id)); } /** * @NoAdminRequired * * @param int $accountId * @param string $alias * @param string $aliasName * * @return JSONResponse * @throws DoesNotExistException */ #[TrapError] public function create(int $accountId, string $alias, string $aliasName): JSONResponse { return new JSONResponse( $this->aliasService->create($this->currentUserId, $accountId, $alias, $aliasName), Http::STATUS_CREATED ); } /** * @NoAdminRequired * * @param int $id * @param string|null $signature * * @return JSONResponse * @throws DoesNotExistException */ #[TrapError] public function updateSignature(int $id, ?string $signature = null): JSONResponse { return new JSONResponse($this->aliasService->updateSignature($this->currentUserId, $id, $signature)); } }