| 1 | <?php |
||
| 16 | abstract class Application extends BaseApplication |
||
| 17 | { |
||
| 18 | public static $eventLoop; |
||
| 19 | public function __construct($name = "Padawan", $loop = null) |
||
| 20 | { |
||
| 21 | parent::__construct($name, PADAWAN_VERSION); |
||
| 22 | $this->createContainer(); |
||
| 23 | $this->setAutoExit(false); |
||
| 24 | $this->loadCommands(); |
||
| 25 | if ($loop) { |
||
| 26 | self::$eventLoop = $loop; |
||
| 27 | } else { |
||
| 28 | self::$eventLoop = Factory::create(); |
||
| 29 | } |
||
| 30 | } |
||
| 31 | |||
| 32 | public function getContainer() |
||
| 33 | { |
||
| 34 | return $this->container; |
||
| 35 | } |
||
| 36 | |||
| 37 | abstract protected function loadCommands(); |
||
| 38 | |||
| 39 | private function createContainer() |
||
| 46 | |||
| 47 | /** @var Container */ |
||
| 48 | protected $container; |
||
| 49 | } |
||
| 50 |