Package net.ontopia.topicmaps.entry
Class AbstractPathTopicMapSource
- java.lang.Object
-
- net.ontopia.topicmaps.entry.AbstractPathTopicMapSource
-
- All Implemented Interfaces:
FileFilter
,AutoCloseable
,TopicMapSourceIF
- Direct Known Subclasses:
AbstractOntopolyTopicMapSource
,RDFPathTopicMapSource
public abstract class AbstractPathTopicMapSource extends Object implements TopicMapSourceIF, FileFilter
INTERNAL: Abstract class implementing TopicMapSourceIF; locates topic map file references from a given directory on the local file system. Only files that match the given suffix are used.
-
-
Constructor Summary
Constructors Constructor Description AbstractPathTopicMapSource()
AbstractPathTopicMapSource(String path, FileFilter filter)
AbstractPathTopicMapSource(String path, FileFilter filter, LocatorIF base_address)
AbstractPathTopicMapSource(String path, String suffix)
AbstractPathTopicMapSource(String path, String suffix, LocatorIF base_address)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
accept(File file)
INTERNAL: A file filter method implementation.void
close()
PUBLIC: Closes the source by releasing references it holds to e.g.protected TopicMapReferenceIF
createReference(URL url, String id, String title)
protected abstract TopicMapReferenceIF
createReference(URL url, String id, String title, LocatorIF base_address)
TopicMapReferenceIF
createTopicMap(String name, String baseAddress)
PUBLIC: Creates a new topic map in the underlying source and returns a reference to the created topic map.LocatorIF
getBase()
INTERNAL: Gets the base locator of the topic maps retrieved from the source.String
getBaseAddress()
INTERNAL: Gets the base address of the topic maps retrieved from the source.boolean
getDuplicateSuppression()
INTERNAL: Gets the duplicate suppression flag.FileFilter
getFileFilter()
INTERNAL: Returns the FileFilter used to in the specified path.boolean
getHidden()
String
getId()
PUBLIC: Gets the id of the source.String
getPath()
INTERNAL: Gets the path in which the source locates its references.Collection<TopicMapReferenceIF>
getReferences()
PUBLIC: Returns an unmodifiable collection ofTopicMapReferenceIF
s found by the topic map source.String
getSuffix()
INTERNAL: Gets the file suffix that should be used for filtering.String
getTitle()
PUBLIC: Gets the title of the source.void
refresh()
PUBLIC: Refreshes the collection of references.protected Map
refreshFromClasspath()
protected Map<String,TopicMapReferenceIF>
refreshFromFilesystem()
void
setBase(LocatorIF base_address)
INTERNAL: Sets the base locator of the topic maps retrieved from the source.void
setBaseAddress(String base_address)
INTERNAL: Sets the base address of the topic maps retrieved from the source.void
setDuplicateSuppression(boolean duplicate_suppression)
INTERNAL: Sets the duplicate suppression flag.void
setFileFilter(FileFilter filter)
INTERNAL: Sets a FileFilter used to filter the files in the specified path.void
setHidden(boolean hidden)
void
setId(String id)
PUBLIC: Sets the id of the source.void
setPath(String path)
INTERNAL: Sets the path in which the source locates its references.void
setSuffix(String suffix)
INTERNAL: Sets the file suffix that should be used for filtering.void
setTitle(String title)
PUBLIC: Sets the title of the source.boolean
supportsCreate()
PUBLIC: Returns true if the source supports creating new topic maps with the createTopicMap.boolean
supportsDelete()
PUBLIC: Returns true if the source supports deleting topic map with the TopicMapReferenceIF.delete() method.
-
-
-
Field Detail
-
id
protected String id
-
title
protected String title
-
path
protected String path
-
suffix
protected String suffix
-
base_address
protected LocatorIF base_address
-
duplicate_suppression
protected boolean duplicate_suppression
-
hidden
protected boolean hidden
-
refmap
protected Map<String,TopicMapReferenceIF> refmap
-
-
Constructor Detail
-
AbstractPathTopicMapSource
public AbstractPathTopicMapSource()
-
AbstractPathTopicMapSource
public AbstractPathTopicMapSource(String path, FileFilter filter)
-
AbstractPathTopicMapSource
public AbstractPathTopicMapSource(String path, String suffix, LocatorIF base_address)
-
AbstractPathTopicMapSource
public AbstractPathTopicMapSource(String path, FileFilter filter, LocatorIF base_address)
-
-
Method Detail
-
getId
public String getId()
Description copied from interface:TopicMapSourceIF
PUBLIC: Gets the id of the source.- Specified by:
getId
in interfaceTopicMapSourceIF
-
setId
public void setId(String id)
Description copied from interface:TopicMapSourceIF
PUBLIC: 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 anUnsupportedOperationException
if it does not support setting the id.- Specified by:
setId
in interfaceTopicMapSourceIF
-
getTitle
public String getTitle()
Description copied from interface:TopicMapSourceIF
PUBLIC: Gets the title of the source.- Specified by:
getTitle
in interfaceTopicMapSourceIF
-
setTitle
public void setTitle(String title)
Description copied from interface:TopicMapSourceIF
PUBLIC: Sets the title of the source.- Specified by:
setTitle
in interfaceTopicMapSourceIF
-
getPath
public String getPath()
INTERNAL: Gets the path in which the source locates its references.
-
setPath
public void setPath(String path)
INTERNAL: Sets the path in which the source locates its references.
-
getSuffix
public String getSuffix()
INTERNAL: Gets the file suffix that should be used for filtering.
-
setSuffix
public void setSuffix(String suffix)
INTERNAL: Sets the file suffix that should be used for filtering.
-
getBase
public LocatorIF getBase()
INTERNAL: Gets the base locator of the topic maps retrieved from the source.- Since:
- 1.3.2
-
setBase
public void setBase(LocatorIF base_address)
INTERNAL: Sets the base locator of the topic maps retrieved from the source.- Since:
- 1.3.2
-
getBaseAddress
public String getBaseAddress()
INTERNAL: Gets the base address of the topic maps retrieved from the source. The notation is assumed to be 'URI'.- Since:
- 1.2.5
-
setBaseAddress
public void setBaseAddress(String base_address)
INTERNAL: Sets the base address of the topic maps retrieved from the source. The notation is assumed to be 'URI'.- Since:
- 1.2.5
-
getDuplicateSuppression
public boolean getDuplicateSuppression()
INTERNAL: Gets the duplicate suppression flag. If the flag is true duplicate suppression is to be performed when loading the topic maps.- Since:
- 1.4.2
-
setDuplicateSuppression
public void setDuplicateSuppression(boolean duplicate_suppression)
INTERNAL: Sets the duplicate suppression flag. If the flag is true duplicate suppression is to be performed when loading the topic maps.- Since:
- 1.4.2
-
getReferences
public Collection<TopicMapReferenceIF> getReferences()
Description copied from interface:TopicMapSourceIF
PUBLIC: Returns an unmodifiable collection ofTopicMapReferenceIF
s found by the topic map source.- Specified by:
getReferences
in interfaceTopicMapSourceIF
-
supportsCreate
public boolean supportsCreate()
Description copied from interface:TopicMapSourceIF
PUBLIC: Returns true if the source supports creating new topic maps with the createTopicMap.- Specified by:
supportsCreate
in interfaceTopicMapSourceIF
-
supportsDelete
public boolean supportsDelete()
Description copied from interface:TopicMapSourceIF
PUBLIC: Returns true if the source supports deleting topic map with the TopicMapReferenceIF.delete() method.- Specified by:
supportsDelete
in interfaceTopicMapSourceIF
-
createTopicMap
public TopicMapReferenceIF createTopicMap(String name, String baseAddress)
Description copied from interface:TopicMapSourceIF
PUBLIC: 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:
createTopicMap
in interfaceTopicMapSourceIF
-
refresh
public void refresh()
Description copied from interface:TopicMapSourceIF
PUBLIC: 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:
refresh
in interfaceTopicMapSourceIF
-
close
public void close()
Description copied from interface:TopicMapSourceIF
PUBLIC: Closes the source by releasing references it holds to e.g. database or file system objects.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceTopicMapSourceIF
-
refreshFromFilesystem
protected Map<String,TopicMapReferenceIF> refreshFromFilesystem()
-
refreshFromClasspath
protected Map refreshFromClasspath()
-
createReference
protected TopicMapReferenceIF createReference(URL url, String id, String title)
-
createReference
protected abstract TopicMapReferenceIF createReference(URL url, String id, String title, LocatorIF base_address)
-
getFileFilter
public FileFilter getFileFilter()
INTERNAL: Returns the FileFilter used to in the specified path.- Since:
- 1.3.4
-
setFileFilter
public void setFileFilter(FileFilter filter)
INTERNAL: Sets a FileFilter used to filter the files in the specified path.- Parameters:
filter
- a java.io.FileFilter object for filtering the files- Since:
- 1.3.4
-
accept
public boolean accept(File file)
INTERNAL: A file filter method implementation. It accepts a file if it is not a directory and the filename ends with the specified suffix.- Specified by:
accept
in interfaceFileFilter
-
getHidden
public boolean getHidden()
-
setHidden
public void setHidden(boolean hidden)
-
-