public function init(Service $service)
 {
     $service->get('/client_connections', function (Request $request, array $hookData) {
         Utils::requireUser($hookData, ['vpn-admin-portal']);
         return new ApiResponse('client_connections', $this->serverManager->connections());
     });
     $service->post('/kill_client', function (Request $request, array $hookData) {
         Utils::requireUser($hookData, ['vpn-admin-portal', 'vpn-user-portal']);
         $commonName = $request->getPostParameter('common_name');
         InputValidation::commonName($commonName);
         return new ApiResponse('kill_client', $this->serverManager->kill($commonName));
     });
 }
 public function init(Service $service)
 {
     $service->get('/disabled_common_names', function (Request $request, array $hookData) {
         Utils::requireUser($hookData, ['vpn-admin-portal', 'vpn-user-portal']);
         return new ApiResponse('disabled_common_names', $this->commonNames->getDisabled());
     });
     $service->post('/disable_common_name', function (Request $request, array $hookData) {
         Utils::requireUser($hookData, ['vpn-admin-portal', 'vpn-user-portal']);
         $commonName = $request->getPostParameter('common_name');
         InputValidation::commonName($commonName);
         $this->logger->info(sprintf('disabling common_name "%s"', $commonName));
         return new ApiResponse('disable_common_name', $this->commonNames->setDisabled($commonName));
     });
     $service->post('/enable_common_name', function (Request $request, array $hookData) {
         Utils::requireUser($hookData, ['vpn-admin-portal']);
         $commonName = $request->getPostParameter('common_name');
         InputValidation::commonName($commonName);
         $this->logger->info(sprintf('enabling common_name "%s"', $commonName));
         return new ApiResponse('enable_common_name', $this->commonNames->setEnabled($commonName));
     });
 }