Class PhantomAssociation

java.lang.Object
net.ontopia.topicmaps.impl.utils.PhantomAssociation
All Implemented Interfaces:
AssociationIF, ReifiableIF, ScopedIF, TMObjectIF, TypedIF

public class PhantomAssociation extends Object implements AssociationIF
INTERNAL: Class that represents the association object which a deleted role might have belonged to. Note that this class exists just to make the API behave gracefully in the cases where association roles are deleted, so that applications do not fail that easily.
  • Constructor Details

    • PhantomAssociation

      public PhantomAssociation()
  • Method Details

    • getRoleTypes

      public Collection<TopicIF> getRoleTypes()
      Description copied from interface: AssociationIF
      PUBLIC: Gets a Collection of association role types found in this association. The returned collection does not contain any duplicates. Even if some roles have no type, null will not be returned as one of the role types in the returned set.
      Specified by:
      getRoleTypes in interface AssociationIF
      Returns:
      A Collection of TopicIF objects.
    • getRolesByType

      public Collection<AssociationRoleIF> getRolesByType(TopicIF roletype)
      Description copied from interface: AssociationIF
      PUBLIC: Gets the association roles in this association which are of the given role type.
      Specified by:
      getRolesByType in interface AssociationIF
      Parameters:
      roletype - The type of the roles returned; an object implementing TopicIF. If null the method will return the roles that have no type.
      Returns:
      A Collection of AssociationRoleIF objects.
    • getRoles

      public Collection<AssociationRoleIF> getRoles()
      Description copied from interface: AssociationIF
      PUBLIC: Gets all the association roles of the association. The returned roles may appear in any order.
      Specified by:
      getRoles in interface AssociationIF
      Returns:
      A collection of AssociationRoleIF objects.
    • getScope

      public Collection<TopicIF> getScope()
      Description copied from interface: ScopedIF
      PUBLIC: Returns the set of topics that are the stated scope of this object. Scoping topics inherited from parent objects are not included. There is no guarantee as to which order these topics are returned in.
      Specified by:
      getScope in interface ScopedIF
      Returns:
      A collection of TopicIF objects.
    • addTheme

      public void addTheme(TopicIF theme)
      Description copied from interface: ScopedIF
      PUBLIC: Add a topic to this scope. (A topic used in a scope is also called a theme.) If the topic is already part of the scope the method call has no effect.
      Specified by:
      addTheme in interface ScopedIF
      Parameters:
      theme - A topic to be added to this scope; an object implementing TopicIF.
    • removeTheme

      public void removeTheme(TopicIF theme)
      Description copied from interface: ScopedIF
      PUBLIC: Remove a topic from this scope. If the topic is not already in the scope this method has no effect. (A topic used in a scope is also called a theme.)
      Specified by:
      removeTheme in interface ScopedIF
      Parameters:
      theme - A topic to be removed from this scope; an object implementing TopicIF.
    • getType

      public TopicIF getType()
      Description copied from interface: TypedIF
      PUBLIC: Gets the type that this object is an instance of.
      Specified by:
      getType in interface TypedIF
      Returns:
      The type of this object; an object implementing TopicIF.
    • setType

      public void setType(TopicIF type)
      Description copied from interface: TypedIF
      PUBLIC: Sets the type that this object is an instance of.
      Specified by:
      setType in interface TypedIF
      Parameters:
      type - The type for this object; an object implementing TopicIF.
    • getObjectId

      public String getObjectId()
      Description copied from interface: TMObjectIF
      PUBLIC: Gets the id of this object. The object id is part of the topic map id space, and must be unique. The object id is not significant (or unique) outside the current topic map. The object id is immutable. The object id is thus stable through this object's lifetime.
      Specified by:
      getObjectId in interface TMObjectIF
      Returns:
      string which is this object's id.
    • isReadOnly

      public boolean isReadOnly()
      Description copied from interface: TMObjectIF
      PUBLIC: Returns true if this object is read-only, otherwise false.
      Specified by:
      isReadOnly in interface TMObjectIF
      Returns:
      read-only (true) or not read-only (false).
    • getTopicMap

      public TopicMapIF getTopicMap()
      Description copied from interface: TMObjectIF
      PUBLIC: Gets the topic map that this object belongs to. If the object has been removed from its topic map or not added to a topic map yet this will be null.
      Specified by:
      getTopicMap in interface TMObjectIF
      Returns:
      A topic map; an object implementing TopicMapIF.
    • getItemIdentifiers

      public Collection<LocatorIF> getItemIdentifiers()
      Description copied from interface: TMObjectIF
      PUBLIC: Gets the item identifiers of this object. These locators are pointers back to the locations from where this object originated.

      The purpose is to enable the engine to detect when references to external objects refer to objects that are already present within the system, such as topic maps which are already loaded.

      Specified by:
      getItemIdentifiers in interface TMObjectIF
      Returns:
      A collection of LocatorIF objects addressing the item.
    • addItemIdentifier

      public void addItemIdentifier(LocatorIF srcloc)
      Description copied from interface: TMObjectIF
      PUBLIC: Adds the given item identifier to the set of item item identifiers for this object.
      Specified by:
      addItemIdentifier in interface TMObjectIF
      Parameters:
      srcloc - The item identifier to be added; an object implementing LocatorIF.
    • removeItemIdentifier

      public void removeItemIdentifier(LocatorIF srcloc)
      Description copied from interface: TMObjectIF
      PUBLIC: Removes the given item identifier from the set of item identifiers. If this object does not have the given item identifier the call has no effect.
      Specified by:
      removeItemIdentifier in interface TMObjectIF
      Parameters:
      srcloc - The item identifier to be removed; an object implementing LocatorIF.
    • remove

      public void remove()
      Description copied from interface: TMObjectIF
      PUBLIC: Removes the object from its parent.
      Specified by:
      remove in interface TMObjectIF
    • getReifier

      public TopicIF getReifier()
      Description copied from interface: ReifiableIF
      PUBLIC: Returns the topic that reifies this object.
      Specified by:
      getReifier in interface ReifiableIF
    • setReifier

      public void setReifier(TopicIF reifier)
      Description copied from interface: ReifiableIF
      PUBLIC: Sets the reifier of this object.
      Specified by:
      setReifier in interface ReifiableIF