Package com.ultikits.ultitools.manager
Class PluginDependencyResolver.PluginNode
java.lang.Object
com.ultikits.ultitools.manager.PluginDependencyResolver.PluginNode
- Enclosing class:
PluginDependencyResolver
Represents a dependency graph node containing plugin class and its dependencies.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Class<? extends UltiToolsPlugin> private final Stringprivate final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAllDependencies(Set<String> availablePlugins) Deprecated, for removal: This API element is subject to removal in a future version.Gets all dependencies (hard + soft) that exist in the available plugins, resolving each soft-dependency entry throughaliasMapbefore checking availability so it may name either a simple class name or aplugin.ymlname (D-12).The plugins this one should load after, as declared in its ownplugin.ymlloadAfter:list.Class<? extends UltiToolsPlugin> This module'splugin.ymlname:value, ornullif its code source has no readableplugin.yml.
-
Field Details
-
pluginClass
-
pluginName
-
hardDependencies
-
softDependencies
-
loadBefore
-
loadAfter
-
pluginYmlName
-
-
Constructor Details
-
PluginNode
-
-
Method Details
-
getPluginClass
-
getPluginName
-
getHardDependencies
-
getSoftDependencies
-
getLoadBefore
-
getLoadAfter
The plugins this one should load after, as declared in its ownplugin.ymlloadAfter:list. An entry naming a module that is not installed is inert (Paper parity) - onlydependstreats an absent target as an error.- Returns:
- the declared loadAfter targets, by raw declared name (not yet alias-resolved)
- Since:
- 6.3.0
-
getPluginYmlName
This module'splugin.ymlname:value, ornullif its code source has no readableplugin.yml. Used to build the alias map inPluginDependencyResolver.resolve(List)so a dependency entry can name a module by either its simple class name or itsplugin.ymlname.- Returns:
- the declared plugin.yml name, or null
- Since:
- 6.3.0
-
getAllDependencies
@Deprecated(since="6.3.0", forRemoval=true) public Set<String> getAllDependencies(Set<String> availablePlugins) Deprecated, for removal: This API element is subject to removal in a future version.usegetAllDependencies(Set, Map), which resolves each entry through the plugin.yml-name alias map (D-12) before checking availabilityGets all dependencies (hard + soft) that exist in the available plugins.- Scheduled removal version:
- 6.4.0
-
getAllDependencies
Gets all dependencies (hard + soft) that exist in the available plugins, resolving each soft-dependency entry throughaliasMapbefore checking availability so it may name either a simple class name or aplugin.ymlname (D-12).- Parameters:
availablePlugins- the plugin names present in this resolvealiasMap- maps a declared name (simple class name or plugin.yml name) to the canonical node name (always a simple class name)- Returns:
- the combined hard + resolvable-soft dependency set, by raw declared name
- Since:
- 6.3.0
-
getAllDependencies(Set, Map), which resolves each entry through the plugin.yml-name alias map (D-12) before checking availability