Allow users to specify custom hostnames

This commit is contained in:
Marcel Pociot
2020-11-01 22:40:17 +01:00
parent 5b7a80bb0c
commit cec52c4229
28 changed files with 913 additions and 63 deletions

View File

@@ -8,7 +8,7 @@ use Ratchet\ConnectionInterface;
interface ConnectionManager
{
public function storeConnection(string $host, ?string $subdomain, ConnectionInterface $connection): ControlConnection;
public function storeConnection(string $host, ?string $subdomain, ?string $hostname, ConnectionInterface $connection): ControlConnection;
public function storeTcpConnection(int $port, ConnectionInterface $connection): ControlConnection;
@@ -22,6 +22,8 @@ interface ConnectionManager
public function findControlConnectionForSubdomain($subdomain): ?ControlConnection;
public function findControlConnectionForHostname(string $hostname): ?ControlConnection;
public function findControlConnectionForClientId(string $clientId): ?ControlConnection;
public function getConnections(): array;

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Contracts;
use React\Promise\PromiseInterface;
interface HostnameRepository
{
public function getHostnames(): PromiseInterface;
public function getHostnameById($id): PromiseInterface;
public function getHostnameByName(string $name): PromiseInterface;
public function getHostnamesByUserId($id): PromiseInterface;
public function getHostnamesByUserIdAndName($id, $name): PromiseInterface;
public function deleteHostnameForUserId($userId, $hostnameId): PromiseInterface;
public function storeHostname(array $data): PromiseInterface;
}