3 declare(strict_types
=1);
5 namespace Shaarli\Container
;
7 use Psr\Log\LoggerInterface
;
8 use Shaarli\Bookmark\BookmarkServiceInterface
;
9 use Shaarli\Config\ConfigManager
;
10 use Shaarli\Feed\FeedBuilder
;
11 use Shaarli\Formatter\FormatterFactory
;
13 use Shaarli\Http\HttpAccess
;
14 use Shaarli\Http\MetadataRetriever
;
15 use Shaarli\Netscape\NetscapeBookmarkUtils
;
16 use Shaarli\Plugin\PluginManager
;
17 use Shaarli\Render\PageBuilder
;
18 use Shaarli\Render\PageCacheManager
;
19 use Shaarli\Security\CookieManager
;
20 use Shaarli\Security\LoginManager
;
21 use Shaarli\Security\SessionManager
;
22 use Shaarli\Thumbnailer
;
23 use Shaarli\Updater\Updater
;
27 * Extension of Slim container to document the injected objects.
29 * @property string $basePath Shaarli's instance base path (e.g. `/shaarli/`)
30 * @property BookmarkServiceInterface $bookmarkService
31 * @property CookieManager $cookieManager
32 * @property ConfigManager $conf
33 * @property mixed[] $environment $_SERVER automatically injected by Slim
34 * @property callable $errorHandler Overrides default Slim exception display
35 * @property FeedBuilder $feedBuilder
36 * @property FormatterFactory $formatterFactory
37 * @property History $history
38 * @property HttpAccess $httpAccess
39 * @property LoginManager $loginManager
40 * @property LoggerInterface $logger
41 * @property MetadataRetriever $metadataRetriever
42 * @property NetscapeBookmarkUtils $netscapeBookmarkUtils
43 * @property callable $notFoundHandler Overrides default Slim exception display
44 * @property PageBuilder $pageBuilder
45 * @property PageCacheManager $pageCacheManager
46 * @property callable $phpErrorHandler Overrides default Slim PHP error display
47 * @property PluginManager $pluginManager
48 * @property SessionManager $sessionManager
49 * @property Thumbnailer $thumbnailer
50 * @property Updater $updater
52 class ShaarliContainer
extends Container