Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
vendor
/
botman
/
botman
/
src
/
Container
:
LaravelContainer.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace BotMan\BotMan\Container; use Illuminate\Container\EntryNotFoundException; use Illuminate\Contracts\Container\Container; use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerInterface; use Psr\Container\NotFoundExceptionInterface; use ReflectionException; class LaravelContainer implements ContainerInterface { /** @var Container */ protected $container; public function __construct(Container $container) { $this->container = $container; } /** * Finds an entry of the container by its identifier and returns it. * * @param string $id Identifier of the entry to look for. * * @throws NotFoundExceptionInterface No entry was found for **this** identifier. * @throws ContainerExceptionInterface Error while retrieving the entry. * * @return mixed Entry. */ public function get($id) { if ($this->has($id)) { return $this->container->make($id); } throw new EntryNotFoundException; } /** * Returns true if the container can return an entry for the given identifier. * Returns false otherwise. * * `has($id)` returning true does not mean that `get($id)` will not throw an exception. * It does however mean that `get($id)` will not throw a `NotFoundExceptionInterface`. * * @param string $id Identifier of the entry to look for. * * @return bool */ public function has($id): bool { if ($this->container->bound($id) || $this->container->resolved($id)) { return true; } try { $this->container->make($id); return true; } catch (ReflectionException $e) { return false; } } }