]> git.mxchange.org Git - friendica.git/blobdiff - static/dependencies.config.php
Partly revert coding for compatibility issues
[friendica.git] / static / dependencies.config.php
index 475f5cceed785c0bf6d71f645eb8f8be7e8cb4f0..3df54b79e61106c3485e0377d8dd90e4dd359ef7 100644 (file)
@@ -1,14 +1,22 @@
 <?php
-
-use Dice\Dice;
-use Friendica\App;
-use Friendica\Core\Config;
-use Friendica\Database\Database;
-use Friendica\Factory;
-use Friendica\Util;
-use Psr\Log\LoggerInterface;
-
 /**
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ *
  * The configuration defines "complex" dependencies inside Friendica
  * So this classes shouldn't be simple or their dependencies are already defined here.
  *
@@ -24,15 +32,33 @@ use Psr\Log\LoggerInterface;
  *   - $a = new ClassA($creationPassedVariable);
  *
  */
+
+use Dice\Dice;
+use Friendica\App;
+use Friendica\Core\Cache;
+use Friendica\Core\Config;
+use Friendica\Core\L10n;
+use Friendica\Core\Lock\ILock;
+use Friendica\Core\Process;
+use Friendica\Core\Session\ISession;
+use Friendica\Core\StorageManager;
+use Friendica\Database\Database;
+use Friendica\Factory;
+use Friendica\Model\Storage\IStorage;
+use Friendica\Model\User\Cookie;
+use Friendica\Network;
+use Friendica\Util;
+use Psr\Log\LoggerInterface;
+
 return [
-       '*' => [
+       '*'                             => [
                // marks all class result as shared for other creations, so there's just
                // one instance for the whole execution
                'shared' => true,
        ],
-       '$basepath' => [
-               'instanceOf' => Util\BasePath::class,
-               'call' => [
+       '$basepath'                     => [
+               'instanceOf'      => Util\BasePath::class,
+               'call'            => [
                        ['getPath', [], Dice::CHAIN_CALL],
                ],
                'constructParams' => [
@@ -40,58 +66,64 @@ return [
                        $_SERVER
                ]
        ],
-       Util\BasePath::class => [
+       Util\BasePath::class         => [
                'constructParams' => [
                        dirname(__FILE__, 2),
                        $_SERVER
                ]
        ],
        Util\ConfigFileLoader::class => [
-               'shared' => true,
+               'shared'          => true,
                'constructParams' => [
                        [Dice::INSTANCE => '$basepath'],
                ],
        ],
-       Config\Cache\ConfigCache::class => [
+       Config\Cache::class          => [
                'instanceOf' => Factory\ConfigFactory::class,
                'call'       => [
                        ['createCache', [], Dice::CHAIN_CALL],
                ],
        ],
-       App\Mode::class => [
-               'call'   => [
+       App\Mode::class              => [
+               'call' => [
+                       ['determineRunMode', [true, $_SERVER], Dice::CHAIN_CALL],
                        ['determine', [], Dice::CHAIN_CALL],
                ],
        ],
-       Config\Configuration::class => [
+       Config\IConfig::class                   => [
                'instanceOf' => Factory\ConfigFactory::class,
-               'call' => [
+               'call'       => [
                        ['createConfig', [], Dice::CHAIN_CALL],
                ],
        ],
-       Config\PConfiguration::class => [
+       \Friendica\Core\PConfig\IPConfig::class => [
                'instanceOf' => Factory\ConfigFactory::class,
-               'call' => [
+               'call'       => [
                        ['createPConfig', [], Dice::CHAIN_CALL],
                ]
        ],
-       Database::class => [
+       Database::class                         => [
                'constructParams' => [
-                       [DICE::INSTANCE => \Psr\Log\NullLogger::class],
+                       [Dice::INSTANCE => \Psr\Log\NullLogger::class],
                        $_SERVER,
                ],
        ],
        /**
-        * Creates the Util\BaseURL
+        * Creates the App\BaseURL
         *
         * Same as:
-        *   $baseURL = new Util\BaseURL($configuration, $_SERVER);
+        *   $baseURL = new App\BaseURL($configuration, $_SERVER);
         */
-       Util\BaseURL::class => [
+       App\BaseURL::class             => [
                'constructParams' => [
                        $_SERVER,
                ],
        ],
+       App\Page::class => [
+               'constructParams' => [
+                       [Dice::INSTANCE => '$basepath'],
+               ],
+       ],
        /**
         * Create a Logger, which implements the LoggerInterface
         *
@@ -104,16 +136,90 @@ return [
         *    $app = $dice->create(App::class, [], ['$channel' => 'index']);
         *    and is automatically passed as an argument with the same name
         */
-       LoggerInterface::class => [
+       LoggerInterface::class          => [
                'instanceOf' => Factory\LoggerFactory::class,
+               'constructParams' => [
+                       'index',
+               ],
                'call'       => [
-                       ['create', [], Dice::CHAIN_CALL],
+                       ['create', ['index'], Dice::CHAIN_CALL],
                ],
        ],
-       '$devLogger' => [
+       '$devLogger'                    => [
                'instanceOf' => Factory\LoggerFactory::class,
+               'constructParams' => [
+                       'dev',
+               ],
                'call'       => [
                        ['createDev', [], Dice::CHAIN_CALL],
                ]
        ],
+       Cache\ICache::class             => [
+               'instanceOf' => Factory\CacheFactory::class,
+               'call'       => [
+                       ['create', [], Dice::CHAIN_CALL],
+               ],
+       ],
+       Cache\IMemoryCache::class       => [
+               'instanceOf' => Factory\CacheFactory::class,
+               'call'       => [
+                       ['create', [], Dice::CHAIN_CALL],
+               ],
+       ],
+       ILock::class                    => [
+               'instanceOf' => Factory\LockFactory::class,
+               'call'       => [
+                       ['create', [], Dice::CHAIN_CALL],
+               ],
+       ],
+       App\Arguments::class => [
+               'instanceOf' => App\Arguments::class,
+               'call' => [
+                       ['determine', [$_SERVER, $_GET], Dice::CHAIN_CALL],
+               ],
+       ],
+       App\Module::class => [
+               'instanceOf' => App\Module::class,
+               'call' => [
+                       ['determineModule', [], Dice::CHAIN_CALL],
+               ],
+       ],
+       Process::class => [
+               'constructParams' => [
+                       [Dice::INSTANCE => '$basepath'],
+               ],
+       ],
+       App\Router::class => [
+               'constructParams' => [
+                       $_SERVER,
+                       __DIR__ . '/routes.config.php',
+                       null
+               ],
+       ],
+       L10n::class => [
+               'constructParams' => [
+                       $_SERVER, $_GET
+               ],
+       ],
+       ISession::class => [
+               'instanceOf' => Factory\SessionFactory::class,
+               'call' => [
+                       ['createSession', [$_SERVER], Dice::CHAIN_CALL],
+                       ['start', [], Dice::CHAIN_CALL],
+               ],
+       ],
+       Cookie::class => [
+               'constructParams' => [
+                       $_SERVER, $_COOKIE
+               ],
+       ],
+       IStorage::class => [
+               'instanceOf' => StorageManager::class,
+               'call' => [
+                       ['getBackend', [], Dice::CHAIN_CALL],
+               ],
+       ],
+       Network\IHTTPRequest::class => [
+               'instanceOf' => Network\HTTPRequest::class,
+       ]
 ];