Class Topic

    • Constructor Detail

      • Topic

        public Topic​(TopicIF topicIF,
                     TopicMap tm)
        Constructor.
        Parameters:
        topicIF - the TopicIF object associated with this topic.
        tm - the TopicMap this topic belongs to.
    • Method Detail

      • getId

        public String getId()
        Gets the id of this topic.
        Returns:
        the id of this topic.
      • getTopicIF

        public TopicIF getTopicIF()
        Gets the topicIF object of this topic.
        Returns:
        the topicIF object of this topic.
      • getTopicMap

        public TopicMap getTopicMap()
        Gets the topicMap this topic belongs to.
        Returns:
        the topicMap this topic belongs to.
      • getName

        public String getName()
        Gets the unscoped name of the topic.
        Returns:
        the unscoped name of the topic or null if no name has been set.
      • isTopicMap

        public boolean isTopicMap()
        Tests whether this topic is a topic map.
        Returns:
        true if this is a topic map.
      • isTopicType

        public boolean isTopicType()
        Tests whether this topic is a topic type.
        Returns:
        true if this is a topic type.
      • isNameType

        public boolean isNameType()
        Tests whether this topic is a name type.
        Returns:
        true if this is a name type.
      • isOccurrenceType

        public boolean isOccurrenceType()
        Tests whether this topic is an occurrence type.
        Returns:
        true if this is an occurrence type.
      • isAssociationType

        public boolean isAssociationType()
        Tests whether this topic is an association type.
        Returns:
        true if this is an association type.
      • isRoleType

        public boolean isRoleType()
        Tests whether this topic is a role type.
        Returns:
        true if this is a role type.
      • isFieldDefinition

        public boolean isFieldDefinition()
        Tests whether this topic is a field definition or an association field.
        Returns:
        true if this is a role type.
      • isSystemTopic

        public boolean isSystemTopic()
        Tests whether this topic is a system topic type.
        Returns:
        true if this is a system topic type.
      • isPrivateSystemTopic

        public boolean isPrivateSystemTopic()
      • isPublicSystemTopic

        public boolean isPublicSystemTopic()
      • isOntologyTopic

        public boolean isOntologyTopic()
        Tests whether this topic is an instance of an ontology type, i.e. an instance of topic type, name type, occurrence type, association type or role type.
        Returns:
        true if this is an instance of an ontology type.
      • isOntologyType

        public boolean isOntologyType()
        Tests whether this topic is an ontology type, i.e. topic type, name type, occurrence type, association type or role type.
        Returns:
        true if this is an ontology type.
      • getMostSpecificTopicType

        public TopicType getMostSpecificTopicType​(TopicType topicType)
        Given the topic type, find the subtype that is the specific type of this topic. The topic type given is usually a super type of the specific type. If null is returned then the topic type is not a super type of this topic.
        Parameters:
        topicType - the super type of this topic
        Returns:
        the most specific type of this type, or null if there is none.
      • getTopicTypes

        public List<TopicType> getTopicTypes()
        Returns the topic types of which this topic is a direct instance.
      • addTopicType

        public void addTopicType​(TopicType type)
        Adds the topic type to the list of topic types that topic is a direct instance of.
      • removeTopicType

        public void removeTopicType​(TopicType type)
        Removes the topic type from the list of topic types that topic is a direct instance of.
      • remove

        public void remove​(LifeCycleListener listener)
        Removes the topic from the topic map.
        Parameters:
        listener - listener that gets call back from the deleting this topic, and any dependencies.p
      • findDependentObjects

        protected void findDependentObjects​(Collection<Topic> alreadyKnownDependentObjects)
        Find all objects that are dependent on this topic and that should be removed if this topic is removed. At the moment a dependent object is an object that is associated to this topic through a role field that has on:create-only-mode enabled. The dependencies are transitive.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • copyCharacteristics

        public Topic copyCharacteristics()
      • isInstanceOf

        public boolean isInstanceOf​(Topic type)
      • isInstanceOf

        public boolean isInstanceOf​(LocatorIF psi)