public function init()
 {
     $repositoryFactory = new RepositoryFactory();
     if ($this->getConfigService()->hasConfigurationSection('repositories')) {
         $config = $this->getConfigService()->getConfigurationSection('repositories');
         foreach ($config as $k => $params) {
             if (!is_array($params)) {
                 $params = ['type' => 'rlike-v1', 'url' => $params];
             }
             $options = [];
             $cacheKeyContentTypes = 'sessioncache.repository.' . $k . '.contenttypes';
             $cacheKeyConfigTypes = 'sessioncache.repository.' . $k . '.configtypes';
             if ($this->getSession()->has($cacheKeyContentTypes)) {
                 $options['contenttypes'] = $this->getSession()->get($cacheKeyContentTypes);
             }
             if ($this->getSession()->has($cacheKeyConfigTypes)) {
                 $options['configtypes'] = $this->getSession()->get($cacheKeyConfigTypes);
             }
             switch ($params['type']) {
                 case 'rlike-v1':
                     $repository = $repositoryFactory->createRestLikeRepository($k, $params['url'], $options);
                     $repository->setPublicUrl($params['url']);
                     if (isset($params['files'])) {
                         $fileManager = $repository->getFileManager();
                         if ($fileManager) {
                             $fileManager->setPublicUrl($params['files']);
                         }
                     }
                     break;
             }
             if (!$this->getSession()->has($cacheKeyContentTypes)) {
                 $this->getSession()->set($cacheKeyContentTypes, $repository->getContentTypeNames());
             }
             if (!$this->getSession()->has($cacheKeyConfigTypes)) {
                 $this->getSession()->set($cacheKeyConfigTypes, $repository->getConfigTypeNames());
             }
             $repository = $this->app->getClient()->addRepository($repository);
             $this->addRepository($repository->getName(), $repository, $repository->getTitle());
         }
     }
 }