Interface ServerPluginProvider
- All Known Implementing Classes:
JarPluginProvider
Allows to load one plugin from one external file or one directory by declaring the ability to handle it.
In order to load multiple files into a single plugin, group them into a directory tree and then load the directory root as a single plugin.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
Descriptor of the Plugin that ServerPluginProvider has to load. -
Method Summary
Modifier and TypeMethodDescriptionget
(Path srcPath, org.eclipse.jgit.internal.storage.file.FileSnapshot snapshot, ServerPluginProvider.PluginDescription pluginDescriptor) Loads an external file or directory into a Server plugin.getPluginName
(Path srcPath) Returns the plugin name of an external file or directoryReturns the plugin name of this provider.boolean
Declares the availability to manage an external file or directory
-
Method Details
-
handles
Declares the availability to manage an external file or directory- Parameters:
srcPath
- the external file or directory- Returns:
- true if file or directory can be loaded into a Server Plugin
-
getPluginName
Returns the plugin name of an external file or directoryShould be called only if
handles(srcFile)
returns true and thus srcFile is a supported plugin format. An IllegalArgumentException is thrown otherwise as srcFile is not a valid file format for extracting its plugin name.- Parameters:
srcPath
- external file or directory- Returns:
- plugin name
-
get
ServerPlugin get(Path srcPath, org.eclipse.jgit.internal.storage.file.FileSnapshot snapshot, ServerPluginProvider.PluginDescription pluginDescriptor) throws InvalidPluginException Loads an external file or directory into a Server plugin.Should be called only if
handles(srcFile)
returns true and thus srcFile is a supported plugin format. An IllegalArgumentException is thrown otherwise as srcFile is not a valid file format for extracting its plugin name.- Parameters:
srcPath
- external file or directorysnapshot
- snapshot of the external filepluginDescriptor
- descriptor of the ServerPlugin to load- Throws:
InvalidPluginException
- if plugin is supposed to be handled but cannot be loaded for any other reason
-
getProviderPluginName
String getProviderPluginName()Returns the plugin name of this provider.Allows to identify which plugin provided the current ServerPluginProvider by returning the plugin name. Helpful for troubleshooting plugin loading problems.
- Returns:
- plugin name of this provider
-