Files
IsItMaintained/res/config/config.php
2016-05-06 00:53:12 +02:00

59 lines
2.1 KiB
PHP

<?php
use function DI\add;
use Maintained\Application\Command\ClearCacheCommand;
use Maintained\Application\Command\ShowStatisticsCommand;
use Maintained\Application\Command\UpdateStatisticsCommand;
use Maintained\Application\Command\WarmupCacheCommand;
use Maintained\Application\Middleware\MaintenanceMiddleware;
use Maintained\Statistics\CachedStatisticsProvider;
use Maintained\Statistics\StatisticsComputer;
use Maintained\Statistics\StatisticsProvider;
use Maintained\Statistics\StatisticsProviderLogger;
use function DI\factory;
use function DI\get;
use function DI\object;
$config = [
'baseUrl' => 'http://isitmaintained.com',
'maintenance' => false,
'directory.cache' => __DIR__ . '/../../var/cache',
'directory.data' => __DIR__ . '/../../var/data',
'directory.logs' => __DIR__ . '/../../var/logs',
// GitHub API
'github.auth_token' => null,
StatisticsProvider::class => get(CachedStatisticsProvider::class),
CachedStatisticsProvider::class => object()
->constructorParameter('cache', get('storage.statistics'))
->constructorParameter('wrapped', get(StatisticsProviderLogger::class)),
StatisticsProviderLogger::class => object()
->constructorParameter('wrapped', get(StatisticsComputer::class))
->constructorParameter('repositoryStorage', get('storage.repositories')),
// CLI commands
ClearCacheCommand::class => object()
->constructorParameter('cacheDirectory', get('directory.cache'))
->constructorParameter('dataDirectory', get('directory.data')),
ShowStatisticsCommand::class => object(),
WarmupCacheCommand::class => object()
->constructorParameter('repositoryStorage', get('storage.repositories')),
UpdateStatisticsCommand::class => object()
->constructorParameter('repositoryStorage', get('storage.repositories'))
->constructorParameter('statisticsCache', get('storage.statistics')),
// Middlewares
MaintenanceMiddleware::class => object()
->constructorParameter('enabled', get('maintenance')),
];
return array_merge(
$config,
require __DIR__ . '/config.libraries.php',
require __DIR__ . '/parameters.php'
);