Files
piratepoet/mailpoet/lib/Automation/Engine/API/Endpoints/SystemDatabaseEndpoint.php
Jan Jakes da2621230d Move automation engine code under "Engine" namespace
This is to separate the engine itself from "integrations" that will be
built on top of the engine.

[MAILPOET-4136]
2022-03-14 09:36:21 +01:00

39 lines
1.1 KiB
PHP

<?php declare(strict_types = 1);
namespace MailPoet\Automation\Engine\API\Endpoints;
use MailPoet\Automation\Engine\API\Endpoint;
use MailPoet\Automation\Engine\API\Request;
use MailPoet\Automation\Engine\API\Response;
use MailPoet\Automation\Engine\Migrations\Migrator;
use MailPoet\Features\FeatureFlagsController;
use MailPoet\Features\FeaturesController;
class SystemDatabaseEndpoint extends Endpoint {
/** @var FeatureFlagsController */
private $featureFlagsController;
/** @var Migrator */
private $migrator;
public function __construct(
FeatureFlagsController $featureFlagsController,
Migrator $migrator
) {
$this->migrator = $migrator;
$this->featureFlagsController = $featureFlagsController;
}
public function post(Request $request): Response {
$this->migrator->deleteSchema();
$this->migrator->createSchema();
return new Response(null);
}
public function delete(Request $request): Response {
$this->migrator->deleteSchema();
$this->featureFlagsController->set(FeaturesController::AUTOMATION, false);
return new Response(null);
}
}