Package net.ontopia.topicmaps.impl.rdbms
Class TMObject
- java.lang.Object
-
- net.ontopia.persistence.proxy.AbstractRWPersistent
-
- net.ontopia.topicmaps.impl.rdbms.TMObject
-
- All Implemented Interfaces:
PersistentIF
,TMObjectIF
- Direct Known Subclasses:
Association
,AssociationRole
,Occurrence
,Topic
,TopicMap
,TopicName
,VariantName
public abstract class TMObject extends AbstractRWPersistent implements TMObjectIF
INTERNAL:
-
-
Field Summary
Fields Modifier and Type Field Description static String
CLASS_INDICATOR
protected static int
LF_sources
protected static int
LF_topicmap
-
Fields inherited from class net.ontopia.persistence.proxy.AbstractRWPersistent
id, MASKS, txn, values
-
Fields inherited from interface net.ontopia.topicmaps.core.TMObjectIF
EVENT_ADD_ITEMIDENTIFIER, EVENT_REMOVE_ITEMIDENTIFIER, MSG_NULL_ARGUMENT
-
-
Constructor Summary
Constructors Constructor Description TMObject()
TMObject(TransactionIF txn)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addItemIdentifier(LocatorIF source_locator)
PUBLIC: Adds the given item identifier to the set of item item identifiers for this object.protected void
fireEvent(String event, Object new_value, Object old_value)
INTERNAL: Fires an event, so that listeners can be informed about the event.abstract String
getClassIndicator()
INTERNAL: Returns the token that can be used to indicate the class of this instance.Collection<LocatorIF>
getItemIdentifiers()
PUBLIC: Gets the item identifiers of this object.protected long
getLongId()
abstract String
getObjectId()
PUBLIC: Gets the id of this object.TopicMapIF
getTopicMap()
PUBLIC: Gets the topic map that this object belongs to.boolean
isReadOnly()
PUBLIC: Returns true if this object is read-only, otherwise false.void
removeItemIdentifier(LocatorIF source_locator)
PUBLIC: Removes the given item identifier from the set of item identifiers.protected void
transactionChanged(TopicMap topicmap)
INTERNAL: Called when the transaction to which the object belongs has changed.-
Methods inherited from class net.ontopia.persistence.proxy.AbstractRWPersistent
_p_getIdentity, _p_getTransaction, _p_getType, _p_setIdentity, _p_setTransaction, _p_toString, clearAll, detach, detachCollectionField, detachField, executeQuery, getValue, isDeleted, isDirty, isDirty, isDirtyFlushed, isDirtyFlushed, isInDatabase, isLoaded, isNewObject, isPersistent, isTransient, loadCollectionField, loadField, loadFieldNoCheck, loadValue, nextDirty, nextDirty, nextDirtyFlushed, nextDirtyFlushed, setDeleted, setDirty, setDirtyFlushed, setInDatabase, setNewObject, setPersistent, setValue, syncAfterMerge, syncFieldsAfterMerge, unsetValue, valueAdded, valueChanged, valueRemoved
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.ontopia.persistence.proxy.PersistentIF
_p_getFieldCount
-
Methods inherited from interface net.ontopia.topicmaps.core.TMObjectIF
remove
-
-
-
-
Field Detail
-
LF_sources
protected static final int LF_sources
- See Also:
- Constant Field Values
-
LF_topicmap
protected static final int LF_topicmap
- See Also:
- Constant Field Values
-
CLASS_INDICATOR
public static String CLASS_INDICATOR
-
-
Constructor Detail
-
TMObject
public TMObject()
-
TMObject
public TMObject(TransactionIF txn)
-
-
Method Detail
-
getClassIndicator
public abstract String getClassIndicator()
INTERNAL: Returns the token that can be used to indicate the class of this instance. This indicator is currently only used by source locators.
-
transactionChanged
protected void transactionChanged(TopicMap topicmap)
INTERNAL: Called when the transaction to which the object belongs has changed.
-
getLongId
protected long getLongId()
-
getObjectId
public abstract 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 interfaceTMObjectIF
- 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 interfaceTMObjectIF
- 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 interfaceTMObjectIF
- 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 interfaceTMObjectIF
- 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 interfaceTMObjectIF
- 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 interfaceTMObjectIF
- Parameters:
source_locator
- The item identifier to be removed; an object implementing LocatorIF.
-
-