<?php namespace Szurubooru\Controllers; final class UserController extends AbstractController { private $userService; private $passwordService; private $inputReader; public function __construct( \Szurubooru\Services\UserService $userService, \Szurubooru\Services\PasswordService $passwordService, \Szurubooru\Helpers\InputReader $inputReader) { $this->inputReader = $inputReader; $this->userService = $userService; $this->passwordService = $passwordService; } public function registerRoutes(\Szurubooru\Router $router) { $router->post('/api/users', [$this, 'create']); $router->get('/api/users', [$this, 'getAll']); $router->get('/api/users/:id', [$this, 'getById']); $router->put('/api/users/:id', [$this, 'update']); $router->delete('/api/users/:id', [$this, 'delete']); } public function create() { $this->userService->validateUserName($this->inputReader->userName); $this->passwordService->validatePassword($this->inputReader->password); throw new \BadMethodCallException('Not implemented'); } public function update($id) { throw new \BadMethodCallException('Not implemented'); } public function getAll() { throw new \BadMethodCallException('Not implemented'); } public function getById($id) { throw new \BadMethodCallException('Not implemented'); } public function delete($id) { throw new \BadMethodCallException('Not implemented'); } }