Class PluginDescriptor

    • Constructor Detail

      • PluginDescriptor

        public PluginDescriptor()
        Empty default constructor.
      • PluginDescriptor

        public PluginDescriptor​(String id,
                                String name,
                                String version,
                                String minBeaTunesVersion,
                                String maxBeaTunesVersion)
        Convenience constructor for the most important properties.
        Parameters:
        id - identifier
        name - display name of the plugin
        version - version of the plugin
        minBeaTunesVersion - min (incl.) version of beaTunes required for the plugin to work
        maxBeaTunesVersion - max (incl.) version of beaTunes required for the plugin to work
    • Method Detail

      • getName

        public String getName()
        Display name for a plugin.
        Returns:
        display name
      • setName

        public void setName​(String name)
        Sets display name for a plugin.
        Parameters:
        name - display name
      • getId

        public String getId()
        Returns the unique id for this plugin. Note that this id is used when trying to decide whether a newer version of the same plugin is available. As a consequence the same plugin must re-use the same id.
        Returns:
        id
      • setId

        public void setId​(String id)
        Sets the unique id. It is recommended to use reverse DNS style namespace prefixes, i.e. com.tagtraum.YOUR_ID.
        Parameters:
        id - plugin (bundle) id
      • getDescription

        public String getDescription()
        Plugin description.
        Returns:
        description
      • setDescription

        public void setDescription​(String description)
        Description.
        Parameters:
        description - description
      • getSmallIcon

        public URI getSmallIcon()

        Relative or absolute path to a 32x32 (64x64, if you want the icon to look good on high resolution displays)icon representing the plugin. Relative paths are resolved in the plugin's jar, absolute paths may also specify a protocol like HTTP or FILE.

        Relative example: new URI("/com/tagtraum/beatunes/beaTunes_32.png") will be resolved to the package com.tagtraum.beatunes in the plugin's JAR. The file beaTunes_32.png will be loaded from that package.

        Absolute example: new URI("https://www.beatunes.com/images/beaTunes_32.png") will be resolved to the online resource at that address. Obviously one needs to be online to load this icon.

        Returns:
        a small (32x32/64x64 pixels) icon URI
      • setSmallIcon

        public void setSmallIcon​(URI smallIcon)
        Parameters:
        smallIcon - 32x32 pixels icon URI
        See Also:
        getSmallIcon()
      • getLargeIcon

        public URI getLargeIcon()

        Relative or absolute path to a 128x128 (256x256, if you want the icon to look good on high resolution displays) icon representing the plugin. Relative paths are resolved in the plugin's jar, absolute paths may also specify a protocol like HTTP or FILE.

        Relative example: new URI("/com/tagtraum/beatunes/beaTunes_128.png") will be resolved to the package com.tagtraum.beatunes in the plugin's JAR. The file beaTunes_32.png will be loaded from that package.

        Absolute example: new URI("https://www.beatunes.com/images/beaTunes_128.png") will be resolved to the online resource at that address. Obviously one needs to be online to load this icon.

        Returns:
        a large (128x128/256x256 pixels) icon URI
      • setLargeIcon

        public void setLargeIcon​(URI largeIcon)
        Parameters:
        largeIcon - large, 128x128 pixels, icon URI
        See Also:
        getLargeIcon()
      • getChangeNotes

        public String getChangeNotes()
        Plain text change/version notes for a plugin.
        Returns:
        notes
      • setChangeNotes

        public void setChangeNotes​(String changeNotes)
        Set the change notes.
        Parameters:
        changeNotes - plain text notes, may contain newline ("\n") characters.
      • getVendorName

        public String getVendorName()
        The plugin's vendor name, e.g. "tagtraum industries".
        Returns:
        vendor name
      • setVendorName

        public void setVendorName​(String vendorName)
        Parameters:
        vendorName - vendor name
        See Also:
        getVendorName()
      • getVendorURL

        public URL getVendorURL()
      • setVendorURL

        public void setVendorURL​(URL vendorURL)
      • getVendorEmail

        public String getVendorEmail()
      • setVendorEmail

        public void setVendorEmail​(String vendorEmail)
      • getVendorLogo

        public URI getVendorLogo()
      • setVendorLogo

        public void setVendorLogo​(URI vendorLogo)
      • getVersion

        public Version getVersion()
        Version of the plugin.
        Returns:
        version
      • setVersion

        public void setVersion​(Version version)
        Sets the version of this plugin
        Parameters:
        version - version
      • getMinBeaTunesVersion

        public Version getMinBeaTunesVersion()
        Minimum beaTunes version required to run this plugin.
        Returns:
        min beaTunes version
      • setMinBeaTunesVersion

        public void setMinBeaTunesVersion​(Version minBeaTunesVersion)
        Sets the minimum beaTunes version required to run this plugin.
        Parameters:
        minBeaTunesVersion - min version
      • getMaxBeaTunesVersion

        public Version getMaxBeaTunesVersion()
        Maximum beaTunes version required to run this plugin.
        Returns:
        max version
      • setMaxBeaTunesVersion

        public void setMaxBeaTunesVersion​(Version maxBeaTunesVersion)
        Sets the maximum beaTunes version still supported by this plugin. This should be set to a reasonable value, e.g. if the min version is 3.0.0, the max version should be set to 3.9.9, assuming the API stays stable of the course of the major version 3 release of beaTunes.
        Parameters:
        maxBeaTunesVersion - max beaTunes version
      • getLicenseName

        public String getLicenseName()
      • setLicenseName

        public void setLicenseName​(String licenseName)
      • getLicenseURL

        public URL getLicenseURL()
      • setLicenseURL

        public void setLicenseURL​(URL licenseURL)