add Socket
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Potter;
|
||||
|
||||
use \React\Socket\SocketServer;
|
||||
|
||||
trait Socket
|
||||
{
|
||||
private static function addSocketBehaviour(Container $container): void
|
||||
{
|
||||
static::getEnvironment($container)
|
||||
->required('APPLICATION_PORT');
|
||||
|
||||
self::addSocketServer($container);
|
||||
}
|
||||
|
||||
private static function addSocketServer(Container $container): void
|
||||
{
|
||||
$container->addShared(SocketServer::class)
|
||||
->addArgument('127.0.0.1:' . $_ENV['APPLICATION_PORT']);
|
||||
}
|
||||
|
||||
abstract private static function getEnvironment(Container $container): \Dotenv\Dotenv;
|
||||
|
||||
private static function getSocketServer(Container $container): SocketServer
|
||||
{
|
||||
return $container->get(SocketServer::class);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user