Interface IPluginEntity<META extends IPluginFileEntity<?,?,?>,DATA extends IFileDataEntity<META>,CONFIG extends IFileDataEntity<META>>

Type Parameters:
META - File entity with the file meta data of the plugin file, such as the file size.
DATA - Data entity with the binary data of the plugin JAR.
CONFIG - Data entity with the properties configuration file of the plugin.
All Superinterfaces:
Comparable<de.xima.cmn.dao.interfaces.IEntity<Long>>, IDescriptionProviding, de.xima.cmn.dao.interfaces.IEntity<Long>, INameProviding, IUUIDEntity, Serializable
All Known Implementing Classes:
APluginEntity, ClientPlugin, SystemPlugin

public interface IPluginEntity<META extends IPluginFileEntity<?,?,?>,DATA extends IFileDataEntity<META>,CONFIG extends IFileDataEntity<META>> extends IUUIDEntity, INameProviding, IDescriptionProviding, de.xima.cmn.dao.interfaces.IEntity<Long>
A plugin entity, either scoped to a particular client or to the system.
Author:
XIMA MEDIA GmbH
  • Method Details

    • getFileEntity

      META getFileEntity()
      Returns:
      File entity with the file meta data of the plugin file, such as the file size.
    • getPluginFileKey

      String getPluginFileKey()
      Returns:
      The plugin file key as reported by the plugin, part of the ID that identifies the plugin. Plugins do not have a file key when they consist of only a single file.
    • getPluginId

      PluginID getPluginId()
      Gets the ID of this plugin, if it has one.
      Returns:
      The ID of this plugin, or null if this plugin does not have an ID.
    • getPluginKey

      String getPluginKey()
      Returns:
      The plugin key as reported by the plugin, part of the ID that identifies the plugin. All plugins must have a plugin key, but legacy plugins may not have such a key yet.
    • getPluginRepository

      String getPluginRepository()
      Returns:
      The repository of the plugin. Defaults to REPOSITORY_NONE. When a repository exists, the plugin can e.g. be updated automatically.
    • getRuntimeKey

      String getRuntimeKey()
      Returns:
      The runtime key of the plugin, the UUID of the database entity.
    • getScopeKey

      String getScopeKey()
      Returns:
      The scope key of this plugin, either the client UUID for client-scoped plugins or SYSTEM_SCOPE_KEY for system scoped plugins.
    • isActive

      boolean isActive()
      Returns:
      Whether this plugin is currently enabled.
    • isRemoteSync

      boolean isRemoteSync()
      Returns:
      Whether this plugin is allowed to be enabled on the frontend server.
    • setActive

      void setActive(boolean active)
      Parameters:
      active - Whether this plugin is currently enabled.
    • setBeschreibung

      void setBeschreibung(String description)
      Parameters:
      description - Internal description of the plugin.
    • setName

      void setName(String name)
      Parameters:
      name - The name of the plugin, e.g. the file name.
    • setPluginFileKey

      void setPluginFileKey(String pluginFileKey)
      Parameters:
      pluginFileKey - The plugin file key as reported by the plugin, part of the ID that identifies the plugin. Plugins do not have a file key when they consist of only a single file.
    • setPluginKey

      void setPluginKey(String pluginKey)
      Parameters:
      pluginKey - The plugin key as reported by the plugin, part of the ID that identifies the plugin. All plugins must have a plugin key, but legacy plugins may not have such a key yet.
    • setPluginRepository

      void setPluginRepository(String pluginRepository)
      Parameters:
      pluginRepository - The repository of the plugin. Defaults to REPOSITORY_NONE. When a repository exists, the plugin can e.g. be updated automatically.
    • setRemoteSync

      void setRemoteSync(boolean sync)
      Parameters:
      sync - Whether this plugin is allowed to be enabled on the frontend server.
    • getServerRestrictionType

      EPluginServerRestrictionType getServerRestrictionType()
      Returns:
      server type to which the installation of a plugin should be restricted
    • setServerRestrictionType

      void setServerRestrictionType(EPluginServerRestrictionType serverRestrictionType)
      Parameters:
      serverRestrictionType - server type to which the installation of a plugin should be restricted