Class Plugins

  • All Implemented Interfaces:
    IsDefaultPlugins

    public class Plugins
    extends AbstractModel<Options,​IsDefaultPlugins>
    implements IsDefaultPlugins
    Definitions about plugins options. This is used to configure plugins (mainly the global ones).
    Every plugin could have own configuration structure.
    The java script object key is the plugin id.
    Author:
    Andrea "Stock" Stocchero
    • Constructor Detail

      • Plugins

        protected Plugins​(ChartEnvelop<Plugins> envelop)
        Creates the object wrapping another plugin.
        This constructor is used ONLY from GlobalOptions.
        Parameters:
        envelop - envelop passed by chart package in oredr to wrap another plugin.
    • Method Detail

      • getAllIds

        public final List<Key> getAllIds()
        Returns the unmodifiable list of registered plugin ids.
        Returns:
        the unmodifiable list of registered plugin ids
      • setEnabled

        public final void setEnabled​(String pluginId,
                                     boolean enabled)
        Sets if a global plugin must be enabled or not.
        Parameters:
        pluginId - plugin id.
        enabled - false disable a global plugin.
      • setEnabled

        public final void setEnabled​(ConfigurationEnvelop<DefaultPluginId> envelop,
                                     boolean enabled)
        Sets if a default CHART.JS plugin must be enabled or not.
        Callable only for chart configuration scope (no global or other).
        Parameters:
        envelop - default CHART.JS plugin instance.
        enabled - false disable a default CHART.JS plugin.
      • isEnabled

        public final boolean isEnabled​(DefaultPluginId pluginId)
        Returns if a plugin is enabled or not.
        Parameters:
        pluginId - plugin id.
        Returns:
        false if a global plugin is not enabled otherwise true.
      • isEnabled

        public final boolean isEnabled​(String pluginId)
        Returns if a plugin is enabled or not.
        Specified by:
        isEnabled in interface IsDefaultPlugins
        Parameters:
        pluginId - plugin id.
        Returns:
        false if a plugin is not enabled otherwise true.
      • hasEnabled

        public final boolean hasEnabled​(String pluginId)
        Returns if a global plugin has been set or not.
        Parameters:
        pluginId - plugin id.
        Returns:
        false if a global plugin has not been set otherwise true.
      • removeOptions

        public final void removeOptions​(String pluginId)
        Removes the plugin options.
        Parameters:
        pluginId - plugin id.
      • setEmptyOptions

        public void setEmptyOptions​(String pluginId)
        Sets an empty configuration for the plugin.
        The plugin will use the default configuration
        Parameters:
        pluginId - plugin id.
      • setOptions

        public <T extends AbstractPluginOptions> void setOptions​(T options)
        Sets the plugin options.
        Type Parameters:
        T - type of plugin options to store
        Parameters:
        options - plugin options used to configure the plugin
      • setOptions

        public <T extends AbstractPluginOptions> void setOptions​(String pluginId,
                                                                 T options)
        Sets the plugin options.
        If passed options is null, the configuration of plugin will be removed.
        Type Parameters:
        T - type of plugin options to store
        Parameters:
        pluginId - plugin id.
        options - plugin options used to configure the plugin.
        Pass null to remove the configuration if exist.
      • hasOptions

        public final boolean hasOptions​(String pluginId)
        Checks if there is any options for a specific plugin, by its id.
        Specified by:
        hasOptions in interface IsDefaultPlugins
        Parameters:
        pluginId - plugin id.
        Returns:
        true if there is an options, otherwise false.
      • getOptions

        public final <T extends AbstractPluginOptions> T getOptions​(AbstractPluginOptionsFactory<T> factory)
        Returns the plugin options, if exist.
        It uses a factory instance to create a plugin options.
        If factory argument is not consistent, null is returned.
        Type Parameters:
        T - type of plugin options to return
        Parameters:
        factory - factory instance to create a plugin options
        Returns:
        plugin options used to configure the plugin or an empty object if not exist.
        If factory argument is not consistent, null is returned.
      • getOptions

        public final <T extends AbstractPluginOptions> T getOptions​(String pluginId,
                                                                    AbstractPluginOptionsFactory<T> factory)
        Returns the plugin options, if exist.
        It uses a factory instance to create a plugin options.
        If factory argument is not consistent, null is returned.
        Specified by:
        getOptions in interface IsDefaultPlugins
        Type Parameters:
        T - type of plugin options to return
        Parameters:
        pluginId - plugin id.
        factory - factory instance to create a plugin options
        Returns:
        plugin options used to configure the plugin or an empty object if not exist.
        If factory argument is not consistent, null is returned.