Package net.ontopia.topicmaps.impl.rdbms
Class RDBMSTopicMapSource
java.lang.Object
net.ontopia.topicmaps.impl.rdbms.RDBMSTopicMapSource
- All Implemented Interfaces:
AutoCloseable,TopicMapSourceIF
PUBLIC: A topic map source that holds the list of all topic
map references accessible by a rdbms session.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected LocatorIFprotected booleanprotected Stringprotected Stringprotected Stringprotected Map<String,TopicMapReferenceIF> protected RDBMSStorageprotected booleanprotected booleanprotected Stringprotected String -
Constructor Summary
ConstructorsConstructorDescriptionPUBLIC: Creates an rdbms topic map source.RDBMSTopicMapSource(String propfile) INTERNAL: Creates an rdbms topic map source with the database property file set.RDBMSTopicMapSource(Map<String, String> properties) INTERNAL: Creates an rdbms topic map source with the specified database properties. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()PUBLIC: Closes the source by releasing references it holds to e.g.protected RDBMSStoragecreateTopicMap(String name, String baseAddress) PUBLIC: Creates a new topic map in the underlying source and returns a reference to the created topic map.protected RDBMSTopicMapReferencecreateTopicMapReference(String referenceId, String title, RDBMSStorage storage, long topicmapId, LocatorIF baseAddress) PUBLIC: Gets the base address of the topic maps retrieved from the source.booleangetId()PUBLIC: Gets the id of the source.PUBLIC: provides access to theRDBMSStorage.getMetrics().PUBLIC: Gets the database property file containing configuration parameters for accessing the rdbms database.PUBLIC: returns the additional SQL query file set bysetQueryfile(java.lang.String).protected StringgetReferenceId(String baseAdress, String title, long topicmap_id) PUBLIC: Returns an unmodifiable collection ofTopicMapReferenceIFs found by the topic map source.booleanbooleangetTitle()PUBLIC: Gets the title of the source.voidrefresh()PUBLIC: Refreshes the collection of references.voidsetBaseAddress(String base_address) PUBLIC: Sets the base address of the topic maps retrieved from the source.voidsetHidden(boolean hidden) voidPUBLIC: Sets the id of the source.voidsetPropertyFile(String propfile) PUBLIC: Sets the database property file containing configuration parameters for accessing the rdbms database.voidsetQueryfile(String queryfile) PUBLIC: Sets an additional SQL queries file to be loaded.voidsetSupportsCreate(boolean supportsCreate) voidsetSupportsDelete(boolean supportsDelete) voidPUBLIC: Sets the title of the source.voidsetTopicListeners(String topicListeners) booleanPUBLIC: Returns true if the source supports creating new topic maps with the createTopicMap.booleanPUBLIC: Returns true if the source supports deleting topic map with the TopicMapReferenceIF.delete() method.
-
Field Details
-
supportsCreate
protected boolean supportsCreate -
supportsDelete
protected boolean supportsDelete -
base_address
-
id
-
title
-
properties
-
propfile
-
queryfile
-
topicListeners
-
refmap
-
storage
-
-
Constructor Details
-
RDBMSTopicMapSource
public RDBMSTopicMapSource()PUBLIC: Creates an rdbms topic map source. Use the setter methods to provide the instance with the properties it needs.If the property file has not been given the 'net.ontopia.topicmaps.impl.rdbms.PropertyFile' system properties will be used.
-
RDBMSTopicMapSource
INTERNAL: Creates an rdbms topic map source with the database property file set. -
RDBMSTopicMapSource
INTERNAL: Creates an rdbms topic map source with the specified database properties.- Since:
- 1.2.4
-
-
Method Details
-
getId
Description copied from interface:TopicMapSourceIFPUBLIC: Gets the id of the source.- Specified by:
getIdin interfaceTopicMapSourceIF
-
setId
Description copied from interface:TopicMapSourceIFPUBLIC: Sets the id of the source. Note that this method is intended for use when the source is used in a TopicMapRepositoryIF. The source should throw anUnsupportedOperationExceptionif it does not support setting the id.- Specified by:
setIdin interfaceTopicMapSourceIF
-
getTitle
Description copied from interface:TopicMapSourceIFPUBLIC: Gets the title of the source.- Specified by:
getTitlein interfaceTopicMapSourceIF
-
setTitle
Description copied from interface:TopicMapSourceIFPUBLIC: Sets the title of the source.- Specified by:
setTitlein interfaceTopicMapSourceIF
-
getBaseAddress
PUBLIC: Gets the base address of the topic maps retrieved from the source. The notation is assumed to be 'URI'. -
setBaseAddress
PUBLIC: Sets the base address of the topic maps retrieved from the source. The notation is assumed to be 'URI'. -
getPropertyFile
PUBLIC: Gets the database property file containing configuration parameters for accessing the rdbms database. -
setPropertyFile
PUBLIC: Sets the database property file containing configuration parameters for accessing the rdbms database. The propfile given with first be attempted loaded from the file system. If it does not exist on the file system it will be loaded from the classpath. If the access must be explicit then the property file name can be prefixed by 'file:' or 'classpath:'. -
setQueryfile
PUBLIC: Sets an additional SQL queries file to be loaded. Can be used to override or extend the SQL query set used by Ontopia. Warning: overriding queries should only be done by experts.- Parameters:
queryfile- The file to load. Will be passed toStreamUtils.getInputStream(java.lang.String)- Since:
- 5.4.0
-
getQueryfile
PUBLIC: returns the additional SQL query file set bysetQueryfile(java.lang.String).- Returns:
- The query file set.
- Since:
- 5.4.0
-
getReferences
Description copied from interface:TopicMapSourceIFPUBLIC: Returns an unmodifiable collection ofTopicMapReferenceIFs found by the topic map source.- Specified by:
getReferencesin interfaceTopicMapSourceIF
-
createStorage
- Throws:
IOException
-
refresh
public void refresh()Description copied from interface:TopicMapSourceIFPUBLIC: Refreshes the collection of references. This lets the source look at its underlying data source to reflect any changes made since the last refresh.- Specified by:
refreshin interfaceTopicMapSourceIF
-
close
public void close()Description copied from interface:TopicMapSourceIFPUBLIC: Closes the source by releasing references it holds to e.g. database or file system objects.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceTopicMapSourceIF
-
getMetrics
PUBLIC: provides access to theRDBMSStorage.getMetrics(). Returns null if no storage was created yet.- Returns:
- an
RDBMSMetricsIFinstance that provides storage metrics.
-
getReferenceId
-
createTopicMapReference
protected RDBMSTopicMapReference createTopicMapReference(String referenceId, String title, RDBMSStorage storage, long topicmapId, LocatorIF baseAddress) -
supportsCreate
public boolean supportsCreate()Description copied from interface:TopicMapSourceIFPUBLIC: Returns true if the source supports creating new topic maps with the createTopicMap.- Specified by:
supportsCreatein interfaceTopicMapSourceIF
-
getSupportsCreate
public boolean getSupportsCreate() -
setSupportsCreate
public void setSupportsCreate(boolean supportsCreate) -
supportsDelete
public boolean supportsDelete()Description copied from interface:TopicMapSourceIFPUBLIC: Returns true if the source supports deleting topic map with the TopicMapReferenceIF.delete() method.- Specified by:
supportsDeletein interfaceTopicMapSourceIF
-
getSupportsDelete
public boolean getSupportsDelete() -
setSupportsDelete
public void setSupportsDelete(boolean supportsDelete) -
createTopicMap
Description copied from interface:TopicMapSourceIFPUBLIC: Creates a new topic map in the underlying source and returns a reference to the created topic map. The method takes a name and the base address for the topic map to create.- Specified by:
createTopicMapin interfaceTopicMapSourceIF
-
getHidden
public boolean getHidden() -
setHidden
public void setHidden(boolean hidden) -
getTopicListeners
-
setTopicListeners
-