Class PluginMetadataHelper
- java.lang.Object
-
- org.jivesoftware.openfire.container.PluginMetadataHelper
-
public class PluginMetadataHelper extends Object
Various helper methods to retrieve plugin metadat from plugin.xml files.- Author:
- Guus der Kinderen, guus.der.kinderen@gmail.com
-
-
Constructor Summary
Constructors Constructor Description PluginMetadataHelper()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static String
getAuthor(Path pluginDir)
Returns the author of a plugin.static String
getAuthor(Plugin plugin)
Returns the author of a plugin.static String
getCanonicalName(Path pluginPath)
Returns the canonical name for the plugin, derived from the plugin directory or archive file name.static String
getCanonicalName(Plugin plugin)
Returns the canonical name for the plugin, derived from the plugin archive file name.static URL
getChangelog(Path pluginDir)
static URL
getChangelog(Plugin plugin)
static String
getDatabaseKey(Path pluginDir)
Returns the database schema key of a plugin, if it exists.static String
getDatabaseKey(Plugin plugin)
Returns the database schema key of a plugin, if it exists.static int
getDatabaseVersion(Path pluginDir)
Returns the database schema version of a plugin, if it exists.static int
getDatabaseVersion(Plugin plugin)
Returns the database schema version of a plugin, if it exists.static String
getDescription(Path pluginDir)
Returns the description of a plugin.static String
getDescription(Plugin plugin)
Returns the description of a plugin.static URL
getIcon(Path pluginDir)
static URL
getIcon(Plugin plugin)
static String
getLicense(Path pluginDir)
Returns the license agreement type that the plugin is governed by.static String
getLicense(Plugin plugin)
Returns the license agreement type that the plugin is governed by.static JavaSpecVersion
getMinJavaVersion(Path pluginDir)
Returns the minimum Java specification version this plugin needs to run.static JavaSpecVersion
getMinJavaVersion(Plugin plugin)
Returns the minimum Java specification version this plugin needs to run.static Version
getMinServerVersion(Path pluginDir)
Returns the minimum server version this plugin can run within.static Version
getMinServerVersion(Plugin plugin)
Returns the minimum server version this plugin can run within.static String
getName(Path pluginDir)
Returns the name of a plugin.static String
getName(Plugin plugin)
Returns the name of a plugin.static String
getParentPlugin(Path pluginDir)
Returns the name of the directory of the parent for this plugin.static String
getParentPlugin(Plugin plugin)
Returns the name of the directory of the parent for this plugin.static Version
getPriorToServerVersion(Path pluginDir)
Returns the server version up, but not including, in which this plugin can run within.static Version
getPriorToServerVersion(Plugin plugin)
Returns the server version up, but not including, in which this plugin can run within.static URL
getReadme(Path pluginDir)
static URL
getReadme(Plugin plugin)
static Version
getVersion(Path pluginDir)
Returns the version of a plugin.static Version
getVersion(Plugin plugin)
Returns the version of a plugin.static boolean
isCsrfProtectionEnabled(Path pluginDir)
static boolean
isCsrfProtectionEnabled(Plugin plugin)
-
-
-
Method Detail
-
getParentPlugin
public static String getParentPlugin(Plugin plugin)
Returns the name of the directory of the parent for this plugin. The value is retrieved from the plugin.xml file of the plugin (which is casted down to lower-case). If the value could not be found,null
will be returned.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the parent plugin's directory name
-
getParentPlugin
public static String getParentPlugin(Path pluginDir)
Returns the name of the directory of the parent for this plugin. The value is retrieved from the plugin.xml file of the plugin (which is casted down to lower-case). If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the parent plugin's directory name
-
getCanonicalName
public static String getCanonicalName(Plugin plugin)
Returns the canonical name for the plugin, derived from the plugin archive file name. Note that this value can be different from the 'human readable' plugin name, as returned bygetName(Path)
. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's canonical name.
-
getCanonicalName
public static String getCanonicalName(Path pluginPath)
Returns the canonical name for the plugin, derived from the plugin directory or archive file name. The provided path can refer to either the plugin archive file, or the directory in which the archive was extracted. Note that this value can be different from the 'human readable' plugin name, as returned bygetName(Path)
.- Parameters:
pluginPath
- the path of the plugin directory, or plugin archive file.- Returns:
- the plugin's canonical name.
-
getName
public static String getName(Plugin plugin)
Returns the name of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this value is a 'human readable' name, which can be distinct from the name of the plugin directory as returned bygetCanonicalName(Path)
. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's human-readable name.
-
getName
public static String getName(Path pluginDir)
Returns the name of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this value is a 'human readable' name, which can be distinct from the name of the plugin directory as returned bygetCanonicalName(Path)
.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's human-readable name.
-
getDescription
public static String getDescription(Plugin plugin)
Returns the description of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's description.
-
getDescription
public static String getDescription(Path pluginDir)
Returns the description of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's description.
-
getAuthor
public static String getAuthor(Plugin plugin)
Returns the author of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's author.
-
getAuthor
public static String getAuthor(Path pluginDir)
Returns the author of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's author.
-
getVersion
public static Version getVersion(Plugin plugin)
Returns the version of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's version.
-
getVersion
public static Version getVersion(Path pluginDir)
Returns the version of a plugin. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's version.
-
getMinServerVersion
public static Version getMinServerVersion(Plugin plugin)
Returns the minimum server version this plugin can run within. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's minimum server version (possibly null).
-
getMinServerVersion
public static Version getMinServerVersion(Path pluginDir)
Returns the minimum server version this plugin can run within. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's minimum server version (possibly null).
-
getPriorToServerVersion
public static Version getPriorToServerVersion(Plugin plugin)
Returns the server version up, but not including, in which this plugin can run within. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's maximum server version (possibly null).
-
getPriorToServerVersion
public static Version getPriorToServerVersion(Path pluginDir)
Returns the server version up, but not including, in which this plugin can run within. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's maximum server version (possibly null).
-
getMinJavaVersion
public static JavaSpecVersion getMinJavaVersion(Plugin plugin)
Returns the minimum Java specification version this plugin needs to run. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's minimum Java version (possibly null).
-
getMinJavaVersion
public static JavaSpecVersion getMinJavaVersion(Path pluginDir)
Returns the minimum Java specification version this plugin needs to run. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's minimum Java version (possibly null).
-
isCsrfProtectionEnabled
public static boolean isCsrfProtectionEnabled(Plugin plugin)
-
isCsrfProtectionEnabled
public static boolean isCsrfProtectionEnabled(Path pluginDir)
-
getDatabaseKey
public static String getDatabaseKey(Plugin plugin)
Returns the database schema key of a plugin, if it exists. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's database schema key or
null
if it doesn't exist.
-
getDatabaseKey
public static String getDatabaseKey(Path pluginDir)
Returns the database schema key of a plugin, if it exists. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,null
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's database schema key or
null
if it doesn't exist.
-
getDatabaseVersion
public static int getDatabaseVersion(Plugin plugin)
Returns the database schema version of a plugin, if it exists. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,-1
will be returned. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's database schema version or
-1
if it doesn't exist.
-
getDatabaseVersion
public static int getDatabaseVersion(Path pluginDir)
Returns the database schema version of a plugin, if it exists. The value is retrieved from the plugin.xml file of the plugin. If the value could not be found,-1
will be returned.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's database schema version or
-1
if it doesn't exist.
-
getLicense
public static String getLicense(Plugin plugin)
Returns the license agreement type that the plugin is governed by. The value is retrieved from the plugin.xml file of the plugin. Note that this method will return data only for plugins that have successfully been installed. To obtain data from plugin (directories) that have not (yet) been installed, refer to the overloaded method that takes a Path argument.- Parameters:
plugin
- The plugin (cannot be null)- Returns:
- the plugin's license agreement.
-
getLicense
public static String getLicense(Path pluginDir)
Returns the license agreement type that the plugin is governed by. The value is retrieved from the plugin.xml file of the plugin.- Parameters:
pluginDir
- the path of the plugin directory.- Returns:
- the plugin's license agreement.
-
-