Interface ServerPluginProvider
-
- All Known Implementing Classes:
JarPluginProvider
public interface ServerPluginProvider
Provider of one Server plugin from one external fileAllows 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
Nested Classes Modifier and Type Interface Description static class
ServerPluginProvider.PluginDescription
Descriptor of the Plugin that ServerPluginProvider has to load.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ServerPlugin
get(Path srcPath, org.eclipse.jgit.internal.storage.file.FileSnapshot snapshot, ServerPluginProvider.PluginDescription pluginDescriptor)
Loads an external file or directory into a Server plugin.String
getPluginName(Path srcPath)
Returns the plugin name of an external file or directoryString
getProviderPluginName()
Returns the plugin name of this provider.boolean
handles(Path srcPath)
Declares the availability to manage an external file or directory
-
-
-
Method Detail
-
handles
boolean handles(Path srcPath)
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
String getPluginName(Path srcPath)
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
-
-