This commit is contained in:
Saeed Vaziry
2023-07-02 12:47:50 +02:00
commit 5c72f12490
825 changed files with 41659 additions and 0 deletions

View File

@ -0,0 +1,43 @@
<?php
namespace App\Jobs\DatabaseUser;
use App\Enums\DatabaseUserStatus;
use App\Events\Broadcast;
use App\Jobs\Job;
use App\Models\DatabaseUser;
class CreateOnServer extends Job
{
protected DatabaseUser $databaseUser;
public function __construct(DatabaseUser $databaseUser)
{
$this->databaseUser = $databaseUser;
}
public function handle(): void
{
$this->databaseUser->server->database()->handler()->createUser(
$this->databaseUser->username,
$this->databaseUser->password,
$this->databaseUser->host
);
$this->databaseUser->status = DatabaseUserStatus::READY;
$this->databaseUser->save();
event(
new Broadcast('create-database-user-finished', [
'id' => $this->databaseUser->id,
])
);
}
public function failed(): void
{
event(
new Broadcast('create-database-user-failed', [
'id' => $this->databaseUser->id,
])
);
}
}

View File

@ -0,0 +1,40 @@
<?php
namespace App\Jobs\DatabaseUser;
use App\Events\Broadcast;
use App\Jobs\Job;
use App\Models\DatabaseUser;
class DeleteFromServer extends Job
{
protected DatabaseUser $databaseUser;
public function __construct(DatabaseUser $databaseUser)
{
$this->databaseUser = $databaseUser;
}
public function handle(): void
{
$this->databaseUser->server->database()->handler()->deleteUser(
$this->databaseUser->username,
$this->databaseUser->host
);
event(
new Broadcast('delete-database-user-finished', [
'id' => $this->databaseUser->id,
])
);
$this->databaseUser->delete();
}
public function failed(): void
{
event(
new Broadcast('delete-database-user-failed', [
'id' => $this->databaseUser->id,
])
);
}
}

View File

@ -0,0 +1,40 @@
<?php
namespace App\Jobs\DatabaseUser;
use App\Events\Broadcast;
use App\Jobs\Job;
use App\Models\DatabaseUser;
class LinkUser extends Job
{
protected DatabaseUser $databaseUser;
public function __construct(DatabaseUser $databaseUser)
{
$this->databaseUser = $databaseUser;
}
public function handle(): void
{
$this->databaseUser->server->database()->handler()->link(
$this->databaseUser->username,
$this->databaseUser->host,
$this->databaseUser->databases
);
event(
new Broadcast('link-database-user-finished', [
'id' => $this->databaseUser->id,
])
);
}
public function failed(): void
{
event(
new Broadcast('link-database-user-failed', [
'id' => $this->databaseUser->id,
])
);
}
}

View File

@ -0,0 +1,39 @@
<?php
namespace App\Jobs\DatabaseUser;
use App\Events\Broadcast;
use App\Jobs\Job;
use App\Models\DatabaseUser;
class UnlinkUser extends Job
{
protected DatabaseUser $databaseUser;
public function __construct(DatabaseUser $databaseUser)
{
$this->databaseUser = $databaseUser;
}
public function handle(): void
{
$this->databaseUser->server->database()->handler()->unlink(
$this->databaseUser->username,
$this->databaseUser->host,
);
event(
new Broadcast('unlink-database-user-finished', [
'id' => $this->databaseUser->id,
])
);
}
public function failed(): void
{
event(
new Broadcast('unlink-database-user-failed', [
'id' => $this->databaseUser->id,
])
);
}
}