Package net.ontopia.topicmaps.impl.rdbms
Class ReadOnlyAssociation
- java.lang.Object
-
- net.ontopia.persistence.proxy.AbstractROPersistent
-
- net.ontopia.topicmaps.impl.rdbms.ReadOnlyTMObject
-
- net.ontopia.topicmaps.impl.rdbms.ReadOnlyAssociation
-
- All Implemented Interfaces:
PersistentIF
,AssociationIF
,ReifiableIF
,ScopedIF
,TMObjectIF
,TypedIF
public class ReadOnlyAssociation extends ReadOnlyTMObject implements AssociationIF
INTERNAL: The read-only rdbms association implementation.
-
-
Field Summary
-
Fields inherited from class net.ontopia.persistence.proxy.AbstractROPersistent
id, txn
-
Fields inherited from interface net.ontopia.topicmaps.core.AssociationIF
EVENT_ADD_ROLE, EVENT_ADD_THEME, EVENT_ADDED, EVENT_REMOVE_ROLE, EVENT_REMOVE_THEME, EVENT_REMOVED, EVENT_SET_TYPE
-
Fields inherited from interface net.ontopia.topicmaps.core.ReifiableIF
EVENT_SET_REIFIER
-
Fields inherited from interface net.ontopia.topicmaps.core.TMObjectIF
EVENT_ADD_ITEMIDENTIFIER, EVENT_REMOVE_ITEMIDENTIFIER, MSG_NULL_ARGUMENT
-
-
Constructor Summary
Constructors Constructor Description ReadOnlyAssociation()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
_p_getFieldCount()
protected void
addRole(AssociationRoleIF assoc_role)
void
addTheme(TopicIF theme)
PUBLIC: Add a topic to this scope.String
getClassIndicator()
INTERNAL: Returns the token that can be used to indicate the class of this instance.String
getObjectId()
PUBLIC: Gets the id of this object.TopicIF
getReifier()
PUBLIC: Returns the topic that reifies this object.Collection<AssociationRoleIF>
getRoles()
PUBLIC: Gets all the association roles of the association.Collection<AssociationRoleIF>
getRolesByType(TopicIF roletype)
PUBLIC: Gets the association roles in this association which are of the given role type.Collection<TopicIF>
getRoleTypes()
PUBLIC: Gets a Collection of association role types found in this association.Collection<TopicIF>
getScope()
PUBLIC: Returns the set of topics that are the stated scope of this object.TopicIF
getType()
PUBLIC: Gets the type that this object is an instance of.protected void
removeRole(AssociationRoleIF assoc_role)
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.String
toString()
-
Methods inherited from class net.ontopia.topicmaps.impl.rdbms.ReadOnlyTMObject
addItemIdentifier, getItemIdentifiers, getLongId, getTopicMap, isReadOnly, remove, removeItemIdentifier
-
Methods inherited from class net.ontopia.persistence.proxy.AbstractROPersistent
_p_getIdentity, _p_getTransaction, _p_getType, _p_setIdentity, _p_setTransaction, _p_toString, clearAll, detach, executeQuery, isDeleted, isDirty, isDirty, isDirtyFlushed, isDirtyFlushed, isInDatabase, isLoaded, isNewObject, isPersistent, isTransient, loadCollectionField, loadField, loadFieldNoCheck, loadValue, nextDirty, nextDirty, nextDirtyFlushed, nextDirtyFlushed, setDeleted, setDirty, setDirtyFlushed, setInDatabase, setNewObject, setPersistent
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.ontopia.topicmaps.core.TMObjectIF
addItemIdentifier, getItemIdentifiers, getTopicMap, isReadOnly, remove, removeItemIdentifier
-
-
-
-
Method Detail
-
_p_getFieldCount
public int _p_getFieldCount()
- Specified by:
_p_getFieldCount
in interfacePersistentIF
-
getClassIndicator
public String getClassIndicator()
Description copied from class:ReadOnlyTMObject
INTERNAL: Returns the token that can be used to indicate the class of this instance. This indicator is currently only used by item identifiers.- Specified by:
getClassIndicator
in classReadOnlyTMObject
-
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 interfaceTMObjectIF
- Specified by:
getObjectId
in classReadOnlyTMObject
- Returns:
- string which is this object's id.
-
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 interfaceAssociationIF
- 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 interfaceAssociationIF
- 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 interfaceAssociationIF
- Returns:
- A collection of AssociationRoleIF objects.
-
addRole
protected void addRole(AssociationRoleIF assoc_role)
-
removeRole
protected void removeRole(AssociationRoleIF assoc_role)
-
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.
-
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.
-
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 interfaceScopedIF
- 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.
-
setType
public void setType(TopicIF type)
Description copied from interface:TypedIF
PUBLIC: Sets the type that this object is an instance of.
-
getReifier
public TopicIF getReifier()
Description copied from interface:ReifiableIF
PUBLIC: Returns the topic that reifies this object.- Specified by:
getReifier
in interfaceReifiableIF
-
setReifier
public void setReifier(TopicIF reifier)
Description copied from interface:ReifiableIF
PUBLIC: Sets the reifier of this object.- Specified by:
setReifier
in interfaceReifiableIF
-
-