public class TopicImpl extends Topic
| Modifier and Type | Class and Description |
|---|---|
private class |
TopicImpl.EqualAssociationWrapper |
private static class |
TopicImpl.ScopeComparator |
private static class |
TopicImpl.TopicComparator |
| Modifier and Type | Field and Description |
|---|---|
private java.util.Map<Topic,java.util.Map<Topic,java.util.Collection<Association>>> |
associationIndex |
private java.util.Set<Association> |
associations |
private java.util.Set<Association> |
associationTypeIndex |
private java.lang.String |
baseName |
private java.util.Map<Topic,java.util.Map<Topic,java.lang.String>> |
data |
private java.util.Set<Topic> |
dataTypeIndex |
private java.util.Set<DataVersionIndexWrapper> |
dataVersionIndex |
private boolean |
denyRemoveIfCoreTopic |
private long |
dependentEditTime |
private java.util.Set<Topic> |
dependentTopics |
private java.util.Map<java.lang.String,java.lang.String> |
dispNameCache |
private long |
editTime |
private java.lang.String |
id |
private static long |
idcounter |
private boolean |
removed |
private java.util.Set<Association> |
roleTypeIndex |
private java.util.Map<java.lang.String,java.lang.String> |
sortNameCache |
private java.util.Set<Locator> |
subjectIdentifiers |
private Locator |
subjectLocator |
private TopicMapImpl |
topicMap |
private java.util.Set<Topic> |
topicTypeIndex |
private java.util.Set<Topic> |
types |
private java.util.Map<java.util.Set<Topic>,java.lang.String> |
variants |
private java.util.Set<Topic> |
variantScopeIndex |
| Constructor and Description |
|---|
TopicImpl(java.lang.String id,
TopicMapImpl topicMap)
Creates a new instance of TopicImpl
|
TopicImpl(TopicMapImpl topicMap)
Creates a new instance of TopicImpl
|
| Modifier and Type | Method and Description |
|---|---|
(package private) void |
addedAsAssociationType(Association a) |
(package private) void |
addedAsDataType(Topic t) |
(package private) void |
addedAsDataVersion(Topic t,
Topic type) |
(package private) void |
addedAsRoleType(Association a) |
(package private) void |
addedAsTopicType(Topic t) |
(package private) void |
addedAsVariantScope(Topic t) |
(package private) void |
addInAssociation(Association a,
Topic role) |
void |
addSubjectIdentifier(Locator l)
Adds a subject identifier for the topic.
|
void |
addType(Topic t)
Adds a topic type.
|
(package private) void |
associationTypeChanged(Association a,
Topic type,
Topic oldType,
Topic role) |
void |
clearNameCaches() |
java.util.Collection<Association> |
getAssociations()
Gets all associations where this topic is a player.
|
java.util.Collection<Association> |
getAssociations(Topic type)
Gets all associations of specified type where this topic is a player.
|
java.util.Collection<Association> |
getAssociations(Topic type,
Topic role)
Gets associations of the specified type where this topic is in the specified role
|
java.util.Collection<Association> |
getAssociationsWithRole()
Gets associations that have this topic as role.
|
java.util.Collection<Association> |
getAssociationsWithType()
Gets associations that have this topic as type.
|
java.lang.String |
getBaseName()
Gets the topic base name or null if no base name has been set.
|
java.util.Hashtable |
getData(Topic type)
Returns a Hashtable mapping data versions to data content.
|
java.lang.String |
getData(Topic type,
Topic version)
Gets data with the specified type and version.
|
java.util.Collection<Topic> |
getDataTypes()
Gets all used data types.
|
long |
getDependentEditTime() |
java.lang.String |
getDisplayName(java.lang.String lang)
Gets a name suitable for display in the specified language.
|
long |
getEditTime() |
java.lang.String |
getID()
Gets the topic ID.
|
java.lang.String |
getSortName(java.lang.String lang)
Gets a name suitable for sorting in the specified language.
|
java.util.Collection |
getSubjectIdentifiers()
Gets all subject identifiers of the topic.
|
Locator |
getSubjectLocator()
Gets the topic subject locator or null if it has not been set.
|
TopicMap |
getTopicMap()
Gets the topic map this topic belongs to.
|
java.util.Collection<Topic> |
getTopicsWithDataType()
Gets topics which have data with this topic as type.
|
java.util.Collection<Topic> |
getTopicsWithDataVersion()
Gets topics which have data with this topic as version.
|
java.util.Collection<Topic> |
getTopicsWithVariantScope()
Gets topics which have variants with this topic in scope.
|
java.util.Collection<Topic> |
getTypes()
Gets all topic types.
|
static java.lang.String |
getUniqueID() |
java.lang.String |
getVariant(java.util.Set<Topic> scope)
Gets a variant with the specified scope.
|
java.util.Set<java.util.Set<Topic>> |
getVariantScopes()
Gets the scopes of all variant names.
|
private void |
initializeTopicImpl() |
boolean |
isDeleteAllowed()
Notice, isDeleteAllowed doesn't return true if the topic map is
write protected or if the topic is already deleted.
|
boolean |
isOfType(Topic t)
Checks if this topic is of the specified type.
|
boolean |
isRemoved()
Returns true if this topic has been removed from the topic map it belonged to.
|
private void |
makeDependentTopicsSet() |
void |
mergeIn(Topic t) |
void |
remove()
Removes this topic.
|
void |
removeData(Topic type)
Removes all data with the specified type.
|
void |
removeData(Topic type,
Topic version)
Removes data with specified type and version.
|
(package private) void |
removedFromAssociationType(Association a) |
(package private) void |
removedFromDataType(Topic t) |
(package private) void |
removedFromDataVersion(Topic t,
Topic type) |
(package private) void |
removedFromRoleType(Association a) |
(package private) void |
removedFromTopicType(Topic t) |
(package private) void |
removedFromVariantScope(Topic t) |
(package private) void |
removeDuplicateAssociations() |
(package private) void |
removeDuplicateAssociations(Association notThis)
Deletes duplicate associations but does not delete the one given as parameter.
|
(package private) void |
removeFromAssociation(Association a,
Topic role,
boolean otherRoles) |
void |
removeSubjectIdentifier(Locator l)
Removes a subject identifier.
|
void |
removeType(Topic t)
Removes a topic type.
|
void |
removeVariant(java.util.Set<Topic> scope)
Removes a variant name with the specified scope.
|
void |
setBaseName(java.lang.String name)
Sets the topic base name.
|
void |
setData(Topic type,
java.util.Hashtable<Topic,java.lang.String> versionData)
Sets several data values.
|
void |
setData(Topic type,
Topic version,
java.lang.String value)
Sets data with specified type and version.
|
void |
setDependentEditTime(long time) |
void |
setEditTime(long time) |
void |
setSubjectLocator(Locator l)
Sets the topic subject locator overwriting possible previous value.
|
void |
setVariant(java.util.Set<Topic> scope,
java.lang.String name)
Sets the variant with the specified scope.
|
private void |
updateDependentEditTime() |
private void |
updateEditTime() |
getData, getDisplayName, getFirstSubjectIdentifier, getName, getOneSubjectIdentifier, mergesWithTopic, setDisplayName, toStringprivate TopicMapImpl topicMap
private java.util.Set<Topic> types
private java.util.Set<Association> associations
private java.util.Map<Topic,java.util.Map<Topic,java.util.Collection<Association>>> associationIndex
private java.lang.String baseName
private Locator subjectLocator
private java.util.Set<Locator> subjectIdentifiers
private java.util.Map<java.util.Set<Topic>,java.lang.String> variants
private java.util.Set<Topic> dataTypeIndex
private java.util.Set<DataVersionIndexWrapper> dataVersionIndex
private java.util.Set<Topic> topicTypeIndex
private java.util.Set<Association> associationTypeIndex
private java.util.Set<Association> roleTypeIndex
private java.util.Set<Topic> variantScopeIndex
private java.util.Set<Topic> dependentTopics
private java.lang.String id
private boolean removed
private boolean denyRemoveIfCoreTopic
private long editTime
private long dependentEditTime
private java.util.Map<java.lang.String,java.lang.String> dispNameCache
private java.util.Map<java.lang.String,java.lang.String> sortNameCache
private static long idcounter
public TopicImpl(java.lang.String id,
TopicMapImpl topicMap)
public TopicImpl(TopicMapImpl topicMap)
private void initializeTopicImpl()
public void clearNameCaches()
public java.lang.String getDisplayName(java.lang.String lang)
throws TopicMapException
TopicgetDisplayName in class TopicTopicMapExceptionpublic java.lang.String getSortName(java.lang.String lang)
throws TopicMapException
TopicgetSortName in class TopicTopicMapExceptionpublic static java.lang.String getUniqueID()
public java.lang.String getID()
throws TopicMapException
TopicgetID in class TopicTopicMapExceptionpublic void setData(Topic type, Topic version, java.lang.String value) throws TopicMapException
TopicsetData in class TopicTopicMapExceptionpublic void setData(Topic type, java.util.Hashtable<Topic,java.lang.String> versionData) throws TopicMapException
TopicsetData in class TopicTopicMapExceptionpublic void addSubjectIdentifier(Locator l) throws TopicMapException
TopicaddSubjectIdentifier in class TopicTopicMapExceptionpublic void addType(Topic t) throws TopicMapException
TopicaddType in class TopicTopicMapExceptionpublic java.util.Collection<Association> getAssociations() throws TopicMapException
TopicgetAssociations in class TopicTopicMapExceptionpublic java.util.Collection<Association> getAssociations(Topic type) throws TopicMapException
TopicgetAssociations in class TopicTopicMapExceptionpublic java.util.Collection<Association> getAssociations(Topic type, Topic role) throws TopicMapException
TopicgetAssociations in class TopicTopicMapExceptionpublic java.lang.String getBaseName()
throws TopicMapException
TopicgetBaseName in class TopicTopicMapExceptionpublic java.lang.String getData(Topic type, Topic version) throws TopicMapException
TopicgetData in class TopicTopicMapExceptionpublic java.util.Hashtable getData(Topic type) throws TopicMapException
TopicgetData in class TopicTopicMapExceptionpublic Locator getSubjectLocator() throws TopicMapException
TopicgetSubjectLocator in class TopicTopicMapExceptionpublic java.util.Collection getSubjectIdentifiers()
throws TopicMapException
TopicgetSubjectIdentifiers in class TopicTopicMapExceptionpublic TopicMap getTopicMap()
TopicgetTopicMap in class Topicpublic java.util.Collection<Topic> getTypes() throws TopicMapException
TopicgetTypes in class TopicTopicMapExceptionpublic java.lang.String getVariant(java.util.Set<Topic> scope) throws TopicMapException
TopicgetVariant in class TopicTopicMapExceptionpublic boolean isOfType(Topic t) throws TopicMapException
TopicisOfType in class TopicTopicMapExceptionpublic void removeData(Topic type) throws TopicMapException
TopicremoveData in class TopicTopicMapExceptionpublic void removeData(Topic type, Topic version) throws TopicMapException
TopicremoveData in class TopicTopicMapExceptionpublic void removeSubjectIdentifier(Locator l) throws TopicMapException
TopicremoveSubjectIdentifier in class TopicTopicMapExceptionpublic void removeType(Topic t) throws TopicMapException
TopicremoveType in class TopicTopicMapExceptionpublic void setBaseName(java.lang.String name)
throws TopicMapException
TopicsetBaseName in class TopicTopicMapExceptionpublic void setSubjectLocator(Locator l) throws TopicMapException
TopicsetSubjectLocator in class TopicTopicMapExceptionpublic long getEditTime()
throws TopicMapException
getEditTime in class TopicTopicMapExceptionpublic void setEditTime(long time)
throws TopicMapException
setEditTime in class TopicTopicMapExceptionpublic void remove()
throws TopicMapException
Topicremove in class TopicTopicMapExceptionpublic void removeVariant(java.util.Set<Topic> scope) throws TopicMapException
TopicremoveVariant in class TopicTopicMapExceptionpublic void setVariant(java.util.Set<Topic> scope, java.lang.String name) throws TopicMapException
TopicsetVariant in class TopicTopicMapExceptionpublic java.util.Set<java.util.Set<Topic>> getVariantScopes() throws TopicMapException
TopicgetVariantScopes in class TopicTopicMapExceptionpublic java.util.Collection<Topic> getDataTypes() throws TopicMapException
TopicgetDataTypes in class TopicTopicMapExceptionpublic boolean isRemoved()
throws TopicMapException
TopicisRemoved in class TopicTopicMapExceptionpublic boolean isDeleteAllowed()
throws TopicMapException
isDeleteAllowed in class TopicTopicMapExceptionpublic long getDependentEditTime()
throws TopicMapException
getDependentEditTime in class TopicTopicMapExceptionpublic void setDependentEditTime(long time)
throws TopicMapException
setDependentEditTime in class TopicTopicMapExceptionpublic java.util.Collection<Topic> getTopicsWithDataType() throws TopicMapException
TopicgetTopicsWithDataType in class TopicTopicMapExceptionpublic java.util.Collection<Association> getAssociationsWithType() throws TopicMapException
TopicgetAssociationsWithType in class TopicTopicMapExceptionpublic java.util.Collection<Association> getAssociationsWithRole() throws TopicMapException
TopicgetAssociationsWithRole in class TopicTopicMapExceptionpublic java.util.Collection<Topic> getTopicsWithDataVersion() throws TopicMapException
TopicgetTopicsWithDataVersion in class TopicTopicMapExceptionpublic java.util.Collection<Topic> getTopicsWithVariantScope() throws TopicMapException
TopicgetTopicsWithVariantScope in class TopicTopicMapExceptionprivate void makeDependentTopicsSet()
throws TopicMapException
TopicMapExceptionprivate void updateEditTime()
throws TopicMapException
TopicMapExceptionprivate void updateDependentEditTime()
throws TopicMapException
TopicMapExceptionpublic void mergeIn(Topic t) throws TopicMapException
TopicMapExceptionvoid removeDuplicateAssociations()
throws TopicMapException
TopicMapExceptionvoid removeDuplicateAssociations(Association notThis) throws TopicMapException
TopicMapExceptionvoid addInAssociation(Association a, Topic role) throws TopicMapException
TopicMapExceptionvoid removeFromAssociation(Association a, Topic role, boolean otherRoles) throws TopicMapException
TopicMapExceptionvoid associationTypeChanged(Association a, Topic type, Topic oldType, Topic role)
void addedAsTopicType(Topic t)
void removedFromTopicType(Topic t)
void addedAsDataType(Topic t)
void removedFromDataType(Topic t)
void addedAsAssociationType(Association a)
void removedFromAssociationType(Association a)
void addedAsRoleType(Association a)
void removedFromRoleType(Association a)
void addedAsVariantScope(Topic t)
void removedFromVariantScope(Topic t)
Copyright 2004-2015 Wandora Team