Class ModelKnowledge


  • public class ModelKnowledge
    extends Object
    Manages the discovered knowledge for a specific model, including type hierarchies and usage information.
    Author:
    Luca Frosini (ISTI - CNR)
    • Field Detail

      • created

        protected boolean created
        Whether the knowledge base has been created.
      • packages

        protected Set<Package> packages
        The set of packages to be scanned.
    • Constructor Detail

      • ModelKnowledge

        public ModelKnowledge()
        Constructs a new ModelKnowledge instance.
    • Method Detail

      • getUsageKnowledge

        public UsageKnowledge getUsageKnowledge​(AccessType accessType)
        Returns the usage knowledge for a specific access type.
        Parameters:
        accessType - The access type.
        Returns:
        The UsageKnowledge for the type.
        Throws:
        RuntimeException - if the knowledge has not yet been created.
      • createKnowledge

        public void createKnowledge​(boolean force)
                             throws Exception
        Creates the knowledge base, with an option to force recreation.
        Parameters:
        force - true to force recreation of the knowledge base.
        Throws:
        Exception - if an error occurs during creation.
      • addPackages

        public void addPackages​(Collection<Package> packages)
        Adds a collection of packages to be scanned for model types.
        Parameters:
        packages - The packages to add.
      • createKnowledge

        public void createKnowledge()
                             throws Exception
        Creates the knowledge base by discovering types, building hierarchies, and gathering usage information.
        Throws:
        Exception - if an error occurs during creation.
      • getClassesTree

        public Tree<Class<Element>> getClassesTree​(AccessType accessType)
        Returns the class hierarchy tree for a specific access type.
        Parameters:
        accessType - The access type.
        Returns:
        The Tree of classes.
      • getDiscovery

        public Discovery<Element> getDiscovery​(AccessType accessType)
        Returns the discovery instance for a specific access type.
        Parameters:
        accessType - The access type.
        Returns:
        The Discovery instance.