net.ontopia.topicmaps.impl.remote
Class RemoteTopic

java.lang.Object
  extended by net.ontopia.topicmaps.impl.basic.TMObject
      extended by net.ontopia.topicmaps.impl.basic.Topic
          extended by net.ontopia.topicmaps.impl.remote.RemoteTopic
All Implemented Interfaces:
java.io.Serializable, TMObjectIF, TopicIF

public class RemoteTopic
extends Topic

INTERNAL: The remote topic implementation. Checks that it is loaded and then delegates calls to the super class.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class net.ontopia.topicmaps.impl.basic.Topic
indicators, names, occurs, reified, roles, scope, subjects, types
 
Fields inherited from class net.ontopia.topicmaps.impl.basic.TMObject
MSG_NULL_ARGUMENT, sources
 
Method Summary
 void addItemIdentifier(LocatorIF source_locator)
          PUBLIC: Adds the given item identifier to the set of item item identifiers for this object.
protected  void addOccurrence(OccurrenceIF _occurrence)
           
 void addSubjectIdentifier(LocatorIF subject_indicator)
          PUBLIC: Adds the given subject identifier to the set of subject identifiers for this topic.
 void addSubjectLocator(LocatorIF subject_locator)
          PUBLIC: Adds the given subject locator to the set of subject locators for this topic.
protected  void addTopicName(TopicNameIF _basename)
           
 void addType(TopicIF type)
          PUBLIC: Adds a type to this topic.
 void checkLoad()
           
 void debug()
           
 boolean equals(java.lang.Object obj)
           
 boolean equals(RemoteTopic obj)
           
 java.util.Collection getItemIdentifiers()
          PUBLIC: Gets the item identifiers of this object.
 java.lang.String getObjectId()
          PUBLIC: Gets the id of this object.
 java.util.Collection getOccurrences()
          PUBLIC: Gets the occurrences of this topic.
 TopicIF getRealTopic()
           
 java.util.Collection getRoles()
          PUBLIC: Gets the association roles played by this topic.
 java.util.Collection getSubjectIdentifiers()
          PUBLIC: Gets the subject identitifers of this topic.
 java.util.Collection getSubjectLocators()
          PUBLIC: Gets the subject locators of this topic.
 TopicMapIF getTopicMap()
          PUBLIC: Gets the topic map that this object belongs to.
 java.util.Collection getTopicNames()
          PUBLIC: Gets the names of this topic.
 java.util.Collection getTypes()
          PUBLIC: Gets the types that this topic is an instance of.
 int hashCode()
           
 boolean isLoaded()
           
 boolean isReadOnly()
          PUBLIC: Returns true if this object is read-only, otherwise false.
 void merge(TopicIF topic)
          EXPERIMENTAL: Merges the characteristics of one topic into another topic.
 void remove()
          PUBLIC: Removes the object from its parent.
 void removeItemIdentifier(LocatorIF source_locator)
          PUBLIC: Removes the given item identifier from the set of item identifiers.
protected  void removeOccurrence(OccurrenceIF _occurrence)
           
 void removeSubjectIdentifier(LocatorIF subject_indicator)
          PUBLIC: Removes the given subject identifier from the set of subject identifiers for this topic.
 void removeSubjectLocator(LocatorIF subject_locator)
          PUBLIC: Removes the given subject locator from the set of subject locators for this topic.
protected  void removeTopicName(TopicNameIF _basename)
           
 void removeType(TopicIF type)
          PUBLIC: Removes a type from this topic.
 void setLoaded(boolean isLoaded)
           
protected  void setRealTopic(RemoteTopic topic)
           
 java.lang.String toString()
           
 
Methods inherited from class net.ontopia.topicmaps.impl.basic.Topic
addRole, getReified, getRolesByType, getRolesByType, removeRole
 
Methods inherited from class net.ontopia.topicmaps.impl.basic.TMObject
fireEvent, isConnected
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

isLoaded

public boolean isLoaded()

setLoaded

public void setLoaded(boolean isLoaded)

setRealTopic

protected void setRealTopic(RemoteTopic topic)

getRealTopic

public TopicIF getRealTopic()

checkLoad

public void checkLoad()

getSubjectLocators

public java.util.Collection getSubjectLocators()
Description copied from interface: TopicIF
PUBLIC: Gets the subject locators of this topic. These are locators for resources that directly address the subject of this topic. Such a resource is also called an addressable subject. The subject locators are not guaranteed to have any specific order within the returned collection.

Specified by:
getSubjectLocators in interface TopicIF
Overrides:
getSubjectLocators in class Topic
Returns:
A collection of LocatorIF objects serving as subject locators.

addSubjectLocator

public void addSubjectLocator(LocatorIF subject_locator)
                       throws ConstraintViolationException
Description copied from interface: TopicIF
PUBLIC: Adds the given subject locator to the set of subject locators for this topic.

Specified by:
addSubjectLocator in interface TopicIF
Overrides:
addSubjectLocator in class Topic
Parameters:
subject_locator - A locator for the subject locator to be added; an object implementing LocatorIF.
Throws:
ConstraintViolationException - Thrown if the topic map already has a topic with this subject locator.

removeSubjectLocator

public void removeSubjectLocator(LocatorIF subject_locator)
Description copied from interface: TopicIF
PUBLIC: Removes the given subject locator from the set of subject locators for this topic. If the topic does not have the given subject locator then this method has no effect.

Specified by:
removeSubjectLocator in interface TopicIF
Overrides:
removeSubjectLocator in class Topic
Parameters:
subject_locator - A locator for the subject locator to be removed; an object implementing LocatorIF.

getSubjectIdentifiers

