Class 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 Detail

      • 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 Detail

      • ModelEntry

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

      • 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.