@POST @Path("/{extensionId: [a-zA-Z_0-9-:]*}/uninstall") @ApiResponses(value = { @ApiResponse(code = 200, message = "OK") }) public Response uninstallExtension( final @PathParam("extensionId") @ApiParam(value = "extension ID", required = true) String extensionId) { ThreadPoolManager.getPool(THREAD_POOL_NAME).submit(() -> { try { ExtensionService extensionService = getExtensionService(extensionId); extensionService.uninstall(extensionId); } catch (Exception e) { logger.error("Exception while uninstalling extension: {}", e.getMessage()); postFailureEvent(extensionId, e.getMessage()); } }); return Response.ok(null, MediaType.TEXT_PLAIN).build(); }