net.ontopia.topicmaps.impl.utils
Class PhantomAssociation

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

public class PhantomAssociation
extends java.lang.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 Summary
PhantomAssociation()
           
 
Method Summary
 void addItemIdentifier(LocatorIF srcloc)
          PUBLIC: Adds the given item identifier to the set of item item identifiers for this object.
 void addTheme(TopicIF theme)
          PUBLIC: Add a topic to this scope.
 java.util.Collection<LocatorIF> getItemIdentifiers()
          PUBLIC: Gets the item identifiers of this object.
 java.lang.String getObjectId()
          PUBLIC: Gets the id of this object.
 TopicIF getReifier()
          PUBLIC: Returns the topic that reifies this object.
 java.util.Collection<AssociationRoleIF> getRoles()
          PUBLIC: Gets all the association roles of the association.
 java.util.Collection<AssociationRoleIF> getRolesByType(TopicIF roletype)
          PUBLIC: Gets the association roles in this association which are of the given role type.
 java.util.Collection<TopicIF> getRoleTypes()
          PUBLIC: Gets a Collection of association role types found in this association.
 java.util.Collection<TopicIF> getScope()
          PUBLIC: Returns the set of topics that are the stated scope of this object.
 TopicMapIF getTopicMap()
          PUBLIC: Gets the topic map that this object belongs to.
 TopicIF getType()
          PUBLIC: Gets the type that this object is an instance of.
 boolean isReadOnly()
          PUBLIC: Returns true if this object is read-only, otherwise false.
 void remove()
          PUBLIC: Removes the object from its parent.
 void removeItemIdentifier(LocatorIF srcloc)
          PUBLIC: Removes the given item identifier from the set of item identifiers.
 void removeTheme(TopicIF theme)
          PUBLIC: Remove a topic from this scope.
 void setReifier(TopicIF reifier)
          PUBLIC: Sets the reifier of this object.
 void setType(TopicIF type)
          PUBLIC: Sets the type that this object is an instance of.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PhantomAssociation

public PhantomAssociation()
Method Detail

getRoleTypes

public java.util.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 java.util.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 java.util.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 java.util.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 java.lang.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 java.util.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


Copyright © 2000-2012 Ontopia.