code: public PluginRegistry load() throws PluginException {
  
          List<Path> pluginFiles = getPluginsProvider().provide(getPluginsDirectory());
  
          PluginRegistry pluginRegistry = new PluginRegistryContainer();
  
          // Loading information about all plugins first
          for (Path pluginFile : pluginFiles) {
              PluginMetadata pluginMetadata = getManifestReader().read(pluginFile);
              pluginRegistry.addPlugin(pluginMetadata);
          }
  
          // Iterating over the entire plugin set, checking for dependency resolution problems and loading classes
          for (String pluginName : pluginRegistry.getPluginNames()) {
              Optional<PluginMetadata> pluginMetadata = pluginRegistry.getPlugin(pluginName);
              if (pluginMetadata.isPresent()) {
                  getDependencyChecker().check(pluginRegistry, pluginMetadata.get());
  
                  ScanResult scanResult = getClassesScanner().scan(
                          pluginMetadata.get().getPath(),
                          getExtensionPoints()
                  );
                  for (Class extensionPoint : scanResult.getContents().getExtensionPoints()) {
                      pluginRegistry.addImplementations(
                              pluginMetadata.get(),
                              extensionPoint,
                              scanResult.getContents().getImplementations(extensionPoint)
                      );
                  }
                  pluginRegistry.addClassLoader(pluginMetadata.get(), scanResult.getClassLoader());
  
                  List<Path> resources = getResourcesScanner().scan(pluginMetadata.get().getPath());
                  pluginRegistry.addResources(pluginMetadata.get(), resources);
              }
          }
          return pluginRegistry;
      }
docs: Returns {@link PluginRegistry} storing information about loaded classes
  
  @return plugin registry with loaded classes
  @throws org.meridor.stecker.PluginException when something goes wrong during plugins loading