From a2d1feb8489e2a4bcfdb53ccac78f581d632bdc7 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms <tleilax+studip@gmail.com> Date: Fri, 28 Feb 2025 12:33:49 +0100 Subject: [PATCH] fixes #67 --- bootstrap-definitions.php | 2 +- lib/GitlabController.php | 2 +- lib/Plugin.php | 17 ++++++++--------- 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/bootstrap-definitions.php b/bootstrap-definitions.php index 40adf68..7bd308e 100644 --- a/bootstrap-definitions.php +++ b/bootstrap-definitions.php @@ -37,7 +37,7 @@ return [ 'handler' => $handlerStack, ]); }, - Gitlab\Client::class => function (ContainerInterface $container) { + Gitlab\Client::class => function (ContainerInterface $container) { $builder = new Gitlab\HttpClient\Builder( $container->get(ClientInterface::class), new RequestFactory(), diff --git a/lib/GitlabController.php b/lib/GitlabController.php index 61fe66a..b75c86f 100644 --- a/lib/GitlabController.php +++ b/lib/GitlabController.php @@ -22,7 +22,7 @@ abstract class GitlabController extends Controller $this->setCache(StudipCacheFactory::getCache(), 'gitlab/'); $this->gitlab_project_id = Config::get()->getValue('TRAC2GITLAB_GITLAB_PROJECT_ID'); - $this->gitlab = app(Client::class); + $this->gitlab = app()->get(Client::class); } protected function fetchAll(AbstractApi $api, string $method, array $parameters = []): array diff --git a/lib/Plugin.php b/lib/Plugin.php index 3506985..8f0d2b6 100644 --- a/lib/Plugin.php +++ b/lib/Plugin.php @@ -9,17 +9,16 @@ abstract class Plugin extends StudIPPlugin { protected function setupDiContainer() { - $builder = new DI\ContainerBuilder(); - $builder->useAutowiring(false); - $builder->addDefinitions(__DIR__ . '/../bootstrap-definitions.php'); - $container = $builder->build(); + $container = DIContainer::getInstance(); - $combinedContainer = new CombinedContainer( - $container, - DIContainer::getInstance() - ); + $definitions = require __DIR__ . '/../bootstrap-definitions.php'; - DIContainer::setInstance($combinedContainer); + foreach ($definitions as $name => $value) { + if ($value instanceof \Closure) { + $value = $value($container); + } + $container->set($name, $value); + } } public function perform($unconsumed_path) -- GitLab