Package de.xima.fc.pluginstore
Class PluginStoreLoader
- java.lang.Object
-
- de.xima.fc.pluginstore.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 Summary
Constructors Constructor Description 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.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <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.<R> StageChain<PluginStoreModel,R>
loadPublicItems(IPublicPromaInvocationContext pc, String productVersion, Locale locale, List<VersionedPluginGroupMeta> installedPlugins, Set<PluginID> overloadedPlugins, String licenseKey)
Loads all freely available plugins that are compatible with the given product version.<R> StageChain<PluginStoreModel,R>
loadPublicItems(IPublicPromaInvocationContext pc, String productVersion, Locale locale, Map<String,de.xima.fc.pluginstore.PluginStoreLoader.PluginStoreItemMeta> installedPlugins, String licenseKey)
Loads all freely available plugins that are compatible with the given product version.
-
-
-
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, Set<PluginID> overloadedPlugins, 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.overloadedPlugins
- The IDs of all plugins that are overloaded.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,de.xima.fc.pluginstore.PluginStoreLoader.PluginStoreItemMeta> 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.
-
-