public java.util.Collection getSubjectIdentifiers()
Description copied from interface: TopicIF
PUBLIC: Gets the subject identitifers of this topic. These are locators for resources that indirectly address or otherwise indicate the subject of this topic. A subject identifier is intended as a surrogate for a subject which cannot be addressed directly. The subject identifiers are not guaranteed to have any specific order within the returned collection.

Specified by:
getSubjectIdentifiers in interface TopicIF
Overrides:
getSubjectIdentifiers in class Topic
Returns:
A collection of LocatorIF objects serving as subject identifiers.

addSubjectIdentifier

public void addSubjectIdentifier(LocatorIF subject_indicator)
                          throws ConstraintViolationException
Description copied from interface: TopicIF
PUBLIC: Adds the given subject identifier to the set of subject identifiers for this topic.

Specified by:
addSubjectIdentifier in interface TopicIF
Overrides:
addSubjectIdentifier in class Topic
Parameters:
subject_indicator - A locator for the subject identifier to be added; an object implementing LocatorIF.
Throws:
ConstraintViolationException - Thrown if the topic map already has a topic with this addressable subject.

removeSubjectIdentifier

public void removeSubjectIdentifier(LocatorIF subject_indicator)
Description copied from interface: TopicIF
PUBLIC: Removes the given subject identifier from the set of subject identifiers for this topic. If the topic does not have the given subject identifier then this method has no effect.

Specified by:
removeSubjectIdentifier in interface TopicIF
Overrides:
removeSubjectIdentifier in class Topic
Parameters:
subject_indicator - A locator for the subject identifier to be removed; an object implementing LocatorIF.

getTopicNames

public java.util.Collection getTopicNames()
Description copied from interface: TopicIF
PUBLIC: Gets the names of this topic.

Specified by:
getTopicNames in interface TopicIF
Overrides:
getTopicNames in class Topic
Returns:
A collection of TopicNameIF objects.

addTopicName

protected void addTopicName(TopicNameIF _basename)
Overrides:
addTopicName in class Topic

removeTopicName

protected void removeTopicName(TopicNameIF _basename)
Overrides:
removeTopicName in class Topic

getOccurrences

public java.util.Collection getOccurrences()
Description copied from interface: TopicIF
PUBLIC: Gets the occurrences of this topic. The occurrences are not guaranteed to have any specific order.

Specified by:
getOccurrences in interface TopicIF
Overrides:
getOccurrences in class Topic
Returns:
A collection of OccurrenceIF objects.

addOccurrence

protected void addOccurrence(OccurrenceIF _occurrence)
Overrides:
addOccurrence in class Topic

removeOccurrence

protected void removeOccurrence(OccurrenceIF _occurrence)
Overrides:
removeOccurrence in class Topic

getRoles

public java.util.Collection getRoles()
Description copied from interface: TopicIF
PUBLIC: Gets the association roles played by this topic. There is no guarantee as to the order these are returned in.

Specified by:
getRoles in interface TopicIF
Overrides:
getRoles in class Topic
Returns:
A collection of AssociationRoleIF objects.

remove

public void remove()
Description copied from interface: TMObjectIF
PUBLIC: Removes the object from its parent.

Specified by:
remove in interface TMObjectIF
Overrides:
remove in class Topic

getTypes

public java.util.Collection getTypes()
Description copied from interface: TopicIF
PUBLIC: Gets the types that this topic is an instance of. There is no guarantee as to which order these will be returned in.

Specified by:
getTypes in interface TopicIF
Overrides:
getTypes in class Topic
Returns:
A collection of TopicIF objects.

addType

public void addType(TopicIF type)
Description copied from interface: TopicIF
PUBLIC: Adds a type to this topic.

Specified by:
addType in interface TopicIF
Overrides:
addType in class Topic
Parameters:
type - The additional type; an object implementing TopicIF.

removeType

public void removeType(TopicIF type)
Description copied from interface: TopicIF
PUBLIC: Removes a type from this topic. If the given topic is not present amongst the types, then the method has no effect.

Specified by:
removeType in interface TopicIF
Overrides:
removeType in class Topic
Parameters:
type - The type to be removed; an object implementing TopicIF.

toString

public java.lang.String toString()
Overrides:
toString in class Topic

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
Overrides:
getObjectId in class TMObject
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
Overrides:
isReadOnly in class TMObject
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
Overrides:
getTopicMap in class TMObject
Returns:
A topic map; an object implementing TopicMapIF.

getItemIdentifiers

public java.util.Collection 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
Overrides:
getItemIdentifiers in class TMObject
Returns:
A collection of LocatorIF objects addressing the item.

addItemIdentifier

public void addItemIdentifier(LocatorIF source_locator)
                       throws ConstraintViolationException
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
Overrides:
addItemIdentifier in class TMObject
Parameters:
source_locator - The item identifier to be added; an object implementing LocatorIF.
Throws:
ConstraintViolationException - Thrown if another object in the same topic map already has the given item identifier.

removeItemIdentifier

public void removeItemIdentifier(LocatorIF source_locator)
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
Overrides:
removeItemIdentifier in class TMObject
Parameters:
source_locator - The item identifier to be removed; an object implementing LocatorIF.

merge

public void merge(TopicIF topic)
Description copied from interface: TopicIF
EXPERIMENTAL: Merges the characteristics of one topic into another topic. The source topic stripped of characteristics, all of which are moved to the target topic. Duplicate characteristics are suppressed. The topics must be in the same topic map, and the source topic is removed from the topic map.

Specified by:
merge in interface TopicIF
Overrides:
merge in class Topic
Parameters:
topic - topicIF; the source topic. This is empty after the operation and is removed from the topic map.

debug

public void debug()

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

equals

public boolean equals(RemoteTopic obj)

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object


Copyright © 2000-2012 Ontopia.