Class ModelEntry

java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.pde.core.plugin.ModelEntry
All Implemented Interfaces:
IAdaptable

public class ModelEntry extends PlatformObject
A ModelEntry object has an ID and keeps track of all workspace plug-ins and target plug-ins that have that ID.

This class is not meant to be extended or instantiated by clients.

Since:
3.3
Restriction:
This class is not intended to be subclassed by clients.
Restriction:
This class is not intended to be instantiated by clients.
  • Field Details

    • fWorkspaceEntries

      protected ArrayList<IPluginModelBase> fWorkspaceEntries
      The list of workspace models with the same entry ID
    • fExternalEntries

      protected ArrayList<IPluginModelBase> fExternalEntries
      The list of external models with the same entry ID
  • Constructor Details

    • ModelEntry

      public ModelEntry(String id)
      Constructor
      Parameters:
      id - the entry ID
  • Method Details

    • getWorkspaceModels

      public IPluginModelBase[] getWorkspaceModels()
      Returns all the workspace plug-ins that have the model entry ID
      Returns:
      an array of workspace plug-ins that have the model entry ID
    • getExternalModels

      public IPluginModelBase[] getExternalModels()
      Returns all plug-ins in the target platform that have the model entry ID. The returned result contains both plug-ins that are enabled (ie. checked on the Plug-in Development > Target Platform preference page) and disabled.
      Returns:
      an array of plug-ins in the target platform that have the model entry ID
    • getModel

      public IPluginModelBase getModel()
      Returns the plug-in model for the best match plug-in with the given ID. A null value is returned if no such bundle is found in the workspace or target platform.

      A workspace plug-in is always preferably returned over a target plug-in. A plug-in that is checked/enabled on the Target Platform preference page is always preferably returned over a target plug-in that is unchecked/disabled.

      In the case of a tie among workspace plug-ins or among target plug-ins, the plug-in with the highest version is returned.

      In the case of a tie among more than one suitable plug-in that have the same version, one of those plug-ins is randomly returned.

      Returns:
      the plug-in model for the best match plug-in with the given ID
    • getActiveModels

      public IPluginModelBase[] getActiveModels()
      Returns all the plug-ins, with the model entry ID, that are currently active.

      Workspace plug-ins are always active. Target plug-ins are only active if:

      • they are checked on the Plug-in Development > Target Platform preference page
      • there does not exist a workspace plug-in that has the same ID
      Returns:
      an array of the currently active plug-ins with the model entry ID
    • getId

      public String getId()
      Returns the model entry ID
      Returns:
      the model entry ID
    • getModel

      public IPluginModelBase getModel(BundleDescription desc)
      Return the plug-in model associated with the given bundle description or null if none is found.
      Parameters:
      desc - the given bundle description
      Returns:
      the plug-in model associated with the given bundle description if such a model exists.
    • hasWorkspaceModels

      public boolean hasWorkspaceModels()
      Returns true if there are workspace plug-ins associated with the ID of this model entry; falseotherwise.
      Returns:
      true if there are workspace plug-ins associated with the ID of this model entry; falseotherwise.
    • hasExternalModels

      public boolean hasExternalModels()
      Returns true if there are target plug-ins associated with the ID of this model entry; falseotherwise.
      Returns:
      true if there are target plug-ins associated with the ID of this model entry; falseotherwise.