Class PluginStoreLoader


  • public final class PluginStoreLoader
    extends Object
    Loads the model for the plugin store from the remote repository.
    Since:
    8.0.0
    Author:
    XIMA MEDIA GmbH
    • Constructor Detail

      • PluginStoreLoader

        public PluginStoreLoader​(String storeKey,
                                 String licenseKey)
        Creates a new loader that loads plugin store items from the given store, using the license key for retrieving non-public items.
        Parameters:
        storeKey - Key of the store from which to retrieve items.
        licenseKey - License key for retrieving items.
    • Method Detail

      • loadChangelogEntries

        public <R> StageChain<List<PluginChangelogEntry>,​R> loadChangelogEntries​(IPublicSyncWebSocketContext pc,
                                                                                       String itemKey,
                                                                                       Locale locale,
                                                                                       String licenseKey)
        Loads the list of all changelog entries for the given store item.
        Type Parameters:
        R - Type of the eventual return value for the stage chain.
        Parameters:
        pc - Context for accessing the PROMA API.
        itemKey - Key of the store item.
        locale - Locale for localizing the changelog.
        licenseKey - key of the current product license
        Returns:
        A list with all changelog items, sorted from the hightest version to the lower version.
      • loadPublicItems

        public <R> StageChain<PluginStoreModel,​R> loadPublicItems​(IPublicPromaInvocationContext pc,
                                                                        String productVersion,
                                                                        Locale locale,
                                                                        List<VersionedPluginGroupMeta> installedPlugins,
                                                                        String licenseKey)
        Loads all freely available plugins that are compatible with the given product version.
        Type Parameters:
        R - Type of the eventual return value for the stage chain.
        Parameters:
        pc - Context for accessing the PROMA API.
        productVersion - Product version for which to retrieve the items.
        locale - Locale for localizing the item's names, descriptions, and tags.
        installedPlugins - All list of all installed plugins.
        licenseKey - The license key of the current license. This could be either the system license or a client license.
        Returns:
        A new plugin store model with the available items.
      • loadPublicItems

        public <R> StageChain<PluginStoreModel,​R> loadPublicItems​(IPublicPromaInvocationContext pc,
                                                                        String productVersion,
                                                                        Locale locale,
                                                                        Map<String,​com.google.common.collect.Range<com.vdurmont.semver4j.Semver>> installedPlugins,
                                                                        String licenseKey)
        Loads all freely available plugins that are compatible with the given product version.
        Type Parameters:
        R - Type of the eventual return value for the stage chain.
        Parameters:
        pc - Context for accessing the PROMA API.
        productVersion - Product version for which to retrieve the items.
        locale - Locale for localizing the item's names, descriptions, and tags.
        installedPlugins - All list of all installed plugins. A map from the plugin key to the range of versions of all sub plugins with the same plugin key (and different file keys).
        licenseKey - The license key of the current license. This could be either the system license or a client license.
        Returns:
        A new plugin store model with the available items.