44 lines
787 B
PHP
44 lines
787 B
PHP
<?php declare(strict_types=1);
|
|
|
|
namespace Orbit;
|
|
|
|
use Monolog\Logger;
|
|
|
|
/**
|
|
* Abstract Module
|
|
*
|
|
* This represents some work that a request->response handler can do
|
|
*
|
|
* @package Orbit
|
|
*/
|
|
class Module implements ModuleInterface
|
|
{
|
|
protected $config;
|
|
protected $logger;
|
|
|
|
/**
|
|
* Constructor
|
|
*
|
|
* @param Config $config
|
|
* @param Logger $logger
|
|
* @return void
|
|
*/
|
|
public function __construct(Config $config, Logger $logger)
|
|
{
|
|
$this->config = $config;
|
|
$this->logger = $logger;
|
|
}
|
|
|
|
/**
|
|
* Handle
|
|
*
|
|
* Take a request and return a response
|
|
*
|
|
* This should be implemented in a child class
|
|
*/
|
|
public function handle(Request $request): array
|
|
{
|
|
return [true, new Response()];
|
|
}
|
|
}
|