Interface DependencyManager

All Superinterfaces:
AutoCloseable
All Known Implementing Classes:
DependencyManagerImpl

public interface DependencyManager extends AutoCloseable
Loads and manages runtime dependencies for the plugin.
  • Method Details

    • loadDependencies

      void loadDependencies(Set<Dependency> dependencies)
      Loads dependencies.
      Parameters:
      dependencies - the dependencies to load
    • loadStorageDependencies

      void loadStorageDependencies(Set<StorageType> storageTypes, boolean redis, boolean rabbitmq, boolean nats)
      Loads storage dependencies.
      Parameters:
      storageTypes - the storage types in use
      redis - if redis is being used
      rabbitmq - if rabbitmq is being used
      nats - if nats is being used
    • obtainClassLoaderWith

      ClassLoader obtainClassLoaderWith(Set<Dependency> dependencies)
      Obtains an isolated classloader containing the given dependencies.
      Parameters:
      dependencies - the dependencies
      Returns:
      the classloader
    • close

      void close()
      Specified by:
      close in interface AutoCloseable